高章伟
2023-03-03 d8dc84a3d56df839895f1c417a4d9cbee763d262
force-app/main/default/classes/OnCallController.cls
@@ -18,8 +18,17 @@
    public String PIPL_Input_Account_Error_Msg{set;get;}
    public String sobjectPrefix{set;get;}
    public String sobjecttypeForFrontEnd{set;get;}
    public String sfRecordIdForEdit{set;get;}//Add By LiJun for edit record from daily report, 20220510
    public final string ApiPrefix{get;private set;} //Add By zhj 20220511
    public Map<string,string> AWSToSobjectEncryptedMap{get;private set;}//Add By zhj 20220511
    public string AWSToSobjectEncryptedMapJson{get{return JSON.serialize(AWSToSobjectEncryptedMap);}}//Add By zhj 20220511
    //zhj MEBG新方案改造 2022-11-29 start
    public String staticResourceV2 {get; set;}
    //zhj MEBG新方案改造 2022-11-29 end
    // public String sobjectId{set;get;}
    public OnCallController(ApexPages.StandardController controller) {
        ApiPrefix = 'PIBackApi';
        // sobjectId = [SELECT CustomObjectId,CustomObjectName  FROM CustomObjectUserLicenseMetrics   where CustomObjectName ='OnCall' limit 1].CustomObjectId;
        isNewMode = true;
        isCloneMode = false;
@@ -45,6 +54,7 @@
            isNewMode = false;
            On_Call__c onCallData = [select Id,AWS_Data_Id__c from On_Call__c where id =: obj.Id];
            AWSDataId = onCallData.AWS_Data_Id__c;
            sfRecordIdForEdit = obj.Id;//Add By LiJun for Edit Record from NFM609, 20220510
        }else{
            //新建
            rtTypeId = null;
@@ -61,6 +71,14 @@
        staticResource = JSON.serialize(piIntegration);
        encryptedAPIList = piIntegration.PIFields;
        sobjectPrefix = piIntegration.sobjectPrefix;
        //Add By zhj 20220511
        AWSToSobjectEncryptedMap = new Map<String,String>();
        for (PI_Field_Policy_Detail__c PIDetail : piIntegration.PIDetails) {
            AWSToSobjectEncryptedMap.put(PIDetail.AWS_Field_API__c, PIDetail.SF_Field_API_Name__c);
        }
        //zhj MEBG新方案改造 2022-11-29 start
        staticResourceV2 = JSON.serialize(PIHelper.getPIIntegrationInfo('On_Call__cV2'));
        //zhj MEBG新方案改造 2022-11-29 end
    }
    global class Response{
@@ -113,17 +131,20 @@
        String rid = '';
        Boolean isClone = false;
        String awsDataId = '';
        String sfRecordId = '';
        try{
            System.debug('abcde'+isNew);
            awsDataId = (String)onCallInfo.get('AWS_Data_Id__c');
            sfRecordId = (String)onCallInfo.get('Id');
            if (string.isBlank(awsDataId)) {
                throw new DMLException('更新时AWS_Data_Id__c不能为空');
            }
            System.debug('awsDataId = ' + awsDataId);
            On_Call__c[] onCalls = Database.query('select id from On_Call__c where AWS_Data_Id__c =:awsDataId');
            On_Call__c[] onCalls = Database.query('select id from On_Call__c where AWS_Data_Id__c =:awsDataId or id =:sfRecordId');
            if(!isNew){
                isClone = onCalls.size() == 0;
            }
            system.debug('isClone'+isClone + ' isNew'+isNew);
            if(isNew || isClone){
                System.debug('onCallInfozhj = ' + onCallInfo);
                insert onCallInfo;