高章伟
2022-03-10 1312ba82d4c880bdb5357d28e0d4af5b285f610f
force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls
@@ -7,8 +7,8 @@
    public Boolean saveBtnDisabled { get; private set; }
    public boolean ReturnRefuse {get;private set;}
    public String ErrorMessage {get; set;}
    public String CDSFinished {get;set;}
    public boolean LostFlg {get;set;}
    // public String CDSFinished {get;set;}
    // public boolean LostFlg {get;set;}
    public String Step_status { get; private set; }
    public Boolean needCDS { get; private set; }
    public Boolean done_flg { get; set; }
@@ -338,7 +338,7 @@
        List<String> raids = Raid.split(':');
        //检查是否可以继续
        List<Rental_Apply__c> RaTarList = [select Name,Campaign__c,Repair__c,next_action__c,QIS_number__r.ReplaceDeliveryDate__c,demo_purpose2__c,Follow_UP_Opp__r.Shipping_Finished_Day_Func__c,
                                                Campaign__r.Status,repair__r.Return_Without_Repair_Date__c,Repair__r.Repair_Final_Inspection_Date__c,Repair__r.Repair_Shipped_Date__c
                                                Campaign__r.Status,Campaign__r.IF_Approved__c,repair__r.Return_Without_Repair_Date__c,Repair__r.Repair_Final_Inspection_Date__c,Repair__r.Repair_Shipped_Date__c
                                            from Rental_Apply__c 
                                            where id in :raids];//20210602 ljh update 增加查询Name SFDC-C3LBNL 
        //20210604 ljh update SFDC-C3LBNL start
@@ -350,9 +350,24 @@
        String message = '';
        String message4 = '';//1822 yc 20211025 已购待货目的,新品已有发货日不能出库
        String message5 = '';//1822 yc 20211108 索赔QIS目的,QIS已有新品发货日不能出库
        String message6 = '';
        Set<Id> ids = new Set<Id>();
        for (Rental_Apply__c RaTar : RaTarList) {
            if (String.isNotBlank(RaTar.Campaign__c) && RaTar.Campaign__r.IF_Approved__c){
                ids.add(RaTar.Campaign__c);
            }
        }
        //查找备品申请对应裁决申请
        Map<Id, Campaign> campMap = new Map<Id, Campaign>([
                SELECT Id,  IF_Approved__c, Meeting_Approved_No__c,
                       Meeting_Approved_No__r.ProcessState__c,
                       Meeting_Approved_No__r.MeetingApprovedNo__c
                FROM Campaign
                WHERE id IN :ids]);
        for (Rental_Apply__c RaTar : RaTarList) {
            if( RaTar.Campaign__r.Status == '取消'){
                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '学会已取消,不能继续操作了'));
                // return null;
                errorFlag = true;
@@ -382,8 +397,17 @@
            }else if(RaTar.demo_purpose2__c=='索赔QIS' && RaTar.next_action__c=='无偿更换' && RaTar.QIS_number__r.ReplaceDeliveryDate__c!= null){
                errorFlag = true;
                message5 += RaTar.Name+'、';
           }
            }
            //1822 yc 20211025 已购待货目的,新品已有发货日不能出库 end
            else if (!campMap.isEmpty() && campMap.containsKey(RaTar.Campaign__c) && campMap.get(RaTar.Campaign__c).IF_Approved__c){
                if (String.isBlank(campMap.get(RaTar.Campaign__c).Meeting_Approved_No__c)
                    || String.isBlank(campMap.get(RaTar.Campaign__c).Meeting_Approved_No__r.MeetingApprovedNo__c)) {
                    errorFlag = true;
                    message6 = RaTar.Name + '、';
                }
            }
            //20220217 sx add 备品借出申请-决裁控制 No.3 在出库时增加判断,判断学会是否申请决裁,如果是的话,再判断决裁编号是否不为空,满足条件才能出库,否则提示错误
        }
        if(errorFlag){
            if(String.isNotBlank(message0)){
@@ -406,7 +430,10 @@
                message += '单号NO.'+message5.removeEnd('、')+'索赔QIS目的,QIS已有新品发货日,不能继续了';       
            }
            //1822 yc 20211025 已购待货目的,新品已有发货日不能出库 end
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message));
            if(String.isNotBlank(message6)){
                message += '单号No.'+ message6.removeEnd('、')+ '已申请决裁但决裁编码为空';
            }
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message));
            return null;
        }
        //20210604 ljh update SFDC-C3LBNL end
@@ -479,7 +506,7 @@
            slip.Shippment_loaner_time__c = Datetime.now();
            needSaveDetail = true;
        }
        List<Rental_Apply__c> raList = [select Id, DeliverySlip__c from Rental_Apply__c where Id in :raSet];
        List<Rental_Apply__c> raList = [select Id, DeliverySlip__c, Campaign__c from Rental_Apply__c where Id in :raSet];
        Savepoint sp = Database.setSavepoint();
        try {
            //if (needSaveSet) ControllerUtil.upRAdEquipmentSet(es);
@@ -495,6 +522,12 @@
                    //wangweipeng   是否是重点产品       2021/08/30        start
                    ra.Is_keyPoint_Product__c = keyPointProduct.get(ra.Id);
                    //wangweipeng   是否是重点产品       2021/08/30        start
                    //20220217 sx add 备品借出申请-决裁控制 No.4 出库成功时,把此时点的决裁编号和决裁状态写到决裁编号(出库)和决裁状态(出库)上
                    if (!campMap.isEmpty() && campMap.containsKey(ra.Campaign__c) && campMap.get(ra.Campaign__c).IF_Approved__c){
                        ra.ApprovedNo_Delivery__c = campMap.get(ra.Campaign__c).Meeting_Approved_No__r.MeetingApprovedNo__c;
                        ra.Approved_State_Delivery__c = campMap.get(ra.Campaign__c).Meeting_Approved_No__r.ProcessState__c;
                    }
                }
            }
            //if (needSaveDetail) ControllerUtil.updRAEquipmentSetDetail(eList);