binxie
2023-06-26 614b1b648eceb33e325ed7cf8d8cb6a7a71b9ddc
force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls
@@ -334,7 +334,6 @@
    // 保存按钮
    public PageReference save() {
        List<String> raids = Raid.split(':');
        //检查是否可以继续
        List<Rental_Apply__c> RaTarList = [select Id,Name,Campaign__c,Repair__c,next_action__c
@@ -346,6 +345,8 @@
                                                ,Campaign__r.Approved_Status__c     // 20220315 ljh obpm备品决裁状态相关修改
                                                ,repair__r.Return_Without_Repair_Date__c
                                                ,Repair__r.Repair_Final_Inspection_Date__c
                                                ,AccDealerBlacklist__c//贸易合规 you
                                                //,EquipmentGuaranteeFlg__c//贸易合规 you
                                                ,Repair__r.Repair_Shipped_Date__c
                                            from Rental_Apply__c 
                                            where id in :raids];//20210602 ljh update 增加查询Name SFDC-C3LBNL 
@@ -379,13 +380,19 @@
        String message6 = '';
        String message7 = '';// 20220315 ljh obpm备品决裁状态相关修改 end
        String message8 = '';//add lc 20220927 SFDC-CJ48VE 备品预计出库日逻辑调整
        String message9 = '';//贸易合规 you
        // 要判断决裁状态不能是草稿/驳回/终止申请/取消/删除
        List<String> statusList = System.Label.StatusProcessState.split(',');
        Map<Id, Rental_Apply__c> RaMap = new Map<Id, Rental_Apply__c>();
        for (Rental_Apply__c RaTar : RaTarList) {
            // 20230215 ljh DB202301265636 学会取消申请也拦截 start
            // if( RaTar.Campaign__r.Status == '取消'){
            if( RaTar.Campaign__r.Status == '取消' || RaTar.Campaign__r.Status == '取消申请中'){
            //贸易合规 you
            // && RaTar.EquipmentGuaranteeFlg__c==false
            if(System.Label.TradeComplianceStatusFlagBP =='true' && RaTar.AccDealerBlacklist__c == '1'){
                errorFlag = true;
                message9 += RaTar.Name+'、';
            }else if( RaTar.Campaign__r.Status == '取消' || RaTar.Campaign__r.Status == '取消申请中'){
            // 20230215 ljh DB202301265636 学会取消申请也拦截 end
                // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '学会已取消,不能继续操作了'));
                // return null;
@@ -486,6 +493,10 @@
            }
            // add lc 20220927 SFDC-CJ48VE 备品预计出库日逻辑调整 end
            if(String.isNotBlank(message9)){
                message += '单号No.'+ message9.removeEnd('、')+ System.Label.IFTradeComplianceAlertBP;
            }
            ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message));
            return null;
        }
@@ -575,6 +586,8 @@
                                        , Campaign__r.IF_Approved__c         // 20220315 ljh obpm备品决裁状态相关修改
                                        , Campaign__r.Meeting_Approved_No__r.Name // 20220315 ljh obpm备品决裁状态相关修改
                                        , Campaign__r.Approved_Status__c     // 20220315 ljh obpm备品决裁状态相关修改
                                        , Hospital__r.TradeComplianceStatus__c//贸易合规 you
                                        , Outbound_TradeStatus__c//贸易合规 you
                                        from Rental_Apply__c where Id in :raSet];
        Savepoint sp = Database.setSavepoint();
        try {
@@ -667,7 +680,7 @@
                    //wangweipeng   是否是重点产品       2021/08/30        start
                    ra.Is_keyPoint_Product__c = keyPointProduct.get(ra.Id);
                    //wangweipeng   是否是重点产品       2021/08/30        start
                    ra.Outbound_TradeStatus__c = ra.Hospital__r.TradeComplianceStatus__c;//贸易合规 you
                    // 20220315 ljh obpm备品决裁状态相关修改 update start
                    //20220217 sx add 备品借出申请-决裁控制 No.4 出库成功时,把此时点的决裁编号和决裁状态写到决裁编号(出库)和决裁状态(出库)上
                    // if (!campMap.isEmpty() && campMap.containsKey(ra.Campaign__c) && campMap.get(ra.Campaign__c).IF_Approved__c){
@@ -683,6 +696,9 @@
            }
            //if (needSaveDetail) ControllerUtil.updRAEquipmentSetDetail(eList);
            if (needSaveDetail) {
                // 备品优化追加 20230518 lc Start
                RentalApplyEquipmentSetDetailHandler.skipUpdateAgain = true;
                // 备品优化追加 20230518 lc End
                FixtureUtil.withoutUpsertObjects(eList);
                FixtureUtil.withoutUpsertObjects(raList);
            }