From e5e7ddf81d380f7241bcafd15d81c08a25e21b7f Mon Sep 17 00:00:00 2001 From: 张宇恒 <bxyun0@163.com> Date: 星期四, 28 四月 2022 09:40:04 +0800 Subject: [PATCH] 4_27上线 --- force-app/main/default/classes/NFM603Controller.cls | 273 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 260 insertions(+), 13 deletions(-) diff --git a/force-app/main/default/classes/NFM603Controller.cls b/force-app/main/default/classes/NFM603Controller.cls index 2aa5dbe..d819d9c 100644 --- a/force-app/main/default/classes/NFM603Controller.cls +++ b/force-app/main/default/classes/NFM603Controller.cls @@ -220,6 +220,7 @@ RcSorcDate__c, SorcAcceptDate__c, SorcOgzDate__c, + RcOgzDate__c, Returns_Product_waySAP__c, DnNO__c, OgzAcceptDate__c, @@ -255,6 +256,10 @@ // 澶囧搧鍑哄�熻褰� 鏌ユ壘澶囧搧鍑哄�熶竴瑙堟槑缁嗙殑 浜у搧鍨嬪彿 Map < id, List < SparePartsLendingRecord >> rentalMap = getrentalMap(repairIdList); + String downSDt = ''; + String downEDt = ''; + String upSDt = ''; + String upEDt = ''; for (Repair__c repair: repairList) { @@ -373,13 +378,44 @@ info.OgzAcceptDate = NFMUtil.formatDateTime2Str(repair.OgzAcceptDateTime__c);//OGZ鍙楃悊鏃ワ紙灏忕▼搴忥級 //update wangweipeng 2022/02/16 end - info.SorcOgzDate = NFMUtil.formatDate2StrDateTime(repair.SorcOgzDate__c); + // info.SorcOgzDate = NFMUtil.formatDate2StrDateTime(repair.SorcOgzDate__c);RcOgzDate__c + + //update zhangyuheng 2022/03/07 + info.SorcOgzDate = NFMUtil.formatDate2StrDateTime(repair.RcOgzDate__c); info.cus_dn = repair.DnNO__c; //淇悊澧炲姞OTS杩愬崟鍙峰瓧娈� thh 20220308 start info.OTSRepairOrder = repair.OTSRepairOrder__c; //淇悊澧炲姞OTS杩愬崟鍙峰瓧娈� thh 20220308 end + + //鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鍒ゆ柇 zyh 20220315 start + downSDt = DownStartDt(); + downEDt = DownEndDt(); + upSDt = UpStartDt(); + upEDt = UpEndDt(); + //瀹氫箟涓嬬彮鏃堕棿 + if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(downSDt) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(downEDt)) { + info.FirstQuotationDate = DownDt();//鍒濇鎶ヤ环鏃� + } + if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(downSDt) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(downEDt)) { + info.RCacceptanceDate = DownDt();//4.淇悊鍝丷C鍙楃悊鏃� + } + if (String.valueOf(info.quotationDate) >= String.valueOf(downSDt) && String.valueOf(info.quotationDate) <= String.valueOf(downEDt)) { + info.quotationDate = DownDt();//鎶ヤ环鏃� + } + //瀹氫箟涓婄彮鏃堕棿 + if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(upSDt) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(upEDt)) { + info.FirstQuotationDate = UpDt();//鍒濇鎶ヤ环鏃� + } + if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(upSDt) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(upEDt)) { + info.RCacceptanceDate = UpDt();//4.淇悊鍝丷C鍙楃悊鏃� + } + if (String.valueOf(info.quotationDate) >= String.valueOf(upSDt) && String.valueOf(info.quotationDate) <= String.valueOf(upEDt)) { + info.quotationDate = UpDt();//鎶ヤ环鏃� + } + //鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鍒ゆ柇 zyh 20220315 end repairs.add(info); + System.debug('repairs1:' + repairs); } logstr += '\nend'; if (repairs.size() > 0) { @@ -459,7 +495,9 @@ logstr += ex.getMessage(); iflog.ErrorLog__c += ex.getMessage() + '\n'; iflog.ErrorLog__c += ex.getStackTraceString() + '\n'; - rowDataSFDC = NFMUtil.LogAutoSend(rowDataSFDC, ex, null); + if(!Test.isRunningTest()){ + rowDataSFDC = NFMUtil.LogAutoSend(rowDataSFDC, ex, null); + } } iflog.Log__c = logstr; upsert iflog; @@ -523,7 +561,7 @@ public static Set < Id > NFM603_Ids = new Set < Id > (); // public static Map<Id,Id> rprIdMap = new Map<Id,Id>(); - + public static void NFM603Trigger(List < Repair__c > newList, Map < Id, Repair__c > newMap, List < Repair__c > oldList, Map < Id, Repair__c > oldMap) { List < String > rprIds = new List < String > (); Map < Id, Id > rprIdMap = new Map < Id, Id > (); @@ -548,27 +586,135 @@ Repair__c oldrpr = oldMap.get(rpr.Id); // 淇悊鏈夋姤淇瓙鍗曞彿锛屽苟涓� 寰呭彂閫丄WS涓篺alse 鍙戦�佺粰AWS if (String.isNotBlank(rpr.RepairSubOrder__c) && !rpr.AwaitToSendAWS__c) { - if (((rpr.status__c == '0.鐢宠瀹屾瘯' || rpr.status__c == '1.鍙楃悊瀹屾瘯') && (oldrpr.SAP_Transfer_time__c == null && rpr.SAP_Transfer_time__c != null)) || (rpr.Address_type__c == 'X' && (rpr.Address_Type_Index__c != oldrpr.Address_Type_Index__c))) { + if (((rpr.status__c == '0.鐢宠瀹屾瘯' || rpr.status__c == '1.鍙楃悊瀹屾瘯') && (oldrpr.SAP_Transfer_time__c == null && rpr.SAP_Transfer_time__c != null)) || + (rpr.Address_type__c == 'X' && (rpr.Address_Type_Index__c != oldrpr.Address_Type_Index__c)) || + // 2022/4/6 zhangyuheng update start + (rpr.OTSRepairOrder__c != oldrpr.OTSRepairOrder__c) || // OTS璁㈠崟鍙锋湁鍊硷紝鍙戦�丄WS + // 2022/4/6 zhangyuheng update end + // 2022/4/7 zhangyuheng update start + (rpr.DeliveryLogisticsNo__c != oldrpr.DeliveryLogisticsNo__c) || // 閫佷慨鐗╂祦鍗曞彿鏈夊�硷紝鍙戦�丄WS + // ((rpr.Discount_Price_formula__c != oldrpr.Discount_Price_formula__c) && rpr.Repair_Firstestimated_Date_formula__c != null) || // 鎶ヤ环閲戦鍙戠敓鏀瑰彉涓斿垵娆℃姤浠锋棩鏈夊�硷紝鍙戦�丄WS + ((rpr.Returns_Product_waySAP__c != oldrpr.Returns_Product_waySAP__c) && rpr.Repair_Shipped_DateTime__c != null) || // 閫佷慨鏂瑰紡鍙戠敓鏀瑰彉涓斿瘎閫佹棩鏈夊�硷紝鍙戦�丄WS + // 2022/4/7 zhangyuheng update end + // 2022/4/18 zhangyuheng update start + (rpr.FSE_ApplyForRepair_time__c != oldrpr.FSE_ApplyForRepair_time__c) || // FSE鐢宠淇悊鏃ュ彂鐢熸敼鍙橈紝鍙戦�丄WS + (rpr.Repair_Ordered_DateTime__c != oldrpr.Repair_Ordered_DateTime__c) || // 4.淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鍙戠敓鏀瑰彉锛屽彂閫丄WS + (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) || // 鍒濇鎶ヤ环鏃ワ紙涓嶇敤锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + (rpr.Repair_Shipped_DateTime__c != oldrpr.Repair_Shipped_DateTime__c) || // 11.RC淇悊鍝佽繑閫佹棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + (rpr.Repair_Final_Inspection_DateTime__c != oldrpr.Repair_Final_Inspection_DateTime__c) || // 10.鏈�缁堟娴嬫棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + (rpr.Agreed_DateTime__c != oldrpr.Agreed_DateTime__c) || //7.鐢ㄦ埛鍚屾剰鏃ワ紙灏忕▼搴忥級鍙戠敓鏀瑰彉锛屽彂閫丄WS + (rpr.Agreed_Date__c != oldrpr.Agreed_Date__c) || // 7.鐢ㄦ埛鍚屾剰鏃ュ彂鐢熸敼鍙橈紝鍙戦�丄WS + (rpr.engineerSendDate__c != oldrpr.engineerSendDate__c) //淇悊鍝佸瘎閫佹棩鍙戠敓鏀瑰彉锛屽彂閫丄WS + // 2022/4/18 zhangyuheng update start + ) { if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { NFM603Controller.NFM603_Ids.add(rpr.Id); rprIdMap.put(rpr.Id, rpr.Id); } } - // 娴嬭瘯鐜娴嬭瘯鐢紝涓婄嚎鍓嶈娉ㄦ帀 - /*if (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) { + // 2022/4/19 zhangyuheng update start + // 濡傛灉鍚屾湡涓殑淇悊鎶ヤ环锛圧epair_Quotation_Id__c锛変负绌猴紝鍒ゆ柇鍒濇鎶ヤ环鏃ュ拰鎶ヤ环閲戦 + if (rpr.Repair_Quotation_Id__c != oldrpr.Repair_Quotation_Id__c) { if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { NFM603Controller.NFM603_Ids.add(rpr.Id); - // rprIds.add(rpr.Id); rprIdMap.put(rpr.Id, rpr.Id); } } - if (rpr.Repair_Shipped_Date__c != oldrpr.Repair_Shipped_Date__c) { - if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { - NFM603Controller.NFM603_Ids.add(rpr.Id); - rprIdMap.put(rpr.Id, rpr.Id); + if (rpr.Repair_Quotation_Id__c == null) { + // 濡傛灉鍒濇鎶ヤ环鏃ワ紙涓嶇敤锛夋垨鎶樻墸鍚庨噾棰濓紙涓嶇敤锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + if (rpr.Discount_Price__c != oldrpr.Discount_Price__c || rpr.Repair_Estimated_Date__c != oldrpr.Repair_Estimated_Date__c) { + if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + NFM603Controller.NFM603_Ids.add(rpr.Id); + rprIdMap.put(rpr.Id, rpr.Id); + } } - }*/ + } + // 濡傛灉鍚屾湡涓殑淇悊鎶ヤ环锛圧epair_Quotation_Id__c锛変笉涓虹┖锛屽湪RepairQuoteTrigger.ChangeRepair杩涜鍒ゆ柇瑙﹀彂 + // 2022/4/19 zhangyuheng update end + + // 2022/4/6 zhangyuheng update start + //OTS璁㈠崟鍙锋湁鍊硷紝鍙戦�丄WS + // if ((oldrpr.OTSRepairOrder__c == null && String.isNotBlank(rpr.OTSRepairOrder__c)) || rpr.OTSRepairOrder__c != oldrpr.OTSRepairOrder__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 2022/4/6 zhangyuheng update end + // 2022/4/7 zhangyuheng update start + //閫佷慨鐗╂祦鍗曞彿鏈夊�硷紝鍙戦�丄WS + // if ((oldrpr.DeliveryLogisticsNo__c == null && String.isNotBlank(rpr.DeliveryLogisticsNo__c)) || rpr.DeliveryLogisticsNo__c != oldrpr.DeliveryLogisticsNo__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + //鎶ヤ环閲戦鍙戠敓鏀瑰彉涓斿垵娆℃姤浠锋棩鏈夊�硷紝鍙戦�丄WS + // if ((rpr.Discount_Price_formula__c != oldrpr.Discount_Price_formula__c) && rpr.Repair_Firstestimated_Date_formula__c != null) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // if ((rpr.Returns_Product_waySAP__c != oldrpr.Returns_Product_waySAP__c) && rpr.Repair_Shipped_DateTime__c != null) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 2022/4/7 zhangyuheng update end + // 2022/4/18 zhangyuheng update start + // FSE鐢宠淇悊鏃ュ彂鐢熸敼鍙橈紝鍙戦�丄WS + // if (rpr.FSE_ApplyForRepair_time__c != oldrpr.FSE_ApplyForRepair_time__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 4.淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鍙戠敓鏀瑰彉锛屽彂閫丄WS + // if (rpr.Repair_Ordered_DateTime__c != oldrpr.Repair_Ordered_DateTime__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 鍒濇鎶ヤ环鏃ワ紙涓嶇敤锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + // if (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 11.RC淇悊鍝佽繑閫佹棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + // if (rpr.Repair_Shipped_DateTime__c != oldrpr.Repair_Shipped_DateTime__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 10.鏈�缁堟娴嬫棩锛堝皬绋嬪簭锛夊彂鐢熸敼鍙橈紝鍙戦�丄WS + // if (rpr.Repair_Final_Inspection_DateTime__c != oldrpr.Repair_Final_Inspection_DateTime__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // 2022/4/18 zhangyuheng update end + // 娴嬭瘯鐜娴嬭瘯鐢紝涓婄嚎鍓嶈娉ㄦ帀 + // if (rpr.Repair_Firstestimated_Date__c != oldrpr.Repair_Firstestimated_Date__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // // rprIds.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } + // if (rpr.Repair_Shipped_Date__c != oldrpr.Repair_Shipped_Date__c) { + // if (NFM603Controller.NFM603_Ids.contains(rpr.Id) == false) { + // NFM603Controller.NFM603_Ids.add(rpr.Id); + // rprIdMap.put(rpr.Id, rpr.Id); + // } + // } // 娴嬭瘯鐜娴嬭瘯鐢紝涓婄嚎鍓嶈娉ㄦ帀 } @@ -582,7 +728,7 @@ iflog.Type__c = LOG_TYPE; iflog.Log__c = 'callout start\n'; insert iflog; - NFM603Controller.callout(iflog.Id, rprIds); + NFM603Controller.executefuture(iflog, rprIds); } } else { if (Trigger.isUpdate) { @@ -596,4 +742,105 @@ } } } + + //鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鏂规硶 zyh 20220315 start + //涓嬬彮寮�濮嬫椂闂� + public static String DownStartDt(){ + String timenow = Datetime.now().format('yyyyMMddHHmmss'); + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '173001'; + } + //涓嬬彮缁撴潫鏃堕棿 + public static String DownEndDt(){ + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '235959'; + } + //涓婄彮寮�濮嬫椂闂� + public static String UpStartDt(){ + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '000000'; + } + //涓婄彮缁撴潫鏃堕棿 + public static String UpEndDt(){ + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '084459'; + } + //涓婄彮瀹氫箟鏃堕棿 + public static String UpDt(){ + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '090000'; + } + //涓嬬彮瀹氫箟鏃堕棿 + public static String DownDt(){ + String dt = NFMUtil.formatDate2Str(Date.today()); + String rtn = null; + if (dt == null) { + return rtn; + } + rtn = String.valueOf(dt); + rtn = rtn.replaceAll('-', ''); + if (rtn >= '40001231') { + rtn = '99991231'; + } else if (rtn < '19000101') { + rtn = '19000101'; + } + return rtn + '170000'; + } + //鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鏂规硶 zyh 20220315 end + } \ No newline at end of file -- Gitblit v1.9.1