From ec47f5ab5923a315bf22e0df5af7371e9668589e Mon Sep 17 00:00:00 2001
From: 张宇恒 <bxyun0@163.com>
Date: 星期五, 23 十二月 2022 11:16:18 +0800
Subject: [PATCH] 修理接口推送触发条件新加故障描述修理内容等
---
force-app/main/default/classes/NFM603Controller.cls | 203 +++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 166 insertions(+), 37 deletions(-)
diff --git a/force-app/main/default/classes/NFM603Controller.cls b/force-app/main/default/classes/NFM603Controller.cls
index d819d9c..aab4942 100644
--- a/force-app/main/default/classes/NFM603Controller.cls
+++ b/force-app/main/default/classes/NFM603Controller.cls
@@ -4,6 +4,11 @@
// private static final String API = '/admin/api/scd/save';
private static final String API = '/admin/api/repair/save';
+ // 2022-05-05 zyh update start
+ private static List < BatchIF_Log__c > logList = new List < BatchIF_Log__c > ();
+ private static List < BatchIF_Log__c > rowList = new List < BatchIF_Log__c > ();
+ private static Map < Id,BatchIF_Log__c > logMap = new Map < Id,BatchIF_Log__c > ();
+ // 2022-05-05 zyh update end
public static Integer status;
public static String message;
public class RepairOrderInfo {
@@ -129,7 +134,7 @@
public static void executefuture(BatchIF_Log__c iflog, List < String > repairOrderIdList) {
Datetime nowDT = Datetime.now();
- String nowStr = nowDT.format('yyyyMMddHHmm');
+ String nowStr = nowDT.format('yyyyMMddHHmmss');
if (iflog != null) {
iflog.ErrorLog__c = '';
} else {
@@ -140,6 +145,7 @@
iflog.MessageGroupNumber__c = nowStr;
}
List < RepairOrderInfo > repairs = new List < RepairOrderInfo > ();
+ List < RepairOrderInfo > repairs1 = new List < RepairOrderInfo > ();
BatchIF_Log__c rowData = null;
List < Repair__c > repairList = new List < Repair__c > ();
if (repairOrderIdList != null && repairOrderIdList.size() > 0) {
@@ -256,10 +262,10 @@
// 澶囧搧鍑哄�熻褰� 鏌ユ壘澶囧搧鍑哄�熶竴瑙堟槑缁嗙殑 浜у搧鍨嬪彿
Map < id, List < SparePartsLendingRecord >> rentalMap = getrentalMap(repairIdList);
- String downSDt = '';
- String downEDt = '';
- String upSDt = '';
- String upEDt = '';
+ // String downSDt = ''; 2022-5-10 zyh update
+ // String downEDt = ''; 2022-5-10 zyh update
+ // String upSDt = ''; 2022-5-10 zyh update
+ // String upEDt = ''; 2022-5-10 zyh update
for (Repair__c repair: repairList) {
@@ -389,29 +395,67 @@
//淇悊澧炲姞OTS杩愬崟鍙峰瓧娈� thh 20220308 end
//鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鍒ゆ柇 zyh 20220315 start
- downSDt = DownStartDt();
- downEDt = DownEndDt();
- upSDt = UpStartDt();
- upEDt = UpEndDt();
+ // downSDt = DownStartDt(); // 2022-5-10 zyh update 瀹氫箟涓婁笅鐝椂闂村悓姝ヤ慨鏀�
+ // downEDt = DownEndDt(); // 2022-5-10 zyh update 瀹氫箟涓婁笅鐝椂闂村悓姝ヤ慨鏀�
+ // upSDt = UpStartDt(); // 2022-5-10 zyh update 瀹氫箟涓婁笅鐝椂闂村悓姝ヤ慨鏀�
+ // upEDt = UpEndDt(); // 2022-5-10 zyh update 瀹氫箟涓婁笅鐝椂闂村悓姝ヤ慨鏀�
+ // 2022-05-07 zyh update start
+ if (String.isNotBlank(info.FirstQuotationDate)) {
+ info.FirstQuotationDate = info.FirstQuotationDate.deleteWhitespace();
+ }
+ if (String.isNotBlank(info.quotationDate)) {
+ info.quotationDate = info.quotationDate.deleteWhitespace();
+ }
+ // 2022-05-07 zyh update end
//瀹氫箟涓嬬彮鏃堕棿
- if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(downSDt) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(downEDt)) {
- info.FirstQuotationDate = DownDt();//鍒濇鎶ヤ环鏃�
+ if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(DownStartDt(info.FirstQuotationDate)) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(DownEndDt(info.FirstQuotationDate))) {
+ info.FirstQuotationDate = DownDt(info.FirstQuotationDate);//鍒濇鎶ヤ环鏃�
}
- if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(downSDt) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(downEDt)) {
- info.RCacceptanceDate = DownDt();//4.淇悊鍝丷C鍙楃悊鏃�
+ if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(DownStartDt(info.RCacceptanceDate)) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(DownEndDt(info.RCacceptanceDate))) {
+ info.RCacceptanceDate = DownDt(info.RCacceptanceDate);//4.淇悊鍝丷C鍙楃悊鏃�
}
- if (String.valueOf(info.quotationDate) >= String.valueOf(downSDt) && String.valueOf(info.quotationDate) <= String.valueOf(downEDt)) {
- info.quotationDate = DownDt();//鎶ヤ环鏃�
+ if (String.valueOf(info.quotationDate) >= String.valueOf(DownStartDt(info.quotationDate)) && String.valueOf(info.quotationDate) <= String.valueOf(DownEndDt(info.quotationDate))) {
+ info.quotationDate = DownDt(info.quotationDate);//鎶ヤ环鏃�
+ }
+ if (String.valueOf(info.FSErepairApplyDate) >= String.valueOf(DownStartDt(info.FSErepairApplyDate)) && String.valueOf(info.FSErepairApplyDate) <= String.valueOf(DownEndDt(info.FSErepairApplyDate))) {
+ info.FSErepairApplyDate = DownDt(info.FSErepairApplyDate);//FSE淇悊鐢宠鏃堕棿 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.RCreturnDate) >= String.valueOf(DownStartDt(info.RCreturnDate)) && String.valueOf(info.RCreturnDate) <= String.valueOf(DownEndDt(info.RCreturnDate))) {
+ info.RCreturnDate = DownDt(info.RCreturnDate);//RC淇悊鍝佽繑閫佹棩 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.finalTestDate) >= String.valueOf(DownStartDt(info.finalTestDate)) && String.valueOf(info.finalTestDate) <= String.valueOf(DownEndDt(info.finalTestDate))) {
+ info.finalTestDate = DownDt(info.finalTestDate);//10.鏈�缁堟娴嬫棩锛堝皬绋嬪簭锛� 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.userAgreeDAte) >= String.valueOf(DownStartDt(info.userAgreeDAte)) && String.valueOf(info.userAgreeDAte) <= String.valueOf(DownEndDt(info.userAgreeDAte))) {
+ info.userAgreeDAte = DownDt(info.userAgreeDAte);//7.鐢ㄦ埛鍚屾剰鏃ワ紙灏忕▼搴忥級 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.engineerSendDate) >= String.valueOf(DownStartDt(info.engineerSendDate)) && String.valueOf(info.engineerSendDate) <= String.valueOf(DownEndDt(info.engineerSendDate))) {
+ info.engineerSendDate = DownDt(info.engineerSendDate);//宸ョ▼甯堜慨鐞嗗搧瀵勯�佹棩 2022-05-06--zyh--add
}
//瀹氫箟涓婄彮鏃堕棿
- if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(upSDt) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(upEDt)) {
- info.FirstQuotationDate = UpDt();//鍒濇鎶ヤ环鏃�
+ if (String.valueOf(info.FirstQuotationDate) >= String.valueOf(UpStartDt(info.FirstQuotationDate)) && String.valueOf(info.FirstQuotationDate) <= String.valueOf(UpEndDt(info.FirstQuotationDate))) {
+ info.FirstQuotationDate = UpDt(info.FirstQuotationDate);//鍒濇鎶ヤ环鏃�
}
- if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(upSDt) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(upEDt)) {
- info.RCacceptanceDate = UpDt();//4.淇悊鍝丷C鍙楃悊鏃�
+ if (String.valueOf(info.RCacceptanceDate) >= String.valueOf(UpStartDt(info.RCacceptanceDate)) && String.valueOf(info.RCacceptanceDate) <= String.valueOf(UpEndDt(info.RCacceptanceDate))) {
+ info.RCacceptanceDate = UpDt(info.RCacceptanceDate);//4.淇悊鍝丷C鍙楃悊鏃�
}
- if (String.valueOf(info.quotationDate) >= String.valueOf(upSDt) && String.valueOf(info.quotationDate) <= String.valueOf(upEDt)) {
- info.quotationDate = UpDt();//鎶ヤ环鏃�
+ if (String.valueOf(info.quotationDate) >= String.valueOf(UpStartDt(info.quotationDate)) && String.valueOf(info.quotationDate) <= String.valueOf(UpEndDt(info.quotationDate))) {
+ info.quotationDate = UpDt(info.quotationDate);//鎶ヤ环鏃�
+ }
+ if (String.valueOf(info.FSErepairApplyDate) >= String.valueOf(UpStartDt(info.FSErepairApplyDate)) && String.valueOf(info.FSErepairApplyDate) <= String.valueOf(UpEndDt(info.FSErepairApplyDate))) {
+ info.FSErepairApplyDate = UpDt(info.FSErepairApplyDate);//FSE淇悊鐢宠鏃堕棿 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.RCreturnDate) >= String.valueOf(UpStartDt(info.RCreturnDate)) && String.valueOf(info.RCreturnDate) <= String.valueOf(UpEndDt(info.RCreturnDate))) {
+ info.RCreturnDate = UpDt(info.RCreturnDate);//RC淇悊鍝佽繑閫佹棩 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.finalTestDate) >= String.valueOf(UpStartDt(info.finalTestDate)) && String.valueOf(info.finalTestDate) <= String.valueOf(UpEndDt(info.finalTestDate))) {
+ info.finalTestDate = UpDt(info.finalTestDate);//10.鏈�缁堟娴嬫棩锛堝皬绋嬪簭锛� 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.userAgreeDAte) >= String.valueOf(UpStartDt(info.userAgreeDAte)) && String.valueOf(info.userAgreeDAte) <= String.valueOf(UpEndDt(info.userAgreeDAte))) {
+ info.userAgreeDAte = UpDt(info.userAgreeDAte);//7.鐢ㄦ埛鍚屾剰鏃ワ紙灏忕▼搴忥級 2022-05-06--zyh--add
+ }
+ if (String.valueOf(info.engineerSendDate) >= String.valueOf(UpStartDt(info.engineerSendDate)) && String.valueOf(info.engineerSendDate) <= String.valueOf(UpEndDt(info.engineerSendDate))) {
+ info.engineerSendDate = UpDt(info.engineerSendDate);//宸ョ▼甯堜慨鐞嗗搧瀵勯�佹棩 2022-05-06--zyh--add
}
//鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鍒ゆ柇 zyh 20220315 end
repairs.add(info);
@@ -419,8 +463,25 @@
}
logstr += '\nend';
if (repairs.size() > 0) {
- rowData = NFMUtil.makeRowData(iflog, LOG_TYPE, repairs);
- execute(rowData, iflog);
+ // 2022-05-05 zyh update start
+ for (RepairOrderInfo roi : repairs ) {
+ repairs1.add(roi);
+ rowData = NFMUtil.makeRowData(iflog, LOG_TYPE, repairs1);
+ // 2022-05-07 zyh update start
+ if (String.isBlank(rowData.MessageGroupNumber__c)) {
+ rowData.MessageGroupNumber__c = nowStr;
+ }
+ // 2022-05-07 zyh update end
+ execute1(rowData, iflog);
+ // rowData = NFMUtil.makeRowData(iflog, LOG_TYPE, repairs);
+ // execute(rowData, iflog);
+ repairs1 = new List < RepairOrderInfo > ();
+ }
+ upsert logList;
+ upsert rowList;
+ delete logMap.values();
+ // 2022-05-05 zyh update end
+ // upsert rowData;
}
} catch (Exception e) {
// 鍙戠敓閿欒鏃�
@@ -502,9 +563,65 @@
iflog.Log__c = logstr;
upsert iflog;
upsert rowDataSFDC;
+ // logList.add(iflog);
+ // rowList.add(rowDataSFDC);
+
+ }
+ // 2022-05-05 zyh update start
+ public static void execute1(BatchIF_Log__c rowDataSFDC, BatchIF_Log__c iflog) {
+ Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
+
+ String logstr = rowDataSFDC.MessageGroupNumber__c + ' start\n';
+ if (iflog == null) {
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = LOG_TYPE;
+ iflog.MessageGroupNumber__c = rowDataSFDC.MessageGroupNumber__c;
+ iflog.Log__c = logstr;
+ iflog.ErrorLog__c = '';
+
+ } else {
+ // iflog.Type__c = LOG_TYPE;
+ // iflog.MessageGroupNumber__c = rowDataSFDC.MessageGroupNumber__c;
+ // logstr = iflog.Log__c;
+ logMap.put(iflog.Id, iflog);
+ iflog = new BatchIF_Log__c();
+ iflog.Type__c = LOG_TYPE;
+ iflog.MessageGroupNumber__c = rowDataSFDC.MessageGroupNumber__c;
+ iflog.Log__c = logstr;
+ iflog.ErrorLog__c = '';
+ }
+
+ try {
+ String data = NFMUtil.getRowDataStr(rowDataSFDC);
+ String status = NFMUtil.sendToAWS(data, API);
+ System.debug('NFM603Log--status->' + status);
+
+ if ('OK'.equals(status)) {
+ logstr += status + '\n';
+ rowDataSFDC.retry_cnt__c = 0;
+ } else {
+ rowDataSFDC = NFMUtil.LogAutoSend(rowDataSFDC, null, status);
+ }
+
+ } catch (Exception ex) {
+ // TODO IOException
+ // 閿欒鍙戠敓鏃�
+ logstr += ex.getMessage();
+ iflog.ErrorLog__c += ex.getMessage() + '\n';
+ iflog.ErrorLog__c += ex.getStackTraceString() + '\n';
+ if(!Test.isRunningTest()){
+ rowDataSFDC = NFMUtil.LogAutoSend(rowDataSFDC, ex, null);
+ }
+ }
+ iflog.Log__c = logstr;
+ // upsert iflog;
+ // upsert rowDataSFDC;
+ logList.add(iflog);
+ rowList.add(rowDataSFDC);
}
+ // 2022-05-05 zyh update end
// 鏁呴殰鎻忚堪
private static Map < id, List < FaultDesc >> getFaultDescMap(List < String > repairOrderIdList) {
List < Repair_reason__c > reasonList =
@@ -728,7 +845,13 @@
iflog.Type__c = LOG_TYPE;
iflog.Log__c = 'callout start\n';
insert iflog;
- NFM603Controller.executefuture(iflog, rprIds);
+ // 2022-04-29 zyh update start
+ if(UserInfo.getUserId().equals(System.Label.interfaceUserID)){
+ NFM603Controller.executefuture(iflog, rprIds);
+ }else{
+ NFM603Controller.callout(iflog.Id, rprIds);
+ }
+ // 2022-04-29 zyh update end
}
} else {
if (Trigger.isUpdate) {
@@ -745,13 +868,14 @@
//鎶ヤ环鏃ャ�佸垵娆℃姤浠锋棩銆丷C淇悊鍝丷C鍙楃悊鏃ワ紙灏忕▼搴忥級鏃堕棿鏂规硶 zyh 20220315 start
//涓嬬彮寮�濮嬫椂闂�
- public static String DownStartDt(){
- String timenow = Datetime.now().format('yyyyMMddHHmmss');
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String DownStartDt(String dt){
+ // String timenow = Datetime.now().format('yyyyMMddHHmmss'); 2022-5-10 zyh update
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
@@ -762,12 +886,13 @@
return rtn + '173001';
}
//涓嬬彮缁撴潫鏃堕棿
- public static String DownEndDt(){
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String DownEndDt(String dt){
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
@@ -778,12 +903,13 @@
return rtn + '235959';
}
//涓婄彮寮�濮嬫椂闂�
- public static String UpStartDt(){
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String UpStartDt(String dt){
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
@@ -794,12 +920,13 @@
return rtn + '000000';
}
//涓婄彮缁撴潫鏃堕棿
- public static String UpEndDt(){
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String UpEndDt(String dt){
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
@@ -810,12 +937,13 @@
return rtn + '084459';
}
//涓婄彮瀹氫箟鏃堕棿
- public static String UpDt(){
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String UpDt(String dt){
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
@@ -826,12 +954,13 @@
return rtn + '090000';
}
//涓嬬彮瀹氫箟鏃堕棿
- public static String DownDt(){
- String dt = NFMUtil.formatDate2Str(Date.today());
+ public static String DownDt(String dt){
+ // String dt = NFMUtil.formatDate2Str(Date.today()); 2022-5-10 zyh update
String rtn = null;
if (dt == null) {
return rtn;
}
+ dt = dt.substring(0,8); // 2022-5-10 zyh update
rtn = String.valueOf(dt);
rtn = rtn.replaceAll('-', '');
if (rtn >= '40001231') {
--
Gitblit v1.9.1