From 654f48a8fd0cd1c5f7ac517ca4c9843d9ed49ecd Mon Sep 17 00:00:00 2001 From: 李金换 <lijinhuan@prec-tech.com> Date: 星期五, 25 三月 2022 18:08:05 +0800 Subject: [PATCH] obpm备品相关增加提醒 --- force-app/main/default/classes/RentalFixtureSetAssignAgencyCtrlTest.cls | 75 +- force-app/main/default/classes/RentalApplyWebService.cls | 8 force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls | 532 ++++----------------- force-app/main/default/classes/RentalFixtureSetAssignController.cls | 10 force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls | 158 +++++ force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls | 30 force-app/main/default/classes/EquipmentSetShippmentReceived3CtrlTest.cls | 628 ++++++++++++++++++++++++ force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls | 14 8 files changed, 955 insertions(+), 500 deletions(-) diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls index ef9ed08..b89c7b8 100644 --- a/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls +++ b/force-app/main/default/classes/EquipmentSetShippmentReceived1Controller.cls @@ -173,12 +173,22 @@ // 淇濆瓨鎸夐挳 public PageReference save() { + List<String> statusList = System.Label.StatusProcessState.split(','); + //妫�鏌ユ槸鍚﹀彲浠ョ户缁� - Rental_Apply__c RaTar = [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.IF_Approved__c,Campaign__r.Meeting_Approved_No__c - from Rental_Apply__c - where id=:Raid]; + Rental_Apply__c RaTar = [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.IF_Approved__c, + Campaign__r.Meeting_Approved_No__c, + Campaign__r.Approved_Status__c //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + from Rental_Apply__c + where id=:Raid]; if( RaTar.Campaign__r.Status == '鍙栨秷'){ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�')); @@ -209,10 +219,18 @@ //20220225 sx start obpm 涓嬫灦澧炲姞 鏄惁鐢宠鍐宠鍕剧潃娌℃湁鍐宠缂栧彿涓嶈兘杩涜鎿嶄綔 else if ( RaTar.Campaign__c!= null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c == null){ - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '鍗曞彿No.'+ RaTar.Name + '宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖')); + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖')); + return null; } //20220225 sx end 涓嬫灦澧炲姞鍒ゆ柇 + //20220315 sx start obpm obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + else if ( RaTar.Campaign__c!= null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(RaTar.Campaign__r.Approved_Status__c) ){ + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢')); + return null; + } + //20220315 sx end obpm obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + String userid = Userinfo.getUserId(); List<Rental_Apply_Equipment_Set_Detail__c> eList = new List<Rental_Apply_Equipment_Set_Detail__c>(); Map<Id, Boolean> stockDownMap = new Map<Id, Boolean>(); diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls index 63fb18a..23e3d37 100644 --- a/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls +++ b/force-app/main/default/classes/EquipmentSetShippmentReceived2Controller.cls @@ -199,10 +199,13 @@ // 淇濆瓨鎸夐挳 public PageReference save() { + List<String> statusList = System.Label.StatusProcessState.split(','); + //妫�鏌ユ槸鍚﹀彲浠ョ户缁� Rental_Apply__c RaTar = [select 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.IF_Approved__c, Campaign__r.Meeting_Approved_No__c + Campaign__r.IF_Approved__c, Campaign__r.Meeting_Approved_No__c, + Campaign__r.Approved_Status__c //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� from Rental_Apply__c where id=:Raid]; @@ -240,6 +243,13 @@ return null; } //20220225 sx end 涓嬫灦澧炲姞鍒ゆ柇 + + //20220315 sx start obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + else if ( RaTar.Campaign__c!= null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(RaTar.Campaign__r.Approved_Status__c)) { + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢')); + return null; + } + //20220315 sx end obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� String userid = Userinfo.getUserId(); List<Rental_Apply_Equipment_Set_Detail__c> eList = new List<Rental_Apply_Equipment_Set_Detail__c>(); @@ -291,7 +301,7 @@ return null; } catch (Exception ex) { system.debug('=====' + ex.getMessage()); - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getMessage()+'( '+Step_status+' )')); + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getDmlMessage(0))); Database.rollback(sp); done_flg = false; return null; diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls index 56ca581..ecd0ee0 100644 --- a/force-app/main/default/classes/EquipmentSetShippmentReceived3Controller.cls +++ b/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; } @@ -337,8 +337,16 @@ 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 + 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 + ,Campaign__r.IF_Approved__c + ,Campaign__r.Meeting_Approved_No__c // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + ,Campaign__r.Approved_Status__c // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + ,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 +358,13 @@ String message = ''; String message4 = '';//1822 yc 20211025 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 String message5 = '';//1822 yc 20211108 绱㈣禂QIS鐩殑锛孮IS宸叉湁鏂板搧鍙戣揣鏃ヤ笉鑳藉嚭搴� + String message6 = ''; + String message7 = '';// 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� end + // 瑕佸垽鏂喅瑁佺姸鎬佷笉鑳芥槸鑽夌/椹冲洖/缁堟鐢宠/鍙栨秷/鍒犻櫎 + 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) { if( RaTar.Campaign__r.Status == '鍙栨秷'){ - // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '瀛︿細宸插彇娑堬紝涓嶈兘缁х画鎿嶄綔浜�')); // return null; errorFlag = true; @@ -382,8 +394,26 @@ }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 + // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� start + // 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 + '銆�'; + // } + // } + else if(RaTar.Campaign__c!= null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c == null) { + errorFlag = true; + message6 += RaTar.Name + '銆�'; + } + else if(RaTar.Campaign__c!= null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(RaTar.Campaign__r.Approved_Status__c)) { + errorFlag = true; + message7 += RaTar.Name + '銆�'; + } + // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� end + //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 No.3 鍦ㄥ嚭搴撴椂澧炲姞鍒ゆ柇锛屽垽鏂浼氭槸鍚︾敵璇峰喅瑁侊紝濡傛灉鏄殑璇濓紝鍐嶅垽鏂喅瑁佺紪鍙锋槸鍚︿笉涓虹┖锛屾弧瓒虫潯浠舵墠鑳藉嚭搴擄紝鍚﹀垯鎻愮ず閿欒 } if(errorFlag){ if(String.isNotBlank(message0)){ @@ -406,7 +436,15 @@ message += '鍗曞彿NO.'+message5.removeEnd('銆�')+'绱㈣禂QIS鐩殑锛孮IS宸叉湁鏂板搧鍙戣揣鏃ワ紝涓嶈兘缁х画浜�'; } //1822 yc 20211025 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 end - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message)); + if(String.isNotBlank(message6)){ + message += '鍗曞彿No.'+ message6.removeEnd('銆�')+ '宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖'; + } + // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� add start + if(String.isNotBlank(message7)){ + message += '鍗曞彿No.'+ message7.removeEnd('銆�')+ '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢'; + } + // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� add end + ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error,message)); return null; } //20210604 ljh update SFDC-C3LBNL end @@ -432,6 +470,7 @@ Asset__r.Remark__c, Asset__r.ImageAsset__c, Asset__r.ImageSerial__c, Asset__r.ImageAssetUploadedTime__c, Asset__r.ImageSerialUploadedTime__c, Loaner_CDS_Info__c, Inspection_result__c, Check_lost_Item__c, Pre_disinfection__c, Water_leacage_check__c, Inspection_result_after__c, Arrival_in_wh__c, Asset__r.Pre_Reserve_RAES_Detail__c, Asset__r.Pre_Reserve_RAES_Detail__r.After_Inspection_time__c, + Rental_Apply__r.Request_approval_time__c , Add_Request_approval_time__c ,ApplyToShipmentWorkTime__c, //20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� Inspection_result_after_ng__c, Inspection_result_ng__c, Lost_item_giveup__c, CDS_complete__c, Loaner_accsessary__c,Key_product__c from Rental_Apply_Equipment_Set_Detail__c where Id in :eSet for update]; Boolean needSaveSet = false; @@ -441,6 +480,7 @@ Map<String,boolean> keyPointProduct = new Map<String,boolean>(); //wangweipeng 鏄惁鏄噸鐐逛骇鍝� 2021/08/30 end Set<Id> astForLock = new Set<Id>(); + Map<Datetime, List<Rental_Apply_Equipment_Set_Detail__c>> approvalMap = new Map<Datetime, List<Rental_Apply_Equipment_Set_Detail__c>>();// 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� for (Rental_Apply_Equipment_Set_Detail__c esd : eList) { if (esd.Inspection_result__c <> null && esd.StockDown__c == false) { ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '澶囧搧set鏈笅鏋讹紝涓嶈兘濉啓鍙戣揣鍓嶆鏌ョ粨鏋�')); @@ -459,12 +499,22 @@ } //wangweipeng 鏄惁鏄噸鐐逛骇鍝� 2021/08/30 end astForLock.add(esd.Asset__c); + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // Datetime keyDt = esd.Add_Request_approval_time__c != null?esd.Add_Request_approval_time__c:esd.Rental_Apply__r.Request_approval_time__c; + // List<Rental_Apply_Equipment_Set_Detail__c> tempRaesdL; + // if(approvalMap.containsKey(keyDt)){ + // tempRaesdL = approvalMap.get(keyDt); + // }else{ + // tempRaesdL = new List<Rental_Apply_Equipment_Set_Detail__c>(); + // } + // tempRaesdL.add(esd); + // approvalMap.put(keyDt,tempRaesdL); + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end } List<Asset> astLock = [select Id from Asset where id in :astForLock for update]; - if (Step_status == '鏄庣粏') { needDeliverySlip = true; //if (slip.Id == null) { @@ -479,15 +529,90 @@ 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 + , Campaign__r.IF_Approved__c // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + , Campaign__r.Meeting_Approved_No__c // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + , Campaign__r.Approved_Status__c // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� + from Rental_Apply__c where Id in :raSet]; Savepoint sp = Database.setSavepoint(); try { //if (needSaveSet) ControllerUtil.upRAdEquipmentSet(es); if (needDeliverySlip) { FixtureUtil.withoutUpsertObjects(new List<FixtureDeliverySlip__c>{ slip }); //ControllerUtil.updRADeliverySlipDetail(slip); + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // map<String,Decimal> ApplyToShipmentMap = new map<String,Decimal>(); + // if(approvalMap.size() > 0 ){ + // // dtList[0] 绗竴涓氨鏄渶灏忔椂闂� + // List<Datetime> dtList = new List<Datetime>(approvalMap.keySet()); + // Date startDateSOQL = date.newinstance(dtList[0].year(), dtList[0].month(), dtList[0].day()); + // List<OlympusCalendar__c> ocList = [SELECT Id, Date__c,IsWorkDay__c + // FROM OlympusCalendar__c + // WHERE Date__c >= :startDateSOQL + // AND Date__c <= :Date.today() + // ORDER BY Date__c ASC]; + + // for(Datetime dt:dtList){ + // Boolean startFlag = false; + // Boolean endFlag = false; + // Datetime startTime = dt; + // Date startDate = Date.newInstance(startTime.year(),startTime.month(),startTime.day()); + // Datetime endTime = Datetime.now(); + // Date endDate = Date.today(); + // // 瀹℃壒鏃堕棿鏄潪濂ユ灄宸存柉宸ヤ綔鏃� + // if(ocList[0].IsWorkDay__c == 0){ + // for(OlympusCalendar__c oc:ocList){ + // if(oc.IsWorkDay__c == 1){ + // startTime = Datetime.newInstance(oc.Date__c.year(),oc.Date__c.month(),oc.Date__c.day(),0,0,0); + // startDate = oc.Date__c; + // startFlag = true; + // break; + // } + // } + // } + // // 鍙戣揣鏃堕棿鏄潪濂ユ灄宸存柉宸ヤ綔鏃� + // if(ocList[ocList.size() - 1].IsWorkDay__c == 0){ + // for(Integer i = ocList.size() - 1; i <= 0;i--){ + // if(ocList[i].IsWorkDay__c == 1){ + // endTime = Datetime.newInstance(ocList[i].Date__c.addDays(1).year(),ocList[i].Date__c.addDays(1).month(),ocList[i].Date__c.addDays(1).day(),0,0,0); + // endDate = ocList[i].Date__c.addDays(1); + // endFlag = true; + // break; + // } + // } + // } + // Decimal timeDifLast; + // if(ocList[0].IsWorkDay__c == 0 && ocList[ocList.size() - 1].IsWorkDay__c == 0 && !startFlag && !endFlag){ + // timeDifLast = 0; + // }else{ + // Long startL = startTime.getTime(); + // Long tendL = endTime.getTime(); + // Long timeDif = tendL - startL; + // Decimal time11 = timeDif*1.00; + // Decimal time12 = 24*3600*1000*1.00; + // timeDifLast = time11/time12; + // Integer tempWeek = 0; + // for(OlympusCalendar__c oc:ocList){ + // if(oc.IsWorkDay__c == 0 && startDate < oc.Date__c && oc.Date__c < endDate){ + // tempWeek++; + // } + // } + // timeDifLast = timeDifLast - tempWeek; + // } + // // dtestLast 鍥涜垗浜斿叆 淇濈暀1浣嶅皬鏁� + // for(Rental_Apply_Equipment_Set_Detail__c raesd00:approvalMap.get(dt)){ + // ApplyToShipmentMap.put(raesd00.Id,timeDifLast.setScale(1)); + // } + // } + // } + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end for (Rental_Apply_Equipment_Set_Detail__c esd : eList) { esd.DeliverySlip__c = slip.Id; + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // if(ApplyToShipmentMap.containsKey(esd.Id)){ + // esd.ApplyToShipmentWorkTime__c = ApplyToShipmentMap.get(esd.Id); + // } + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end } for (Rental_Apply__c ra : raList) { @@ -495,6 +620,18 @@ //wangweipeng 鏄惁鏄噸鐐逛骇鍝� 2021/08/30 start ra.Is_keyPoint_Product__c = keyPointProduct.get(ra.Id); //wangweipeng 鏄惁鏄噸鐐逛骇鍝� 2021/08/30 start + + // 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){ + // 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 (ra.Campaign__c != null&& ra.Campaign__r.IF_Approved__c && ra.Campaign__r.Meeting_Approved_No__c != null){ + ra.ApprovedNo_Delivery__c = ra.Campaign__r.Meeting_Approved_No__c; + ra.Approved_State_Delivery__c = ra.Campaign__r.Approved_Status__c; + } + // 20220315 ljh obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� update end } } //if (needSaveDetail) ControllerUtil.updRAEquipmentSetDetail(eList); @@ -510,7 +647,8 @@ return null; } catch (Exception ex) { system.debug('=====' + ex.getMessage()); - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getMessage()+'( '+Step_status+' )')); + // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getDmlMessage(0))); + ApexPages.addMessages(ex); Database.rollback(sp); done_flg = false; return null; diff --git a/force-app/main/default/classes/EquipmentSetShippmentReceived3CtrlTest.cls b/force-app/main/default/classes/EquipmentSetShippmentReceived3CtrlTest.cls index 24319f4..7af3602 100644 --- a/force-app/main/default/classes/EquipmentSetShippmentReceived3CtrlTest.cls +++ b/force-app/main/default/classes/EquipmentSetShippmentReceived3CtrlTest.cls @@ -18,7 +18,7 @@ } // 鍑哄簱鍓嶇偣妫�鑺傜偣鐨勬暟鎹� - @testSetup + // @testSetup static void setupTestData() { // MIXED_DML_OPERATION, DML operation on setup object is not permitted Error System.runAs(new User(Id = Userinfo.getUserId())) { @@ -26,9 +26,16 @@ StaticParameter.EscapeNFM001Trigger = true; Oly_TriggerHandler.bypass(ContactTriggerHandler.class.getName()); Oly_TriggerHandler.bypass(AgencyHospitalHandler.class.getName()); + // 20220316 ljh add start + // 濂ユ灄宸存柉鏃ュ巻 + OlympusCalendar__c oc = new OlympusCalendar__c(); + oc.Date__c = System.Today(); + oc.Before_1_WorkDay__c = oc.Date__c.addDays(-1); + insert oc; + // 20220316 ljh add end // 銈枫偣銉嗐儬绠$悊鑰� User user = new User(Test_staff__c = true); - user.LastName = '_銈点兂銉栥儶銉冦偢'; + user.LastName = '_銈点兂銉栥儶銉冦偢1'; user.FirstName = '銇�'; user.Alias = '銇�'; user.Email = 'olympusTest03@sunbridge.com'; @@ -544,8 +551,567 @@ raesdObj6.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); update new Rental_Apply_Equipment_Set_Detail__c[] {raesdObj1,raesdObj2,raesdObj3,raesdObj4,raesdObj5,raesdObj6}; }} + + static void setupTestData2() { + // MIXED_DML_OPERATION, DML operation on setup object is not permitted Error + System.runAs(new User(Id = Userinfo.getUserId())) { + StaticParameter.EscapeNFM001AgencyContractTrigger = true; + StaticParameter.EscapeNFM001Trigger = true; + Oly_TriggerHandler.bypass(ContactTriggerHandler.class.getName()); + Oly_TriggerHandler.bypass(AgencyHospitalHandler.class.getName()); + // 20220316 ljh add start + // 濂ユ灄宸存柉鏃ュ巻 + OlympusCalendar__c oc = new OlympusCalendar__c(); + oc.Date__c = System.Today(); + oc.Before_1_WorkDay__c = oc.Date__c.addDays(-1); + insert oc; + // 20220316 ljh add end + // 銈枫偣銉嗐儬绠$悊鑰� + User user = new User(Test_staff__c = true); + user.LastName = '_銈点兂銉栥儶銉冦偢1'; + user.FirstName = '銇�'; + user.Alias = '銇�'; + user.Email = 'olympusTest03@sunbridge.com'; + user.Username = 'olympusTest03@sunbridge.com'; + user.CommunityNickname = '銇�'; + user.IsActive = true; + user.EmailEncodingKey = 'ISO-2022-JP'; + user.TimeZoneSidKey = 'Asia/Tokyo'; + user.LocaleSidKey = 'ja_JP'; + user.LanguageLocaleKey = 'ja'; + user.ProfileId = System.Label.ProfileId_SystemAdmin; + user.Province__c = '鍖椾含'; + user.Dept__c = '鍖荤枟鍗庡寳钀ヤ笟鏈儴'; + user.Use_Start_Date__c = Date.today().addMonths(-6); + insert user; + + // 鐪� + Address_Level__c al = new Address_Level__c(); + al.Name = '鏉变含'; + al.Level1_Code__c = 'CN-99'; + al.Level1_Sys_No__c = '999999'; + insert al; + // 甯� + Address_Level2__c al2 = new Address_Level2__c(); + al2.Level1_Code__c = 'CN-99'; + al2.Level1_Sys_No__c = '999999'; + al2.Level1_Name__c = '鏉变含'; + al2.Name = '娓嬭胺鍖�'; + al2.Level2_Code__c = 'CN-9999'; + al2.Level2_Sys_No__c = '9999999'; + al2.Address_Level__c = al.id; + insert al2; + // 鐥呴櫌銈掍綔銈� + Account hospital = new Account(); + hospital.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'HP'].id; + hospital.Name = 'test hospital'; + hospital.Is_Active__c = '鏈夊姽'; + hospital.Attribute_Type__c = '鍗敓閮�'; + hospital.Speciality_Type__c = '缁煎悎鍖婚櫌'; + hospital.Grade__c = '涓�绾�'; + hospital.OCM_Category__c = 'SLTV'; + hospital.Is_Medical__c = '鍖荤枟鏈烘瀯'; + hospital.State_Master__c = al.id; + hospital.City_Master__c = al2.id; + hospital.Town__c = '涓滀含'; + insert hospital; + StaticParameter.EscapeAccountTrigger = true; + // 鎴︾暐绉戝銈掑緱銈� + Account[] strategicDep = [SELECT ID, Name FROM Account WHERE parentId = :hospital.Id AND recordType.DeveloperName = 'Department_Class_OTH']; + // 瑷虹檪绉戙倰浣溿倠 + Account dep = new Account(); + dep.recordtypeId = [Select Id FROM RecordType WHERE IsActive = true and SobjectType = 'Account' and DeveloperName = 'Department_OTH'].id; + dep.Name = 'test dep1'; + dep.AgentCode_Ext__c = '9999999'; + dep.ParentId = strategicDep[0].Id; + dep.Department_Class__c = strategicDep[0].Id; + dep.Hospital__c = hospital.Id; + insert dep; + + Contact contact2 = new Contact(); + contact2.AccountId = dep.Id; + contact2.FirstName = '璨换鑰�'; + contact2.LastName = 'test1缁忛攢鍟�'; + insert contact2; + + // 浜у搧 + Product2 pro1 = new Product2(Name='name01',IsActive=true,Family='GI', + Fixture_Model_No__c='n01',Serial_Lot_No__c='S/N tracing', + Fixture_Model_No_T__c = 'n01', Asset_Model_No__c = 'Pro1', + ProductCode_Ext__c='pc01',Manual_Entry__c=false); + Product2 pro2 = new Product2(Name='name02',IsActive=true,Family='GI', + Fixture_Model_No__c='n02',Serial_Lot_No__c='Lot tracing', + Fixture_Model_No_T__c = 'n02', Asset_Model_No__c = 'Pro2', + ProductCode_Ext__c='pc02',Manual_Entry__c=false); + Product2 pro3 = new Product2(Name='name03',IsActive=true,Family='GI', + Fixture_Model_No__c='n03',Serial_Lot_No__c='Lot tracing', + Fixture_Model_No_T__c = 'n03', Asset_Model_No__c = 'Pro3', + ProductCode_Ext__c='pc03',Manual_Entry__c=false); + Product2 pro4 = new Product2(Name='name04',IsActive=true,Family='GI', + Fixture_Model_No__c='n04',Serial_Lot_No__c='Lot tracing', + Fixture_Model_No_T__c = 'n04', Asset_Model_No__c = 'Pro4', + ProductCode_Ext__c='pc04',Manual_Entry__c=false); + insert new Product2[] {pro1, pro2, pro3, pro4}; + + Campaign cam = new Campaign(); + cam.Name = 'test campaign'; + cam.StartDate = Date.today().addDays(15); + cam.EndDate = Date.today().addDays(18); + cam.Name2__c = '1234'; + cam.Status = '鍙栨秷'; + cam.Mailflg_after45__c = true; + cam.Mailflg_cancel__c = true; + cam.Mailflg_before15__c = true; + cam.Mailflg_before7__c = true; + cam.Mailflg_after3__c = true; + cam.HostName__c = '1'; + cam.cooperatorCompany__c = '1'; + cam.RecordTypeId = System.label.RecordType_CampaignService; + cam.OwnerId = user.Id; + cam.IF_Approved__c = true; + insert cam; + //澶囧搧鍊熷嚭鐢宠 + Rental_Apply__c raObj = new Rental_Apply__c(); + raObj.Name = 'testra'; + raObj.OwnerId = user.Id; + raObj.Product_category__c = 'GI'; + raObj.Demo_purpose1__c = '浜у搧璇曠敤'; + raObj.demo_purpose2__c = FixtureUtil.raDemo_purpose2MAP.get('shiyongwuxunjia'); + raObj.direct_send__c = '鍖荤枟鏈烘瀯'; + raObj.Loaner_received_staff__c = '鐜嬩簲'; + raObj.Loaner_received_staff_phone__c = '110'; + raObj.direct_shippment_address__c = '鍖椾含甯�'; + raObj.Hospital__c = hospital.Id; + raObj.Strategic_dept__c = strategicDep[0].Id; + raObj.Account__c = dep.Id; + raObj.Request_shipping_day__c = Date.toDay(); + raObj.Hope_Lonaer_date_Num__c = 1; + //raObj.Request_return_day__c = Date.toDay(); + raObj.Answer_for_request__c = 'Test'; + raObj.Asset_loaner_start_day__c = Date.today(); + raObj.Asset_loaner_closed_day__c = Date.today(); + raObj.Phone_number__c = '1234567890'; + raObj.Loaner_medical_Staff__c = contact2.Id; + raObj.Campaign__c = cam.id; + insert raObj; + 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,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 = :raObj.id]; + + system.assertEquals(RaTarList[0].Campaign__r.Status,'鍙栨秷'); + system.assertEquals(RaTarList[0].Campaign__r.IF_Approved__c,true); + // 淇濇湁璁惧 + Asset asset1 = new Asset(Asset_Owner__c = 'Olympus'); + asset1.RecordTypeId = System.Label.Asset_RecordType; + asset1.SerialNumber = 'asset1'; + asset1.Name = 'asset1'; + asset1.AccountId = dep.Id; + asset1.Department_Class__c = strategicDep[0].Id; + asset1.Hospital__c = hospital.Id; + asset1.Product2Id = pro1.Id; + asset1.Quantity = 11; + asset1.Status = '涓嶆槑'; + asset1.Manage_type__c = '涓綋绠$悊'; + asset1.Loaner_accsessary__c = false; + asset1.Out_of_wh__c = 0; + asset1.Salesdepartment__c = '1.鍗庡寳钀ヤ笟鏈儴'; + asset1.Internal_asset_location__c = '鍖椾含 澶囧搧涓績'; + asset1.Product_category__c = 'GI'; + asset1.Equipment_Type__c = '浜у搧璇曠敤'; + asset1.SalesProvince__c = '鍖椾含'; + asset1.CompanyOfEquipment__c = '鍖椾含'; + asset1.Internal_Asset_number__c = '0001'; + + Asset asset2 = new Asset(Asset_Owner__c = 'Olympus'); + asset2.RecordTypeId = System.Label.Asset_RecordType; + asset2.SerialNumber = 'asset2'; + asset2.Name = 'asset2'; + asset2.AccountId = dep.Id; + asset2.Department_Class__c = strategicDep[0].Id; + asset2.Hospital__c = hospital.Id; + asset2.Product2Id = pro2.Id; + asset2.Quantity = 11; + asset2.Status = '涓嶆槑'; + asset2.Manage_type__c = '涓綋绠$悊'; + asset2.Loaner_accsessary__c = true; + asset2.Out_of_wh__c = 0; + asset2.Salesdepartment__c = '1.鍗庡寳钀ヤ笟鏈儴'; + asset2.Internal_asset_location__c = '鍖椾含 澶囧搧涓績'; + asset2.Product_category__c = 'GI'; + asset2.Equipment_Type__c = '浜у搧璇曠敤'; + asset2.SalesProvince__c = '鍖椾含'; + asset2.CompanyOfEquipment__c = '鍖椾含'; + asset2.Internal_Asset_number__c = '0002'; + + Asset asset3 = new Asset(Asset_Owner__c = 'Olympus'); + asset3.RecordTypeId = System.Label.Asset_RecordType; + asset3.SerialNumber = 'asset3'; + asset3.Name = 'asset3'; + asset3.AccountId = dep.Id; + asset3.Department_Class__c = strategicDep[0].Id; + asset3.Hospital__c = hospital.Id; + asset3.Product2Id = pro3.Id; + asset3.Quantity = 15; + asset3.Status = '涓嶆槑'; + asset3.Manage_type__c = '鏁伴噺绠$悊'; + asset3.Loaner_accsessary__c = true; + asset3.Out_of_wh__c = 0; + asset3.Salesdepartment__c = '1.鍗庡寳钀ヤ笟鏈儴'; + asset3.Internal_asset_location__c = '鍖椾含 澶囧搧涓績'; + asset3.Product_category__c = 'GI'; + asset3.Equipment_Type__c = '浜у搧璇曠敤'; + asset3.SalesProvince__c = '鍖椾含'; + asset3.CompanyOfEquipment__c = '鍖椾含'; + asset3.Internal_Asset_number__c = '0003'; + + Asset asset4 = new Asset(Asset_Owner__c = 'Olympus'); + asset4.RecordTypeId = System.Label.Asset_RecordType; + asset4.SerialNumber = 'asset4'; + asset4.Name = 'asset4'; + asset4.AccountId = dep.Id; + asset4.Department_Class__c = strategicDep[0].Id; + asset4.Hospital__c = hospital.Id; + asset4.Product2Id = pro4.Id; + asset4.Quantity = 20; + asset4.Status = '涓嶆槑'; + asset4.Manage_type__c = '鏁伴噺绠$悊'; + asset4.Loaner_accsessary__c = true; + asset4.Out_of_wh__c = 0; + asset4.Salesdepartment__c = '1.鍗庡寳钀ヤ笟鏈儴'; + asset4.Internal_asset_location__c = '鍖椾含 澶囧搧涓績'; + asset4.Product_category__c = 'GI'; + asset4.Equipment_Type__c = '浜у搧璇曠敤'; + asset4.SalesProvince__c = '鍖椾含'; + asset4.CompanyOfEquipment__c = '鍖椾含'; + asset4.Internal_Asset_number__c = '0004'; + insert new Asset[] {asset1, asset2, asset3, asset4}; + + // 澶囧搧涓�瀵逛竴Link琛� + Fixture_OneToOne_Link__c foLink1 = new Fixture_OneToOne_Link__c(); + foLink1.Main_Asset__c = asset1.Id; + foLink1.Accessory_Asset__c = asset2.Id; + foLink1.Quantity__c = 1; + + Fixture_OneToOne_Link__c foLink2 = new Fixture_OneToOne_Link__c(); + foLink2.Main_Asset__c = asset1.Id; + foLink2.Accessory_Asset__c = asset3.Id; + foLink2.Quantity__c = 1; + insert new Fixture_OneToOne_Link__c[] {foLink1, foLink2}; + + // 澶囧搧閰嶅 + Fixture_Set__c fsObj1 = new Fixture_Set__c(); + fsObj1.Name = 'set1'; + fsObj1.Fixture_Set_Body_Model_No__c = 'modelNo1'; + fsObj1.Loaner_name__c = 'name1'; + insert fsObj1; + + // 澶囧搧閰嶅鏄庣粏 + Fixture_Set_Detail__c fsdObjA1 = new Fixture_Set_Detail__c(); + fsdObjA1.Name = '澶囧搧閰嶅鏄庣粏鍚�1'; + fsdObjA1.Name_CHN_Created__c = '涓枃鍚嶇О1'; + fsdObjA1.Product2__c = pro1.Id; + fsdObjA1.Fixture_Set__c = fsObj1.Id; + fsdObjA1.Is_Body__c = true; + fsdObjA1.Is_Optional__c = false; + fsdObjA1.UniqueKey__c = fsObj1.Id + ':' + pro1.Id; + fsdObjA1.SortInt__c = 1; + fsdObjA1.Quantity__c = 1; + + Fixture_Set_Detail__c fsdObjA2 = new Fixture_Set_Detail__c(); + fsdObjA2.Name = '澶囧搧閰嶅鏄庣粏鍚�2'; + fsdObjA2.Name_CHN_Created__c = '涓枃鍚嶇О2'; + fsdObjA2.Product2__c = pro2.Id; + fsdObjA2.Fixture_Set__c = fsObj1.Id; + fsdObjA2.Is_Body__c = false; + fsdObjA2.Is_Optional__c = true; + fsdObjA2.UniqueKey__c = fsObj1.Id + ':' + pro2.Id; + fsdObjA2.SortInt__c = 2; + fsdObjA2.Quantity__c = 1; + fsdObjA2.Is_OneToOne__c = true; + + Fixture_Set_Detail__c fsdObjA3 = new Fixture_Set_Detail__c(); + fsdObjA3.Name = '澶囧搧閰嶅鏄庣粏鍚�3'; + fsdObjA3.Name_CHN_Created__c = '涓枃鍚嶇О3'; + fsdObjA3.Product2__c = pro3.Id; + fsdObjA3.Fixture_Set__c = fsObj1.Id; + fsdObjA3.Is_Body__c = false; + fsdObjA3.Is_Optional__c = true; + fsdObjA3.UniqueKey__c = fsObj1.Id + ':' + pro3.Id; + fsdObjA3.SortInt__c = 3; + fsdObjA3.Quantity__c = 2; + fsdObjA3.Is_OneToOne__c = true; + + Fixture_Set_Detail__c fsdObjA4 = new Fixture_Set_Detail__c(); + fsdObjA4.Name = '澶囧搧閰嶅鏄庣粏鍚�4'; + fsdObjA4.Name_CHN_Created__c = '涓枃鍚嶇О4'; + fsdObjA4.Product2__c = pro4.Id; + fsdObjA4.Fixture_Set__c = fsObj1.Id; + fsdObjA4.Is_Body__c = false; + fsdObjA4.Is_Optional__c = true; + fsdObjA4.UniqueKey__c = fsObj1.Id + ':' + pro4.Id; + fsdObjA4.SortInt__c = 4; + fsdObjA4.Quantity__c = 2; + fsdObjA4.Is_OneToOne__c = false; + fsdObjA4.Is_Optional__c = true; + insert new Fixture_Set_Detail__c[] {fsdObjA1, fsdObjA2, fsdObjA3, fsdObjA4}; + + // 鍊熷嚭澶囧搧閰嶅涓�瑙� + Rental_Apply_Equipment_Set__c raesObj = new Rental_Apply_Equipment_Set__c(); + raesObj.Rental_Apply__c = raObj.Id; + raesObj.Fixture_Set__c = fsObj1.Id; + raesObj.Cancel_Select__c = false; + raesObj.Rental_Start_Date__c = Date.toDay(); + raesObj.Rental_End_Date__c = Date.toDay(); + raesObj.IndexFromUniqueKey__c = 1; + raesObj.UniqueKey__c = '1:'+ fsObj1.Id + ':1'; + insert raesObj; + + // 鍊熷嚭澶囧搧閰嶅涓�瑙堟槑缁� + Rental_Apply_Equipment_Set_Detail__c raesdObj1 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj1.Rental_Apply__c = raObj.Id; + raesdObj1.Fixture_Set_Detail__c = fsdObjA1.Id; + raesdObj1.Rental_Num__c = 1; + raesdObj1.Queue_Number__c = null; + raesdObj1.Is_Body__c = true; + raesdObj1.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj1.IndexFromUniqueKey__c = 1; + raesdObj1.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA1.Id + ':1'; + raesdObj1.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj1.FSD_Is_Optional__c = false; + raesdObj1.FSD_Is_OneToOne__c = false; + raesdObj1.ApplyPersonAppended__c = false; + raesdObj1.FSD_Fixture_Model_No__c = 'n01'; + raesdObj1.Fixture_Model_No_text__c = 'n01'; + raesdObj1.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj1.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj1.Product_category_text__c = 'GI'; + raesdObj1.Equipment_Type_text__c = '浜у搧璇曠敤'; + + Rental_Apply_Equipment_Set_Detail__c raesdObj2 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj2.Rental_Apply__c = raObj.Id; + raesdObj2.Fixture_Set_Detail__c = fsdObjA2.Id; + raesdObj2.Rental_Num__c = 1; + raesdObj2.Queue_Number__c = null; + raesdObj2.Is_Body__c = false; + raesdObj2.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj2.IndexFromUniqueKey__c = 2; + raesdObj2.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA2.Id + ':2'; + raesdObj2.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj2.FSD_Is_Optional__c = false; + raesdObj2.FSD_Is_OneToOne__c = true; + raesdObj2.ApplyPersonAppended__c = false; + raesdObj2.FSD_Fixture_Model_No__c = 'n02'; + raesdObj2.Fixture_Model_No_text__c = 'n02'; + raesdObj2.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj2.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj2.Product_category_text__c = 'GI'; + raesdObj2.Equipment_Type_text__c = '浜у搧璇曠敤'; + + Rental_Apply_Equipment_Set_Detail__c raesdObj3 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj3.Rental_Apply__c = raObj.Id; + raesdObj3.Fixture_Set_Detail__c = fsdObjA3.Id; + raesdObj3.Rental_Num__c = 2; + raesdObj3.Queue_Number__c = null; + raesdObj3.Is_Body__c = false; + raesdObj3.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj3.IndexFromUniqueKey__c = 3; + raesdObj3.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA3.Id + ':3'; + raesdObj3.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj3.FSD_Is_Optional__c = false; + raesdObj3.FSD_Is_OneToOne__c = true; + raesdObj3.ApplyPersonAppended__c = false; + raesdObj3.FSD_Fixture_Model_No__c = 'n03'; + raesdObj3.Fixture_Model_No_text__c = 'n03'; + raesdObj3.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj3.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj3.Product_category_text__c = 'GI'; + raesdObj3.Equipment_Type_text__c = '浜у搧璇曠敤'; + + Rental_Apply_Equipment_Set_Detail__c raesdObj4 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj4.Rental_Apply__c = raObj.Id; + raesdObj4.Fixture_Set_Detail__c = fsdObjA3.Id; + raesdObj4.Rental_Num__c = 2; + raesdObj4.Queue_Number__c = null; + raesdObj4.Is_Body__c = false; + raesdObj4.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj4.IndexFromUniqueKey__c = 4; + raesdObj4.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA3.Id + ':4'; + raesdObj4.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj4.FSD_Is_Optional__c = false; + raesdObj4.FSD_Is_OneToOne__c = true; + raesdObj4.ApplyPersonAppended__c = false; + raesdObj4.FSD_Fixture_Model_No__c = 'n03'; + raesdObj4.Fixture_Model_No_text__c = 'n03'; + raesdObj4.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj4.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj4.Product_category_text__c = 'GI'; + raesdObj4.Equipment_Type_text__c = '浜у搧璇曠敤'; + + Rental_Apply_Equipment_Set_Detail__c raesdObj5 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj5.Rental_Apply__c = raObj.Id; + raesdObj5.Fixture_Set_Detail__c = fsdObjA4.Id; + raesdObj5.Rental_Num__c = 2; + raesdObj5.Queue_Number__c = null; + raesdObj5.Is_Body__c = false; + raesdObj5.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj5.IndexFromUniqueKey__c = 5; + raesdObj5.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA4.Id + ':5'; + raesdObj5.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj5.FSD_Is_Optional__c = true; + raesdObj5.FSD_Is_OneToOne__c = false; + raesdObj5.ApplyPersonAppended__c = false; + raesdObj5.FSD_Fixture_Model_No__c = 'n04'; + raesdObj5.Fixture_Model_No_text__c = 'n04'; + raesdObj5.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj5.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj5.Product_category_text__c = 'GI'; + raesdObj5.Equipment_Type_text__c = '浜у搧璇曠敤'; + + Rental_Apply_Equipment_Set_Detail__c raesdObj6 = new Rental_Apply_Equipment_Set_Detail__c(); + raesdObj6.Rental_Apply__c = raObj.Id; + raesdObj6.Fixture_Set_Detail__c = fsdObjA4.Id; + raesdObj6.Rental_Num__c = 2; + raesdObj6.Queue_Number__c = null; + raesdObj6.Is_Body__c = false; + raesdObj6.Rental_Apply_Equipment_Set__c = raesObj.Id; + raesdObj6.IndexFromUniqueKey__c = 6; + raesdObj6.UniqueKey__c = '1:'+ raesObj.Id + ':' + fsdObjA4.Id + ':6'; + raesdObj6.FSD_OneToOneAccessory_Cnt__c = 2; + raesdObj6.FSD_Is_Optional__c = true; + raesdObj6.FSD_Is_OneToOne__c = false; + raesdObj6.ApplyPersonAppended__c = false; + raesdObj6.FSD_Fixture_Model_No__c = 'n04'; + raesdObj6.Fixture_Model_No_text__c = 'n04'; + raesdObj6.Salesdepartment_before__c = '1.鍗庡寳钀ヤ笟鏈儴'; + raesdObj6.Internal_asset_location_before__c = '鍖椾含 澶囧搧涓績'; + raesdObj6.Product_category_text__c = 'GI'; + raesdObj6.Equipment_Type_text__c = '浜у搧璇曠敤'; + insert new Rental_Apply_Equipment_Set_Detail__c[] {raesdObj1,raesdObj2,raesdObj3,raesdObj4,raesdObj5,raesdObj6}; + Test.setCreatedDate(raObj.Id, Datetime.now().addDays(-2)); + // 鐢宠鍗� + raObj.Status__c = FixtureUtil.raStatusMap.get(FixtureUtil.RaStatus.Yi_Pi_Zhun.ordinal()); + raObj.Status_Text__c = FixtureUtil.raStatusMap.get(FixtureUtil.RaStatus.Yi_Pi_Zhun.ordinal()); + raObj.NotWatch_RA_Status__c = true; + raObj.Request_approval_time__c = Datetime.now().addDays(-1); + update raObj; + + // 鍊熷嚭澶囧搧閰嶅涓�瑙堟槑缁� + raesdObj1.Select_Time__c = Date.toDay(); + raesdObj1.Asset__c = asset1.Id; + raesdObj1.Loaner_accsessary__c = false; + raesdObj1.FSD_Name_CHN__c = 'name01'; + raesdObj1.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + raesdObj2.Select_Time__c = Date.toDay(); + raesdObj2.Asset__c = asset2.Id; + raesdObj2.Loaner_accsessary__c = true; + raesdObj2.Fixture_OneToOne_Link_Id__c = foLink1.Id; + raesdObj2.FSD_Name_CHN__c = 'name02'; + raesdObj2.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + raesdObj3.Select_Time__c = Date.toDay(); + raesdObj3.Asset__c = asset3.Id; + raesdObj3.Loaner_accsessary__c = true; + raesdObj3.Fixture_OneToOne_Link_Id__c = foLink2.Id; + raesdObj3.FSD_Name_CHN__c = 'name03'; + raesdObj3.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + raesdObj4.Select_Time__c = Date.toDay(); + raesdObj4.Asset__c = asset3.Id; + raesdObj4.Loaner_accsessary__c = true; + raesdObj4.FSD_Name_CHN__c = 'name03'; + raesdObj4.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + raesdObj5.Select_Time__c = Date.toDay(); + raesdObj5.Asset__c = asset4.Id; + raesdObj5.Loaner_accsessary__c = true; + raesdObj5.FSD_Name_CHN__c = 'name04'; + raesdObj5.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + raesdObj6.Select_Time__c = Date.toDay(); + raesdObj6.Asset__c = asset4.Id; + raesdObj6.Loaner_accsessary__c = true; + raesdObj6.FSD_Name_CHN__c = 'name04'; + raesdObj6.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Yi_Fen_Pei.ordinal()); + // update new Rental_Apply_Equipment_Set_Detail__c[] {raesdObj1,raesdObj2,raesdObj3,raesdObj4,raesdObj5,raesdObj6}; + + // 鍒嗛厤鍚庝慨鏀筧sset閲岄潰鐨勬暟鎹� + asset1.Last_Reserve_RAES_Detail__c = raesdObj1.Id; + asset1.Out_of_wh__c = 1; + asset1.Lei_Ji_Jie_Chu_Shu_Jia__c = 1; + asset2.Last_Reserve_RAES_Detail__c = raesdObj2.Id; + asset2.Out_of_wh__c = 1; + asset2.Lei_Ji_Jie_Chu_Shu_Jia__c = 1; + asset3.Last_Reserve_RAES_Detail__c = null; + asset3.Out_of_wh__c = 2; + asset3.Lei_Ji_Jie_Chu_Shu_Jia__c = 2; + asset4.Last_Reserve_RAES_Detail__c = null; + asset4.Out_of_wh__c = 2; + asset4.Lei_Ji_Jie_Chu_Shu_Jia__c = 2; + // update new Asset[] {asset1,asset2,asset3,asset4}; + + // 鍑哄簱鎸囩ず鎿嶄綔 涓嬫灦鎿嶄綔 + raesdObj1.Shipment_request_time2__c = Date.toDay(); + raesdObj1.Shipment_request__c = true; + raesdObj1.StockDown__c = true; + raesdObj1.StockDown_time__c = Date.toDay(); + raesdObj1.StockDown_staff__c = Userinfo.getUserId(); + raesdObj1.Inspection_result__c = 'OK'; + raesdObj1.Pre_inspection_time__c = System.now(); + raesdObj1.Inspection_staff__c = Userinfo.getUserId(); + raesdObj1.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + + raesdObj2.Shipment_request_time2__c = Date.toDay(); + raesdObj2.Shipment_request__c = true; + raesdObj2.StockDown__c = true; + raesdObj2.StockDown_time__c = Date.toDay(); + raesdObj2.StockDown_staff__c = Userinfo.getUserId(); + raesdObj2.Inspection_result__c = 'OK'; + raesdObj2.Pre_inspection_time__c = System.now(); + raesdObj2.Inspection_staff__c = Userinfo.getUserId(); + raesdObj2.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + + raesdObj3.Shipment_request_time2__c = Date.toDay(); + raesdObj3.Shipment_request__c = true; + raesdObj3.StockDown__c = true; + raesdObj3.StockDown_time__c = Date.toDay(); + raesdObj3.StockDown_staff__c = Userinfo.getUserId(); + raesdObj3.Inspection_result__c = 'OK'; + raesdObj3.Pre_inspection_time__c = System.now(); + raesdObj3.Inspection_staff__c = Userinfo.getUserId(); + raesdObj3.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + + raesdObj4.Shipment_request_time2__c = Date.toDay(); + raesdObj4.Shipment_request__c = true; + raesdObj4.StockDown__c = true; + raesdObj4.StockDown_time__c = Date.toDay(); + raesdObj4.StockDown_staff__c = Userinfo.getUserId(); + raesdObj4.Inspection_result__c = 'OK'; + raesdObj4.Pre_inspection_time__c = System.now(); + raesdObj4.Inspection_staff__c = Userinfo.getUserId(); + raesdObj4.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + + raesdObj5.Shipment_request_time2__c = Date.toDay(); + raesdObj5.Shipment_request__c = true; + raesdObj5.StockDown__c = true; + raesdObj5.StockDown_time__c = Date.toDay(); + raesdObj5.StockDown_staff__c = Userinfo.getUserId(); + raesdObj5.Inspection_result__c = 'OK'; + raesdObj5.Pre_inspection_time__c = System.now(); + raesdObj5.Inspection_staff__c = Userinfo.getUserId(); + raesdObj5.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + + raesdObj6.Shipment_request_time2__c = Date.toDay(); + raesdObj6.Shipment_request__c = true; + raesdObj6.StockDown__c = true; + raesdObj6.StockDown_time__c = Date.toDay(); + raesdObj6.StockDown_staff__c = Userinfo.getUserId(); + raesdObj6.Inspection_result__c = 'OK'; + raesdObj6.Pre_inspection_time__c = System.now(); + raesdObj6.Inspection_staff__c = Userinfo.getUserId(); + raesdObj6.Shipment_Status_Text__c = FixtureUtil.raesdStatusMap.get(FixtureUtil.HistoryStatus.Chu_Ku_Qian_Yi_Jian_Ce.ordinal()); + update new Rental_Apply_Equipment_Set_Detail__c[] {raesdObj1,raesdObj2,raesdObj3,raesdObj4,raesdObj5,raesdObj6}; + }} + static testMethod void testSave() { - // setupTestData(); + Oly_TriggerHandler.bypass('RentalApplyTriggerHandler'); + setupTestData(); CreateRelationListPagingCmpCtrl cmp; PageReference ref; List<Rental_Apply__c> raObjs; @@ -555,7 +1121,7 @@ List<Rental_Apply_Equipment_Set_Detail__c> raesdObjs; raesObjs = [select Id, RAES_Status__c FROM Rental_Apply_Equipment_Set__c]; raesdObjs = [select Id, Rental_Apply_Equipment_Set__c,RAESD_Status__c from Rental_Apply_Equipment_Set_Detail__c]; - Test.startTest(); + // 鍙戣揣鍗� FixtureDeliverySlip__c fdsObj = new FixtureDeliverySlip__c(); fdsObj.Name = '00001'; @@ -575,6 +1141,7 @@ for (EquipmentSetShippmentReceived3Controller.EsdInfo esdInfo : essr3Controller.esdList) { esdInfo.isChecked = true; } + // system.test.startTest(); essr3Controller.UnCheckedId = raesObjs[0].Id; essr3Controller.deleteDetail(); //鍒犻櫎鏄庣粏 essr3Controller.ShippmentAdd(); //杩藉姞 鍒版槑缁嗛〉闈� @@ -592,6 +1159,57 @@ essr3Controller.slip.DeliveryCompany__c = '鍒╄'; essr3Controller.save(); - Test.stopTest(); + // system.Test.stopTest(); + } + static testMethod void test2(){ + Oly_TriggerHandler.bypass('RentalApplyTriggerHandler'); + setupTestData2(); + CreateRelationListPagingCmpCtrl cmp; + PageReference ref; + List<Rental_Apply__c> raObjs; + Rental_Apply__c raObj; + List<Rental_Apply_Equipment_Set__c> raesObjs; + Rental_Apply_Equipment_Set__c raesObj; + List<Rental_Apply_Equipment_Set_Detail__c> raesdObjs; + raesObjs = [select Id, RAES_Status__c FROM Rental_Apply_Equipment_Set__c]; + raesdObjs = [select Id, Rental_Apply_Equipment_Set__c,RAESD_Status__c from Rental_Apply_Equipment_Set_Detail__c]; + + // 鍙戣揣鍗� + FixtureDeliverySlip__c fdsObj = new FixtureDeliverySlip__c(); + fdsObj.Name = '00001'; + fdsObj.DeliveryCompany__c = '鍒╄'; + fdsObj.Distributor_method__c = '闄嗚繍'; + fdsObj.DeliveryType__c = '鍙戣揣'; + insert fdsObj; + + // 鍙戣揣鎿嶄綔 + ref = new PageReference('/apex/EquipmentSetShippmentReceived3?id=' + raesObjs[0].Id + '&step=鏄庣粏'); + Test.setCurrentPage(ref); + EquipmentSetShippmentReceived3Controller essr3Controller = new EquipmentSetShippmentReceived3Controller(); + essr3Controller.init(); + essr3Controller.getEsdListSize(); + essr3Controller.CheckedId = raesObjs[0].Id; + essr3Controller.filljsQRAction(); //鎵弿鍏朵粬鐢宠浼氬鍔犳槑缁� + for (EquipmentSetShippmentReceived3Controller.EsdInfo esdInfo : essr3Controller.esdList) { + esdInfo.isChecked = true; + } + // system.test.startTest(); + essr3Controller.UnCheckedId = raesObjs[0].Id; + essr3Controller.deleteDetail(); //鍒犻櫎鏄庣粏 + essr3Controller.ShippmentAdd(); //杩藉姞 鍒版槑缁嗛〉闈� + essr3Controller.CheckedId = raesObjs[0].Id; + // essr3Controller.filljsQRAction(); + // for (EquipmentSetShippmentReceived3Controller.EsdInfo esdInfo : essr3Controller.esdList) { + // esdInfo.isChecked = true; + // } + essr3Controller.ShippmentDetail(); //鍙戣揣鍓�-妫�娴� + essr3Controller.slip.Name = '00001'; + essr3Controller.searchSlip(); + essr3Controller.slip.Name = '00002'; + essr3Controller.slip.DeliveryType__c = '鍙戣揣'; + essr3Controller.slip.Distributor_method__c = '闄嗚繍'; + essr3Controller.slip.DeliveryCompany__c = '鍒╄'; + + essr3Controller.save(); } } \ No newline at end of file diff --git a/force-app/main/default/classes/RentalApplyWebService.cls b/force-app/main/default/classes/RentalApplyWebService.cls index 618d011..26dc990 100644 --- a/force-app/main/default/classes/RentalApplyWebService.cls +++ b/force-app/main/default/classes/RentalApplyWebService.cls @@ -1159,7 +1159,10 @@ // } // 鍒嗛厤楠岃瘉 Webservice static String AssignBtn(String Rid){ - List<Rental_Apply__c> raList = [select demo_purpose2__c,next_action__c,QIS_number__r.ReplaceDeliveryDate__c,Follow_UP_Opp__r.Shipping_Finished_Day_Func__c,repair__r.Repair_Final_Inspection_Date__c,repair__r.Return_Without_Repair_Date__c,Campaign__c,Campaign__r.Status,Repair__r.Repair_Shipped_Date__c,Campaign__r.IF_Approved__c,Campaign__r.Meeting_Approved_No__c from Rental_Apply__c where id = :Rid]; + + List<String> statusList = System.Label.StatusProcessState.split(','); + + List<Rental_Apply__c> raList = [select demo_purpose2__c,next_action__c,QIS_number__r.ReplaceDeliveryDate__c,Follow_UP_Opp__r.Shipping_Finished_Day_Func__c,repair__r.Repair_Final_Inspection_Date__c,repair__r.Return_Without_Repair_Date__c,Campaign__c,Campaign__r.Status,Repair__r.Repair_Shipped_Date__c,Campaign__r.IF_Approved__c,Campaign__r.Meeting_Approved_No__c,Campaign__r.Approved_Status__c from Rental_Apply__c where id = :Rid]; // 20210803 ljh SFDC-C5HDC7 add 鏌ヨ娣诲姞 Campaign__c,Campaign__r.Status,Repair__r.Repair_Shipped_Date__c if(raList.size()>0){ Rental_Apply__c Ra = raList[0]; @@ -1184,6 +1187,9 @@ else if(Ra.Campaign__r.IF_Approved__c && Ra.Campaign__r.Meeting_Approved_No__c == null){ return '宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖'; }//20220301 sx obpm淇敼 + else if(Ra.Campaign__r.IF_Approved__c && Ra.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(Ra.Campaign__r.Approved_Status__c)){ + return '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢'; + }//20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� else{ return 'Fin'; } diff --git a/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls b/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls index 1adf341..860fafb 100644 --- a/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls +++ b/force-app/main/default/classes/RentalFixtureSetAssignAgencyController.cls @@ -1,3 +1,4 @@ +// RentalFixtureSetAssignAgencyCtrlTest public with sharing class RentalFixtureSetAssignAgencyController { public List<EsdInfo> esdList { get; set; } public FixtureDeliverySlip__c slip { get; set; } @@ -19,405 +20,7 @@ stepName = '鏃�'; } public PageReference init() { - Integer i = 0; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; - i++; + done_flg = false; slipEnabled = false; isSameCity = false; @@ -446,9 +49,9 @@ + ', Loaner_cancel_request__c'//20210707 SFDC-C448KZ you + ', Equipment_Type_F__c' //20210508 LJH ADD 1672 + ', Wei_Assigned_Cnt__c' // 20210624 ljh add SFDC-C448GR start - + ', Campaign__c, Campaign__r.IF_Approved__c, Campaign__r.Meeting_Approved_No__c' - + ', Campaign__r.Meeting_Approved_No__r.ProcessState__c' - + ', Campaign__r.Meeting_Approved_No__r.MeetingApprovedNo__c' //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 + + ', Campaign__r.IF_Approved__c' // 20220315 ljh add + + ', Campaign__r.Meeting_Approved_No__c' // 20220315 ljh add + + ', Campaign__r.Approved_Status__c' // 20220315 ljh add + ' FROM Rental_Apply__c' + ' WHERE Id=\'' + taId + '\''; List<Rental_Apply__c> raList = (List<Rental_Apply__c>) Consum_ApplyUtil.withoutQueryList(rasql); @@ -648,7 +251,8 @@ , Rental_Apply_Equipment_Set__r.Shippment_loaner_time2__c , Rental_Apply__r.Status__c //20210519 ljh add 1829 end , Rental_Apply__r.Request_approval_time__c //20220309 SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� - , Add_Request_approval_time__c //20220309 SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� + , Add_Request_approval_time__c //20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� + , ApplyToShipmentWorkTime__c //20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� , Rental_Num__c , Rental_Start_Date__c , Select_Time__c @@ -825,18 +429,22 @@ } } private Boolean isRaStatusOK() { + + List<String> statusList = System.Label.StatusProcessState.split(','); + //妫�鏌ユ槸鍚﹀彲浠ョ户缁� // 20210809 ljh SFDC-C5HDC7 update start List<Rental_Apply__c> RaTarList = [ SELECT Campaign__c , Repair__c , Campaign__r.Status - ,Campaign__r.IF_Approved__c - ,Campaign__r.Meeting_Approved_No__c + , Campaign__r.IF_Approved__c + , Campaign__r.Meeting_Approved_No__c + , Campaign__r.Approved_Status__c //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� // ,repair__r.Return_Without_Repair_Date__c , Return_Without_Repair_Date_F__c // , Repair__r.Repair_Final_Inspection_Date__c - ,Repair_Final_Inspection_Date_F__c + , Repair_Final_Inspection_Date_F__c // , Repair__r.Repair_Shipped_Date__c , RC_return_to_office__c , demo_purpose2__c //1822 yc 20211025 宸茶喘寰呰揣鐩殑锛屾柊鍝佸凡鏈夊彂璐ф棩涓嶈兘鍑哄簱 @@ -878,10 +486,18 @@ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '绱㈣禂QIS鐩殑锛孮IS宸叉湁鏂板搧鍙戣揣鏃�,涓嶈兘缁х画浜�')); return false; }//1822 yc 20211108 end - //20220225 sx add obpm 鍔炰簨澶勫鍔犲垽鏂細鏄惁鐢宠鍐宠鍕剧潃娌℃湁鍐宠缂栧彿涓嶈兘杩涜鎿嶄綔 + //20220225 sx start obpm 鍔炰簨澶勫鍔犲垽鏂細鏄惁鐢宠鍐宠鍕剧潃娌℃湁鍐宠缂栧彿涓嶈兘杩涜鎿嶄綔 else if(RaTar.Campaign__c != null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c == null){ ApexPages.addMessage(new ApexPages.message(ApexPages.severity.Error, '宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖')); + return false; } + //20220225 sx end obpm 鍔炰簨澶勫鍔犲垽鏂細鏄惁鐢宠鍐宠鍕剧潃娌℃湁鍐宠缂栧彿涓嶈兘杩涜鎿嶄綔 + //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� add start + else if(RaTar.Campaign__c != null && RaTar.Campaign__r.IF_Approved__c && RaTar.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(RaTar.Campaign__r.Approved_Status__c)){ + ApexPages.addMessage(new ApexPages.message(ApexPages.severity.Error, '宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢')); + return false; + } + //20220315 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� add end } return true; } @@ -2112,8 +1728,7 @@ ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '娌℃湁鏄庣粏锛屼笉鑳藉彂璐�!')); return; } - Map<String,String> tes = new Map<String,String>(); - //Map<String, List<Rental_Apply_Equipment_Set_Detail__c>> approvalMap = new Map<String, List<Rental_Apply_Equipment_Set_Detail__c>>();// 20220309 SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� + Map<Datetime, List<Rental_Apply_Equipment_Set_Detail__c>> approvalMap = new Map<Datetime, List<Rental_Apply_Equipment_Set_Detail__c>>();// 20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� for(EsdInfo esd:esdList) { if(!raesdMap.containsKey(esd.rec.Id)) { continue; @@ -2170,17 +1785,17 @@ raesd.Inspection_result__c = 'OK'; // 鍙戣揣鍓嶆娴嬫椂闂村拰妫�娴嬩汉鍦╰rigger閲岃 raesd.Shippment_loaner_time__c = now; - // 20220309 SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // 20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start // Datetime keyDt = raesd.Add_Request_approval_time__c != null?raesd.Add_Request_approval_time__c:raesd.Rental_Apply__r.Request_approval_time__c; // List<Rental_Apply_Equipment_Set_Detail__c> tempRaesdL; - // if(approvalMap.containsKey(keyDt.format())){ - // tempRaesdL = approvalMap.get(keyDt.format()); + // if(approvalMap.containsKey(keyDt)){ + // tempRaesdL = approvalMap.get(keyDt); // }else{ // tempRaesdL = new List<Rental_Apply_Equipment_Set_Detail__c>(); // } // tempRaesdL.add(raesd); - // approvalMap.put(keyDt.format(),tempRaesdL); - // 20220309 SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end + // approvalMap.put(keyDt,tempRaesdL); + // 20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end updateRaesdList.add(raesd); } else { @@ -2210,16 +1825,6 @@ return; } //20201209 ljh update end - - //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 - if (String.isNotBlank(parentObj.Campaign__c) && parentObj.Campaign__r.IF_Approved__c) { - if (String.isBlank(parentObj.Campaign__r.Meeting_Approved_No__c) - || String.isBlank(parentObj.Campaign__r.Meeting_Approved_No__r.MeetingApprovedNo__c)) { - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '璇ョ敵璇峰崟宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖,涓嶈兘鍙戣揣锛�')); - return; - } - } - // 鍒犻櫎link if(!mainIdList.isEmpty()) { Oly_TriggerHandler.bypass(AssetHandlerCheck.class.getName()); @@ -2229,11 +1834,81 @@ if(!updateRaesdList.isEmpty()) { slip.Shippment_loaner_time__c = now; FixtureUtil.withoutUpsertObjects(new List<FixtureDeliverySlip__c> {slip}); + // 20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // map<String,Decimal> ApplyToShipmentMap = new map<String,Decimal>(); + // if(approvalMap.size() > 0 ){ + // // dtList[0] 绗竴涓氨鏄渶灏忔椂闂� + // List<Datetime> dtList = new List<Datetime>(approvalMap.keySet()); + // Date startDateSOQL = date.newinstance(dtList[0].year(), dtList[0].month(), dtList[0].day()); + // List<OlympusCalendar__c> ocList = [SELECT Id, Date__c,IsWorkDay__c + // FROM OlympusCalendar__c + // WHERE Date__c >= :startDateSOQL + // AND Date__c <= :Date.today() + // ORDER BY Date__c ASC]; + // for(Datetime dt:dtList){ + // Boolean startFlag = false; + // Boolean endFlag = false; + // Datetime startTime = dt; + // Date startDate = Date.newInstance(startTime.year(),startTime.month(),startTime.day()); + // Datetime endTime = Datetime.now(); + // Date endDate = Date.today(); + // // 瀹℃壒鏃堕棿鏄潪濂ユ灄宸存柉宸ヤ綔鏃� + // if(ocList[0].IsWorkDay__c == 0){ + // for(OlympusCalendar__c oc:ocList){ + // if(oc.IsWorkDay__c == 1){ + // startTime = Datetime.newInstance(oc.Date__c.year(),oc.Date__c.month(),oc.Date__c.day(),0,0,0); + // startDate = oc.Date__c; + // startFlag = true; + // break; + // } + // } + // } + // // 鍙戣揣鏃堕棿鏄潪濂ユ灄宸存柉宸ヤ綔鏃� + // if(ocList[ocList.size() - 1].IsWorkDay__c == 0){ + // for(Integer i = ocList.size() - 1; i <= 0;i--){ + // if(ocList[i].IsWorkDay__c == 1){ + // endTime = Datetime.newInstance(ocList[i].Date__c.addDays(1).year(),ocList[i].Date__c.addDays(1).month(),ocList[i].Date__c.addDays(1).day(),0,0,0); + // endDate = ocList[i].Date__c.addDays(1); + // endFlag = true; + // break; + // } + // } + // } + // Decimal timeDifLast; + // if(ocList[0].IsWorkDay__c == 0 && ocList[ocList.size() - 1].IsWorkDay__c == 0 && !startFlag && !endFlag){ + // timeDifLast = 0; + // }else{ + // Long startL = startTime.getTime(); + // Long tendL = endTime.getTime(); + // Long timeDif = tendL - startL; + // Decimal time11 = timeDif*1.00; + // Decimal time12 = 24*3600*1000*1.00; + // timeDifLast = time11/time12; + // Integer tempWeek = 0; + // for(OlympusCalendar__c oc:ocList){ + // if(oc.IsWorkDay__c == 0 && startDate < oc.Date__c && oc.Date__c < endDate){ + // tempWeek++; + // } + // } + // timeDifLast = timeDifLast - tempWeek; + // } + // // dtestLast 鍥涜垗浜斿叆 淇濈暀1浣嶅皬鏁� + // for(Rental_Apply_Equipment_Set_Detail__c raesd00:approvalMap.get(dt)){ + // ApplyToShipmentMap.put(raesd00.Id,timeDifLast.setScale(1)); + // } + // } + // } + // 20220309 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end // 鏄庣粏鍜岀敵璇疯繛鍒板彂璐у崟涓� for(Rental_Apply_Equipment_Set_Detail__c raesd: updateRaesdList) { if(!raesd.Cancel_Select__c) { raesd.DeliverySlip__c = slip.Id; } + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� start + // if(ApplyToShipmentMap.containsKey(raesd.Id)){ + // raesd.ApplyToShipmentWorkTime__c = ApplyToShipmentMap.get(raesd.Id); + // } + // 20220315 ljh SFDC-CC6CLJ phase5涓婄嚎璇鹃131 鎻愪氦鐢宠鍒板鍝佸嚭搴撴椂闀� end } FixtureUtil.withoutUpdate(updateRaesdList); // 20210624 ljh update SFDC-C448GR start @@ -2250,8 +1925,10 @@ //20220217 sx add 澶囧搧鍊熷嚭鐢宠-鍐宠鎺у埗 No.4 鍑哄簱鎴愬姛鏃讹紝鎶婃鏃剁偣鐨勫喅瑁佺紪鍙峰拰鍐宠鐘舵�佸啓鍒板喅瑁佺紪鍙凤紙鍑哄簱锛夊拰鍐宠鐘舵�侊紙鍑哄簱锛変笂 if (String.isNotBlank(parentObj.Campaign__c) && parentObj.Campaign__r.IF_Approved__c){ - ra.ApprovedNo_Delivery__c = parentObj.Campaign__r.Meeting_Approved_No__r.MeetingApprovedNo__c; - ra.Approved_State_Delivery__c = parentObj.Campaign__r.Meeting_Approved_No__r.ProcessState__c; + // ra.ApprovedNo_Delivery__c = parentObj.Campaign__r.Meeting_Approved_No__r.MeetingApprovedNo__c; + // ra.Approved_State_Delivery__c = parentObj.Campaign__r.Meeting_Approved_No__r.ProcessState__c; + ra.ApprovedNo_Delivery__c = parentObj.Campaign__r.Meeting_Approved_No__c; + ra.Approved_State_Delivery__c = parentObj.Campaign__r.Approved_Status__c; } FixtureUtil.withoutUpdate(new List<Rental_Apply__c> {ra}); } @@ -2268,7 +1945,8 @@ } catch (Exception ex) { system.debug('=====' + ex.getMessage()); - ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getDmlMessage(0))); + // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, ex.getDmlMessage(0))); + ApexPages.addMessages(ex); Database.rollback(sp); // 杩愯緭鍗曟彃鍏ユ垚鍔燂紝浣嗘槑缁嗘垨鐢宠鏇存柊澶辫触鏃讹紝杩愯緭鍗曠殑鍋嘔d瑕佹竻鎺� if(insertSlip) { diff --git a/force-app/main/default/classes/RentalFixtureSetAssignAgencyCtrlTest.cls b/force-app/main/default/classes/RentalFixtureSetAssignAgencyCtrlTest.cls index 05d1af1..ea96b1d 100644 --- a/force-app/main/default/classes/RentalFixtureSetAssignAgencyCtrlTest.cls +++ b/force-app/main/default/classes/RentalFixtureSetAssignAgencyCtrlTest.cls @@ -2,6 +2,13 @@ private class RentalFixtureSetAssignAgencyCtrlTest { private static User u; static void setupTestData(Boolean hasAnother) { + // 20220316 ljh add start + // 濂ユ灄宸存柉鏃ュ巻 + OlympusCalendar__c oc = new OlympusCalendar__c(); + oc.Date__c = System.Today(); + oc.Before_1_WorkDay__c = oc.Date__c.addDays(-1); + insert oc; + // 20220316 ljh add end System.runAs(new User(Id = Userinfo.getUserId())) { StaticParameter.EscapeNFM001AgencyContractTrigger = true; StaticParameter.EscapeNFM001Trigger = true; @@ -72,9 +79,10 @@ insert dep; // 浜у搧 + // 20220317 ljh Fixture_Model_No__c鍜岄厤濂楃殑 涓讳綋澶囧搧閰嶅鏄庣粏鍨嬪彿搴旇涓�鑷� Product2 pro1 = new Product2(Name='name01',IsActive=true,Family='GI', - Fixture_Model_No__c='n01',Serial_Lot_No__c='S/N tracing', - Fixture_Model_No_T__c = 'n01', Asset_Model_No__c = 'Pro1', + Fixture_Model_No__c='modelNo1',Serial_Lot_No__c='S/N tracing', + Fixture_Model_No_T__c = 'modelNo1', Asset_Model_No__c = 'Pro1', ProductCode_Ext__c='pc01',Manual_Entry__c=false); Product2 pro2 = new Product2(Name='name02',IsActive=true,Family='GI', Fixture_Model_No__c='n02',Serial_Lot_No__c='Lot tracing', @@ -89,8 +97,8 @@ //20210524 ljh add 1829 start // 浜у搧 Product2 pro10 = new Product2(Name='name010',IsActive=true,Family='GI', - Fixture_Model_No__c='n010',Serial_Lot_No__c='S/N tracing', - Fixture_Model_No_T__c = 'n010', Asset_Model_No__c = 'Pro10', + Fixture_Model_No__c='modelNo10',Serial_Lot_No__c='S/N tracing', + Fixture_Model_No_T__c = 'modelNo10', Asset_Model_No__c = 'Pro10', ProductCode_Ext__c='pc010',Manual_Entry__c=false); Product2 pro20 = new Product2(Name='name020',IsActive=true,Family='GI', Fixture_Model_No__c='n020',Serial_Lot_No__c='Lot tracing', @@ -523,6 +531,7 @@ // 鐢宠鍗曞彉涓哄凡鎵瑰噯 raObj.Status__c = '宸叉壒鍑�'; + raObj.Request_approval_time__c = Datetime.now().addDays(-1);// 20220317 ljh add 瀹℃壒鏃堕棿 update raObj; } @@ -568,28 +577,7 @@ } - @isTest - public static void test_applyDate_error2() { - setupTestData(false); - - List<Rental_Apply__c> esList = [SELECT Id FROM Rental_Apply__c]; - - PageReference ref = new PageReference('/apex/RentalFixtureSetAssignAgency?pt_recid=' + esList[0].Id); - Test.setCurrentPage(ref); - - RentalFixtureSetAssignAgencyController controller = new RentalFixtureSetAssignAgencyController(); - Test.startTest(); - - controller.init(); - controller.applyDate(); - - List<Apexpages.message> msgs = ApexPages.getMessages(); - System.assertEquals('璇疯緭鍏澶囧搧棰勮鍑鸿揣鏃', msgs[0].getDetail()); - - Test.stopTest(); - System.debug('init Success'); - - } + @isTest public static void test_assign() { @@ -653,7 +641,7 @@ controller.init(); // 绗竴娆″垎閰� controller.esdList[0].checked = true; - controller.parentObj.Asset_loaner_start_day__c = Date.today()+1;//20210513 ljh update + controller.parentObj.Asset_loaner_start_day__c = Date.today().addDays(1);//20210513 ljh update controller.applyDate(); controller.stepName = '鍒嗛厤'; @@ -665,7 +653,7 @@ // controller.esdList[0].checked = true; // controller.stockDown();// 20210624 ljh update SFDC-C448GR - ref = new PageReference('/apex/RentalFixtureSetAssignAgency?pt_recid=' + esList[0].Id); + /*ref = new PageReference('/apex/RentalFixtureSetAssignAgency?pt_recid=' + esList[0].Id); Test.setCurrentPage(ref); controller = new RentalFixtureSetAssignAgencyController(); // 涓嬫灦鍚庨噸鏂板垎閰� @@ -674,7 +662,7 @@ controller.esdList[0].checked = true; controller.qrcode = '51110001;2;'+controller.esdList[0].rec.Rental_Apply_Equipment_Set__c; controller.scanAndMatch(); - controller.assign(); + controller.assign();*/ Test.stopTest(); @@ -766,7 +754,8 @@ } - @isTest + // 20220317 ljh 鎺у埗蹇呴』濉紝鍐欏湪鍓嶇浜嗘墍浠ヨ繖涓笉闇�瑕佷簡 + /*@isTest public static void test_cancelSet_error() { setupTestData(false); @@ -783,10 +772,9 @@ Test.stopTest(); List<Apexpages.message> msgs = ApexPages.getMessages(); - //System.assertEquals('鍙栨秷鐞嗙敱鍜屽彇娑堢悊鐢卞娉ㄤ笉鍙负绌猴紒', msgs[0].getDetail()); - //System.debug('init Error'); - - } + System.assertEquals('鍙栨秷鐞嗙敱鍜屽彇娑堢悊鐢卞娉ㄤ笉鍙负绌猴紒', msgs[0].getDetail()); + System.debug('init Error'); + }*/ @isTest public static void test_shipment() { @@ -822,12 +810,10 @@ controller.parentObj.Delivery_Agency__c = '鍖椾含甯�'; controller.shipment(); Test.stopTest(); - //System.assertEquals(true, controller.done_flg); - - //List<Apexpages.message> msgs = ApexPages.getMessages(); - //System.assertEquals('蹇呴』濉啓銆愮墿娴佸叕鍙搞��', msgs[0].getDetail()); - //System.debug('init Error'); - + System.assertEquals(true, controller.done_flg); + // 20220317 ljh add 楠岃瘉鏁版嵁浣跨敤 start + // List<Apexpages.message> msgs = ApexPages.getMessages(); + // System.assertEquals('test', msgs[0].getDetail()); } @isTest @@ -862,8 +848,8 @@ Test.stopTest(); List<Apexpages.message> msgs = ApexPages.getMessages(); - //System.assertEquals('n01鏈垎閰嶄笉鍙彂璐э紒', msgs[0].getDetail()); - System.debug('init Success'); + System.assertEquals('鍙戣揣-鍔炰簨澶勪负绌�,涓嶈兘鍙戣揣', msgs[0].getDetail()); + System.debug('init Error'); } @@ -903,9 +889,4 @@ System.debug('init Success'); } - /** - static testMethod void updaue() { - RentalFixtureSetAssignAgencyController.test();//鍏堣皟鐢ㄨ繖涓紝鐒跺悗缁х画琛ュ厖娴嬭瘯绫� - } - **/ } \ No newline at end of file diff --git a/force-app/main/default/classes/RentalFixtureSetAssignController.cls b/force-app/main/default/classes/RentalFixtureSetAssignController.cls index 85dabea..7807f61 100644 --- a/force-app/main/default/classes/RentalFixtureSetAssignController.cls +++ b/force-app/main/default/classes/RentalFixtureSetAssignController.cls @@ -290,6 +290,7 @@ // update銇犮亼浣跨敤銇欍倠 List<Rental_Apply_Equipment_Set__c> mfUpdate = new List<Rental_Apply_Equipment_Set__c>(); Savepoint sp = Database.setSavepoint(); + List<String> statusList = System.Label.StatusProcessState.split(','); try { Boolean updRAFlg = false; @@ -299,7 +300,8 @@ Asset_loaner_closed_day__c, Campaign__c, Campaign__r.IF_Approved__c, - Campaign__r.Meeting_Approved_No__c + Campaign__r.Meeting_Approved_No__c, + Campaign__r.Approved_Status__c //2022 sx obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� FROM Rental_Apply__c WHERE Id = :parentId FOR Update]; @@ -318,7 +320,11 @@ if( raUpd.Campaign__c!= null && raUpd.Campaign__r.IF_Approved__c && raUpd.Campaign__r.Meeting_Approved_No__c == null){ throw new ControllerUtil.myException('宸茬敵璇峰喅瑁佷絾鍐宠缂栫爜涓虹┖'); } - + //20220315 sx obpm obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� start + else if( raUpd.Campaign__c!= null && raUpd.Campaign__r.IF_Approved__c && raUpd.Campaign__r.Meeting_Approved_No__c != null && statusList.contains(raUpd.Campaign__r.Approved_Status__c) ){ + throw new ControllerUtil.myException('宸茬敵璇峰喅瑁佷絾鍐宠鐘舵�佷笉绗﹀悎鏉′欢'); + } + //20220315 sx obpm obpm澶囧搧鍐宠鐘舵�佺浉鍏充慨鏀� end Integer indexNum = 1; // 20210708 ljh SFDC-C47CLV add start Set<Id> raeIdset = new Set<Id>(); -- Gitblit v1.9.1