From b4b8a2df1f478030bb321b6ac558f13fbbffbb07 Mon Sep 17 00:00:00 2001 From: 张宇恒 <bxyun0@163.com> Date: 星期五, 23 十二月 2022 11:22:36 +0800 Subject: [PATCH] 修理接口新增触发条件 --- force-app/main/default/classes/RepairHandler.cls | 48 +++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 45 insertions(+), 3 deletions(-) diff --git a/force-app/main/default/classes/RepairHandler.cls b/force-app/main/default/classes/RepairHandler.cls index db18525..fbdcb1e 100644 --- a/force-app/main/default/classes/RepairHandler.cls +++ b/force-app/main/default/classes/RepairHandler.cls @@ -98,9 +98,35 @@ // 鍖呭惈鎶ヤ慨瀛愬崟鐨勪慨鐞� 淇悊鍗曠姸鎬佺紪鍙峰彉鏇村彂閫丄WS Start if (Trigger.isUpdate) { Repair__c oldrpr = oldMap.get(nObj.Id); - if (String.isNotBlank(nObj.RepairSubOrder__c) && nObj.RepairOrderStatusCode__c != oldrpr.RepairOrderStatusCode__c) { - nObj.AwaitToSendAWS__c = true; - } + // 2022/04/20 zhangyuheng update start + if ((nObj.OTSRepairOrder__c == oldrpr.OTSRepairOrder__c) && // OTS璁㈠崟鍙峰彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS + (nObj.DeliveryLogisticsNo__c == oldrpr.DeliveryLogisticsNo__c) && // 閫佷慨鐗╂祦鍗曞彿鍙戠敓鏀瑰彉锛屽嵆鏃跺彂閫丄WS + (nObj.Returns_Product_waySAP__c == oldrpr.Returns_Product_waySAP__c) && // 閫佷慨鏂瑰紡鍙戠敓鏀瑰彉涓斿瘎閫佹棩鏈夊�硷紝鍗虫椂鍙戦�丄WS + (nObj.FSE_ApplyForRepair_time__c == oldrpr.FSE_ApplyForRepair_time__c) && // FSE鐢宠淇悊鏃ュ彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS + (nObj.Repair_Ordered_DateTime__c == oldrpr.Repair_Ordered_DateTime__c) && // 4.淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鍙戠敓鏀瑰彉锛屽嵆鏃跺彂閫丄WS + // (nObj.Repair_Firstestimated_Date__c == oldrpr.Repair_Firstestimated_Date__c) && // 鍒濇鎶ヤ环鏃ワ紙涓嶇敤锛夊彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS 2022-05-20 zyh 娉ㄩ噴 + (nObj.Repair_Estimated_Date__c == oldrpr.Repair_Estimated_Date__c) && // 鎶ヤ环鏃ワ紙涓嶇敤锛�--鐢ㄤ簬鍒濇鎶ヤ环鏃ュ彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS 2022-05-20 zyh add + (nObj.Repair_Shipped_DateTime__c == oldrpr.Repair_Shipped_DateTime__c) && // 11.RC淇悊鍝佽繑閫佹棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS + (nObj.Repair_Final_Inspection_DateTime__c == oldrpr.Repair_Final_Inspection_DateTime__c) && // 10.鏈�缁堟娴嬫棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS + (nObj.Agreed_DateTime__c == oldrpr.Agreed_DateTime__c) && //7.鐢ㄦ埛鍚屾剰鏃ワ紙灏忕▼搴忥級鍙戠敓鏀瑰彉锛屽嵆鏃跺彂閫丄WS + (nObj.Agreed_Date__c == oldrpr.Agreed_Date__c) && // 7.鐢ㄦ埛鍚屾剰鏃ュ彂鐢熸敼鍙橈紝鍗虫椂鍙戦�丄WS + (nObj.Repair_Quotation_Id__c == oldrpr.Repair_Quotation_Id__c) && // 鍚屾湡涓殑淇悊鎶ヤ环鍙戠敓鏀瑰彉锛屽嵆鏃跺彂閫丄WS 2022-05-20 zyh add + (nObj.engineerSendDate__c == oldrpr.engineerSendDate__c) + &&(nObj.SAP_not_accept_repair_result__c == oldrpr.SAP_not_accept_repair_result__c) + // 2022-12-22 zyh add start + && (nObj.DescriptionName__c == oldrpr.DescriptionName__c) + && (nObj.InspectionResultFlag__c == oldrpr.InspectionResultFlag__c) + && (nObj.RepairReasonTrigger__c == oldrpr.RepairReasonTrigger__c) + // 2022-12-22 zyh add end + ) { + // 2022/04/20 zhangyuheng update end + if (String.isNotBlank(nObj.RepairSubOrder__c) && nObj.RepairOrderStatusCode__c != oldrpr.RepairOrderStatusCode__c) { + nObj.AwaitToSendAWS__c = true; + } + // 2022/04/20 zhangyuheng update start + } + // 2022/04/20 zhangyuheng update end + } // 鍖呭惈鎶ヤ慨瀛愬崟鐨勪慨鐞� 淇悊鍗曠姸鎬佺紪鍙峰彉鏇村彂閫丄WS End @@ -152,6 +178,17 @@ // {Asset.Id: [Repair.Id]} Map<Id, List<Id>> assetsMap = new Map<Id, List<Id>>(); List<RepairSubOrder__c> updateRepairSubOrderList = new List<RepairSubOrder__c>(); + //鍏堣幏鍙栧瓙鍗昻obj 鐨刬d 鏀惧湪list 鏌ヨ + List<Id> repairSub = new List<Id>(); + Map<Id, String> repStatus = new Map<Id,String>(); + for (Repair__c nObj :newList ) { + repairSub.add(nObj.RepairSubOrder__c); + } + for (RepairSubOrder__c rep : [ SELECT Id,Status__c FROM RepairSubOrder__c + WHERE Id IN:repairSub]) { + repStatus.put(rep.Id,rep.Status__c); + } + for (Repair__c nObj : newList) { Repair__c oObj; if (Trigger.isUpdate) { @@ -165,8 +202,13 @@ assetsMap.get(nObj.Delivered_Product__c).add(nObj.Id); } + //鍒ゆ柇鐘舵�� nobj.addError if (Trigger.isInsert) { if (String.isNotBlank(nObj.RepairSubOrder__c)) { + if(repStatus.get(nObj.RepairSubOrder__c)!='寰呭鐞�' ){ + nObj.addError('鐘舵�佷笉鏄緟澶勭悊锛屾棤娉曠敵璇蜂慨鐞�'); + return; + } RepairSubOrder__c repairSubOrder = new RepairSubOrder__c(); repairSubOrder.Id = nObj.RepairSubOrder__c; repairSubOrder.Status__c = '宸茶浆淇悊'; -- Gitblit v1.9.1