彭锟
2022-04-01 216f61fcfdd0bc469cec809c31e4d49c1d86158e
force-app/main/default/classes/NFM106Controller.cls
@@ -71,6 +71,33 @@
                for(Maintenance_Contract__c mc : newList) {
                    // 虚拟维修合同跳过
                    if (mc.RecordType_DeveloperName__c == 'VM_Contract')continue ;
                    //update     wangweipeng                               2021/11/16   start
                    //新增先款后修功能,如果经销商是先款对象,需要先认款合同上传然后再上传SAP
                    //判断是否需要走认款的接口
                    boolean flag = false;
                    if(mc.old_Is_RecognitionModel__c){
                        //判断当前合同是否已经认款完成
                        if(!mc.Is_Recognition_Model_True__c){
                            flag = true;
                        }
                    }
                    //为true时,证明此合同必须先上传认款合同,然后再能走上传SAP接口
                    if(flag){
                        //如果是否认款合同字段为true,并且认款合同状态变为 认款中,那么就走认款接口
                        if(mc.upload_to_RM_time__c != null && (oldMap.get(mc.Id).upload_to_RM_time__c != mc.upload_to_RM_time__c)){
                            //走认款接口,状态不变
                            if(NFM106Controller.NFM106_Ids.contains(mc.Id) == false && mc.Status__c == '引合中'){
                                if (String.isBlank(mc.Maintenance_Contract_No__c)) {
                                    mc.addError('状态变为合同时,必须输入「' + Schema.SObjectType.Maintenance_Contract__c.fields.Maintenance_Contract_No__c.label + '」');
                                    continue;
                                }
                                mcIds.put(mc.Id, mc.Id);
                                mcNoList.add(mc.Maintenance_Contract_No__c);
                                NFM106Controller.debug_msg += 'NFM106_callout_update_' + mc.Name;
                            }
                        }
                    } else {//正常上传SAP接口
                    if (NFM106Controller.NFM106_Ids.contains(mc.Id) == false && mc.Status__c == '契約') {
                        if (oldMap.get(mc.Id).Status__c != mc.Status__c
                                || oldMap.get(mc.Id).Contract_Conclusion_Date__c != mc.Contract_Conclusion_Date__c
@@ -85,6 +112,8 @@
                        }
                    }
                }
                    //update     wangweipeng                          2021/11/16   end
                }
            }
        }
        if (mcIds.size() > 0) {