Li Jun
2022-04-11 580549d5dace2d9982e71e18ac931febbe0428da
force-app/main/default/classes/NewRepairController.cls
@@ -190,18 +190,134 @@
            if(mso.containsKey('00N10000008rsVuEAI')){
                controller.getRecord().put('ProblemDescription__c',mso.get('00N10000008rsVuEAI'));
            }
            //报修人00N1m0000054ufW
            if(mso.containsKey('00N1m0000054ufW')){
                controller.getRecord().put('RepairApplicant__c',mso.get('00N1m0000054ufW'));
            //如果是测试环境
            if(NFMUtil.isSandbox()){
                //报修人00N1m0000054ufW
                if(mso.containsKey('00N1m0000054ufW')){
                    controller.getRecord().put('RepairApplicant__c',mso.get('00N1m0000054ufW'));
                }
                //报修人医院00N1m0000054ufU
                if(mso.containsKey('00N1m0000054ufU')){
                    controller.getRecord().put('RepairApplicantHospital__c',mso.get('00N1m0000054ufU'));
                }
                //报修人科室00N1m0000054ufT
                if(mso.containsKey('00N1m0000054ufT')){
                    controller.getRecord().put('RepairApplicantDepartment__c',mso.get('00N1m0000054ufT'));
                }
                //报修子单CF00N1m0000054ufZ_lkid
                if(mso.containsKey('CF00N1m0000054ufZ_lkid')){
                    controller.getRecord().put('RepairSubOrder__c',mso.get('CF00N1m0000054ufZ_lkid'));
                    //查询AWSDataId
                    List<RepairSubOrder__c> rso = [select AWS_Data_Id__c from RepairSubOrder__c where Id=:mso.get('CF00N1m0000054ufZ_lkid')];
                    if(rso.size() > 0){
                        RepairSubOrderAWSDataId = rso[0].AWS_Data_Id__c;
                    }
                }
                //报修发起日
                if(mso.containsKey('00N1m0000054ufa')){
                    String o = mso.get('00N1m0000054ufa');
                    controller.getRecord().put('RepairTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //报修单受理日ReceiverTime__c
                if(mso.containsKey('00N1m0000054ufS')){
                    String o = mso.get('00N1m0000054ufS');
                    controller.getRecord().put('ReceiverTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //计划上门日
                if(mso.containsKey('00N1m000005SRiF')){
                    String o = mso.get('00N1m000005SRiF');
                    controller.getRecord().put('PlannedVisitDay__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //一次上门日
                if(mso.containsKey('00N1m000005SRiK')){
                    String o = mso.get('00N1m000005SRiK');
                    controller.getRecord().put('ActualVisitDateFirst__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //二次上门日
                if(mso.containsKey('00N1m000005SRiP')){
                    String o = mso.get('00N1m000005SRiP');
                    controller.getRecord().put('ActualVisitDateSecond__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //三次上门日
                if(mso.containsKey('00N1m000005SRiU')){
                    String o = mso.get('00N1m000005SRiU');
                    controller.getRecord().put('ActualVisitDateThird__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //移动端申请修理日
                if(mso.containsKey('00N1m000005SRmg')){
                    String o = mso.get('00N1m000005SRmg');
                    controller.getRecord().put('SubOrderCompleteDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //报修单处理完成日
                if(mso.containsKey('00N1m000005SRmW')){
                    String o = mso.get('00N1m000005SRmW');
                    controller.getRecord().put('SubOrderCreatedDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
            }else {
                //正式环境
                //报修人
                if(mso.containsKey('00N10000009H1rQ')){
                    controller.getRecord().put('RepairApplicant__c',mso.get('00N10000009H1rQ'));
                }
                //报修人医院
                if(mso.containsKey('00N10000009H1rP')){
                    controller.getRecord().put('RepairApplicantHospital__c',mso.get('00N10000009H1rP'));
                }
                //报修人科室
                if(mso.containsKey('00N10000009H1rO')){
                    controller.getRecord().put('RepairApplicantDepartment__c',mso.get('00N10000009H1rO'));
                }
                //报修子单
                if(mso.containsKey('00N10000009H1rR_lkid')){
                    controller.getRecord().put('RepairSubOrder__c',mso.get('00N10000009H1rR_lkid'));
                    //查询AWSDataId
                    List<RepairSubOrder__c> rso = [select AWS_Data_Id__c from RepairSubOrder__c where Id=:mso.get('00N10000009H1rR_lkid')];
                    if(rso.size() > 0){
                        RepairSubOrderAWSDataId = rso[0].AWS_Data_Id__c;
                    }
                }
                //报修发起日
                if(mso.containsKey('00N10000009H1rS')){
                    String o = mso.get('00N10000009H1rS');
                    controller.getRecord().put('RepairTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //报修单受理日
                if(mso.containsKey('00N10000009H1rN')){
                    String o = mso.get('00N10000009H1rN');
                    controller.getRecord().put('ReceiverTime__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //计划上门日
                if(mso.containsKey('00N10000009H1rM')){
                    String o = mso.get('00N10000009H1rM');
                    controller.getRecord().put('PlannedVisitDay__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //一次上门日
                if(mso.containsKey('00N10000009H1r6')){
                    String o = mso.get('00N10000009H1r6');
                    controller.getRecord().put('ActualVisitDateFirst__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //二次上门日
                if(mso.containsKey('00N10000009H1r7')){
                    String o = mso.get('00N10000009H1r7');
                    controller.getRecord().put('ActualVisitDateSecond__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //三次上门日
                if(mso.containsKey('00N10000009H1r8')){
                    String o = mso.get('00N10000009H1r8');
                    controller.getRecord().put('ActualVisitDateThird__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //移动端申请修理日
                if(mso.containsKey('00N10000009H1ri')){
                    String o = mso.get('00N10000009H1ri');
                    controller.getRecord().put('SubOrderCompleteDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
                //报修单处理完成日
                if(mso.containsKey('00N10000009H1rj')){
                    String o = mso.get('00N10000009H1rj');
                    controller.getRecord().put('SubOrderCreatedDate__c',(String.isBlank(o)||String.isEmpty(o))? null:Date.valueOf(o.replace('/', '-')));
                }
            }
            //报修人医院00N1m0000054ufU
            if(mso.containsKey('00N1m0000054ufU')){
                controller.getRecord().put('RepairApplicantHospital__c',mso.get('00N1m0000054ufU'));
            }
            //报修人科室00N1m0000054ufT
            if(mso.containsKey('00N1m0000054ufT')){
                controller.getRecord().put('RepairApplicantDepartment__c',mso.get('00N1m0000054ufT'));
            }
            //送修物流方式00N1m0000054ufE
            if(mso.containsKey('00N1m0000054ufE')){
                controller.getRecord().put('DeliveryLogisticsMode__c',mso.get('00N1m0000054ufE'));
@@ -222,15 +338,7 @@
            if(mso.containsKey('00N10000008rsVS')){
                controller.getRecord().put('DelayReportReason__c',mso.get('00N10000008rsVS'));
            }
            //报修子单CF00N1m0000054ufZ_lkid
            if(mso.containsKey('CF00N1m0000054ufZ_lkid')){
                controller.getRecord().put('RepairSubOrder__c',mso.get('CF00N1m0000054ufZ_lkid'));
                //查询AWSDataId
                List<RepairSubOrder__c> rso = [select AWS_Data_Id__c from RepairSubOrder__c where Id=:mso.get('CF00N1m0000054ufZ_lkid')];
                if(rso.size() > 0){
                    RepairSubOrderAWSDataId = rso[0].AWS_Data_Id__c;
                }
            }
            rtTypeId = ApexPages.currentPage().getParameters().get('RecordType');
            if(String.isBlank(rtTypeId)||String.isEmpty(rtTypeId)){
                List<RecordType> rtList = new List<RecordType>([select Id,DeveloperName from RecordType  where SobjectType ='Repair__c' and DeveloperName ='Repair']);
@@ -264,9 +372,24 @@
    
    @RemoteAction
    global static Response EncryptUpdate(string rid){
        system.debug('rid='+rid);
        Response r = new Response();
        List<Repair__c> reps = [select id,Encrypt_Update_Flag__c from Repair__c where id =:rid];
        if(reps.size()==0){
            r.status = 'failed';
            r.message = '符合条件的数据未找到';
            return r;
        }
        Repair__c rep = reps[0];
        if(!rep.Encrypt_Update_Flag__c){
            r.status = 'success';
            r.message = '无需更改';
            return r;
        }
        
        boolean b = AWSServiceTool2.EncryptPushData(new string[]{rid});
        Response r = new Response();
        rep.Encrypt_Update_Flag__c = false;
        update rep;
        r.status = b ? 'success' : 'failed';
        r.message = b ? '' : '加密推送失败';
        r.recordId = rid;