GWY
2022-04-15 de62b11fd2203816306ba94226874b2e62420e83
force-app/main/default/classes/SBG001TriggerHandler.cls
@@ -8,6 +8,7 @@
    //001修改Rest gwy start 2021-04-06
    //public class SBG001ResrException extends Exception {}
    public static String status;
    public static String responseBody;//dennis update for pi 2022/3/9
    public class SBG001 {
        public SSBDCustomerContacts_element SSBDCustomerContacts;
    }
@@ -33,6 +34,7 @@
        public String ContactCode;  
        public String ContactEffectiveDateFrom;
        public String PurposeOfAdvice;
        public String DataId;//dennis update for pi 2022/3/9
        
    }
        //001修改Rest gwy end 2021-04-06
@@ -516,7 +518,8 @@
                    Phone, MobilePhone,
                    Fax, Email, PostCode__c, Address1__c,
                    CreatedDate, LastModifiedDate,
                    Account.UserType__c
                    Account.UserType__c,
                    AWS_Data_Id__c//dennis update for pi 2022/3/9
               from Contact where Id IN :conIds];          // 削除データを検索しないはず、All ROWS いらないはず
            // System.debug(Logginglevel.DEBUG, 'SBG001_' + iflog.Name + ' conList.size()=' + conList.size());
@@ -549,6 +552,7 @@
                                                + ',' + (String.isBlank(con.Email) ? '' : con.Email);
                SSBDCustomerContact.PostalCode          = String.isBlank(con.PostCode__c) ? '' : con.PostCode__c;
                SSBDCustomerContact.Address             = String.isBlank(con.Address1__c) ? '' : con.Address1__c;
                SSBDCustomerContact.DataId             = String.isBlank(con.AWS_Data_Id__c) ? '' : con.AWS_Data_Id__c;
                SSBDCustomerContact.CustomerCategory    = GetCustomerCategory(null,con);//'客户' + (String.isBlank(con.Account.ProductSegment__c) ? '' : con.Account.ProductSegment__c);
                //  JZHU-BPQBVK-IE最终用户接口传输逻辑变更(update-Start-20200525)
                SSBDCustomerContact.UserType = '';
@@ -739,25 +743,54 @@
            logstr = iflog.Log__c;
        }
        try{
            status = NFMUtil.sendToSapRet(rowDataStr, NFMUtil.SBG001_ENDPOINT);
            system.debug('status--->'+status);
            if (status == 'OK') {
             //update to aws 2022/3/9 dennis
             PIHelper.PIIntegration pi =PIHelper.getPIIntegrationInfo('SBG001');
             NFMUtil.response result =NFMUtil.sendToPiAWS(rowDataStr,pi.newUrl,pi.token);
             system.debug('aws result---'+result);
             status = result.status;
             system.debug('aws status---'+status);
             responseBody=result.responseBody;
            //  Map<String, Object> res = (Map<String, Object>)JSON.deserializeUntyped(responseBody);
            //  status=(String)res.get(status);
             if ('200'.equals(status)) {
                logstr += '\nstatus='+status;
                rowData.retry_cnt__c = 0;
            } else {
             } else {
                if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0;
                if (rowData.retry_cnt__c < batch_retry_max_cnt) {
                    rowData.retry_cnt__c++;
                    LogAutoSendSchedule.assignOneMinute();
                }
                if (rowData.retry_cnt__c >= batch_retry_max_cnt) {
                    rowData.ErrorLog__c = 'status:' + status +
                    //add respomseBody 记录错误信息 by sushanhu 20220406 start
                    rowData.ErrorLog__c = 'status:' + status +responseBody+
                                          '\n错误次数已经超过自动送信设定的最大次数,请手动送信';
                 //add respomseBody 记录错误信息 by sushanhu 20220406 end
                }
            }
            logstr += '\nend';
            // rowData.retry_cnt__c=0;
             }
             //update to aws 2022/3/9 dennis
             logstr += '\nend';
             // rowData.retry_cnt__c=0;
            // status = NFMUtil.sendToSapRet(rowDataStr, NFMUtil.SBG001_ENDPOINT);
            // system.debug('status--->'+status);
            // if (status == 'OK') {
            //     logstr += '\nstatus='+status;
            //     rowData.retry_cnt__c = 0;
            // } else {
            //     if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0;
            //     if (rowData.retry_cnt__c < batch_retry_max_cnt) {
            //         rowData.retry_cnt__c++;
            //         LogAutoSendSchedule.assignOneMinute();
            //     }
            //     if (rowData.retry_cnt__c >= batch_retry_max_cnt) {
            //         rowData.ErrorLog__c = 'status:' + status +
            //                               '\n错误次数已经超过自动送信设定的最大次数,请手动送信';
            //     }
            // }
            // logstr += '\nend';
            // // rowData.retry_cnt__c=0;
        }catch(Exception ex) {
            // TODO IOException
            // エラーが発生した場合