From d9f996d01b56c8ecf76116316da7686621f4f91f Mon Sep 17 00:00:00 2001
From: 张宇恒 <bxyun0@163.com>
Date: 星期三, 06 四月 2022 18:02:06 +0800
Subject: [PATCH] NFM612Rest

---
 force-app/main/default/classes/NFM612Rest.cls |   67 ++++++++++++++++++++++++++-------
 1 files changed, 53 insertions(+), 14 deletions(-)

diff --git a/force-app/main/default/classes/NFM612Rest.cls b/force-app/main/default/classes/NFM612Rest.cls
index 4690f58..d0895df 100644
--- a/force-app/main/default/classes/NFM612Rest.cls
+++ b/force-app/main/default/classes/NFM612Rest.cls
@@ -1,5 +1,9 @@
 @RestResource(urlMapping = '/NFM612/*')
 global with sharing class NFM612Rest {
+    //add to AWS 鍥炲 start sushanhu 20220225 
+    static Boolean SFStatus=true;
+    static String SFMessage='';
+   //add to AWS 鍥炲 end sushanhu 20220225 
     public static final String LOG_TYPE = 'NFM612';
     global class GeData {
         public RepairOderInfo repairOderInfo;
@@ -14,7 +18,10 @@
         public String departmentCd; //鎶ヤ慨绉戝缂栫爜
         public String repairApplyPerson; //鎶ヤ慨浜虹敤鎴风紪鐮�
         public String repairApplicantName; //鎶ヤ慨浜哄鍚�
+        public String repairApplicantNameEncrypted; //鎶ヤ慨浜哄鍚嶅瘑鏂� add20220214
         public String repairApplyPersonTel; //鎶ヤ慨浜鸿仈绯讳汉鐢佃瘽
+        public String repairApplyPersonTelEncrypted;//淇濅慨浜鸿仈绯荤數璇� 瀵嗘枃 add 20220214
+        public String DataId;//aws 瀛樺偍鍑瘉 add 20220214 
         public String repairApplyType; // 鎶ヤ慨浜哄矖浣�
         public String equipmentCategory; //璁惧澶х被
         public String assetType; //璁惧绫诲瀷
@@ -47,6 +54,11 @@
         public String applicantId; //鐢宠淇悊浜虹紪鍙�
         public String applyDate; //鐢宠鏃堕棿
         public String repairOrderNo2FSEID; //鎶ヤ慨瀛愬崟鎵�灞濬SE鐨処D
+        //  2022/4/6    zhangyuheng update start
+        public String RepairFinishDate; //淇悊鍝佸鐞嗗畬鎴愭棩
+        public String ApplicanterPhone; //澶勭悊浜虹數璇�
+        public String CancelDate;   //鍙楃悊浜哄彇娑堟姤淇棩
+        //  2022/4/6    zhangyuheng update end
 
         // 涓婄嚎鍓� 鎶ヤ慨瀛愬崟涓庝慨鐞嗕笂鐨勭浉鍏冲瓧娈甸兘鍒犻櫎
         public String responseResultsFirst; //涓婇棬搴斿缁撴灉(鏆傛椂娉ㄦ帀)
@@ -88,8 +100,16 @@
         res.addHeader('Content-Type', 'application/json');
         res.statusCode = 200;
         //String jsonResponse = '{"status": "Success", "Message":'  + gedata + '}';
-        String jsonResponse = '{"status": "Success", "Message":"鎴愬姛"}';
-        res.responseBody = Blob.valueOf(jsonResponse);
+        // String jsonResponse = '{"status": "Success", "Message":"鎴愬姛"}';
+        // res.responseBody = Blob.valueOf(jsonResponse);
+         //updata response toAWS 20220225 sushanhu start
+         NFMUtil.NFMResponse result = NFMUtil.getNFMResponse();
+         result.SFStatus=SFStatus;
+         result.SFMessage=SFMessage;
+         String jsonResponse =JSON.serialize(result);
+         system.debug('result---'+jsonResponse);
+         res.responseBody = blob.valueOf(jsonResponse);
+         //updata response toAWS 20220225 sushanhu end
         return;
     }
     @future(callout = true)
@@ -116,6 +136,7 @@
             List < String > managementCodeList = new List < String > (); //瀛樻斁绉戝缂栫爜
             List < String > rpersonList = new List < String > (); //瀛樻斁鎶ヤ慨浜虹敤鎴风紪鐮�
             List < String > canIdList = new List < String > (); //瀛樻斁鍙栨秷浜虹敤鎴风紪鍙�
+            List < String > repairNoList = new List < String > ();  //瀛樻斁鎶ヤ慨瀛愬崟鍙� 
             for (GeData ged: itemMasterList) {
                 String dataComplete = verify(ged);
                 if (!String.isBlank(dataComplete)) {
@@ -211,16 +232,18 @@
                     repair.StartTimeFirst__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.startTimeFirst); //寮�濮嬫椂闂�
                     repair.EndTimeFirst__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.endTimeThird); //缁撴潫鏃堕棿
                     repair.FaultDescriptionFirst__c = ged.repairOderInfo.faultDescriptionFirst; //鏁呴殰鎻忚堪
-                    repair.ActualVisitTimeSecond__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.actualVisitTimeSecond); //浜屾涓婇棬鏃�
-                    repair.StartTimeSecond__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.startTimeSecond); //浜屾涓婇棬寮�濮嬫椂闂�
+                    repair.ActualVisitTimeSecond__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.actualVisitTimeSecond); //浜屾涓婇棬鏃�--->浜屾璁″垝涓婇棬鏃�
+                    repair.StartTimeSecond__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.startTimeSecond); //浜屾涓婇棬寮�濮嬫椂闂�--->浜屾涓婇棬鏃�
                     repair.EndTimeSecond__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.endTimeSecond); //浜屾涓婇棬缁撴潫鏃堕棿
                     repair.FaultDescriptionSecond__c = ged.repairOderInfo.faultDescriptionSecond; //浜屾鏁呴殰鎻忚堪
-                    repair.ActualVisitTimeThird__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.actualVisitTimeThird); //涓夋涓婇棬鏃�
-                    repair.StartTimeThird__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.startTimeThird); //涓夋涓婇棬寮�濮嬫椂闂�
+                    repair.ActualVisitTimeThird__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.actualVisitTimeThird); //涓夋涓婇棬鏃�--->涓夋璁″垝涓婇棬鏃�
+                    repair.StartTimeThird__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.startTimeThird); //涓夋涓婇棬寮�濮嬫椂闂�--->涓夋涓婇棬鏃�
                     repair.EndTimeThird__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.endTimeThird); //涓夋涓婇棬缁撴潫鏃堕棿
                     repair.FaultDescriptionThird__c = ged.repairOderInfo.faultDescriptionThird; //涓夋鏁呴殰鎻忚堪
                     repair.ApplicantType__c = ged.repairOderInfo.applicantType; //鐢宠淇悊浜虹被鍨�
-
+                    repair.RepairApplicantName_Encrypted__c =ged.repairOderInfo.repairApplicantNameEncrypted; //鎶ヤ慨浜哄鍚嶅瘑鏂� add 20220214
+                    repair.RepairApplicantTel_Encrypted__c = ged.repairOderInfo.repairApplyPersonTelEncrypted;//淇濅慨浜鸿仈绯荤數璇濆瘑鏂� add 20220214
+                    repair.AWS_Data_Id__c =ged.repairOderInfo.DataId;//AWS 瀛樺偍鍑瘉 add 20220214
                     // repair.Applicant__c = canidMap.get(ged.repairOderInfo.applicantId).Id; //鐢宠淇悊浜虹紪鍙�
                     repair.Applicanter__c = personMap.get(ged.repairOderInfo.applicantId);//鐢宠淇悊浜虹紪鍙�
                     repair.ApplicationTime__c = NFMUtil.parseStr2DateTime(ged.repairOderInfo.applyDate); //鐢宠鏃堕棿
@@ -228,10 +251,18 @@
                     repair.Ownerid = canidMap.get(ged.repairOderInfo.repairOrderNo2FSEID).Id; //鎶ヤ慨瀛愬崟鎵�灞濬SE鐨処D
                     repair.AssetModel__c = ged.applyRepairInfo.equipmentModel; //璁惧鍨嬪彿
                     repair.AirframeCodeEngineer__c = ged.applyRepairInfo.equipmentCd; //鏈鸿韩缂栫爜(宸ョ▼甯�)
-                    repair.ResponseResultDesc__c = ged.applyRepairInfo.responseResultDesc; //搴斿鎻忚堪
+                    repair.ResponseResultDesc__c = ged.applyRepairInfo.responseResultDesc; //搴斿鎻忚堪--->闂鎻忚堪锛堝伐绋嬪笀锛�
                     repair.ProcessResult__c = ged.applyRepairInfo.processResult; //澶勭悊缁撴灉
+
+                    //  2022/4/6    zhangyuheng update start
+                    repair.RepairFinishDate__c = NFMUtil.parseStr2Date(ged.repairOderInfo.RepairFinishDate) ;   //淇悊鍝佸鐞嗗畬鎴愭棩
+                    repair.ApplicanterPhone__c = ged.repairOderInfo.ApplicanterPhone;   //澶勭悊浜虹數璇�
+                    repair.CancelleRepairTime__c = NFMUtil.parseStr2Date(ged.repairOderInfo.CancelDate);    //鍙楃悊浜哄彇娑堟姤淇棩
+                    //  2022/4/6    zhangyuheng update end
+
                     if ('闂宸茶В鍐�'.equals(ged.applyRepairInfo.processResult)) {
-                        repair.Status__c = '鍏抽棴';
+                        // repair.Status__c = '鍏抽棴';
+                        repair.Status__c = '宸插畬鎴�';   // 2022/4/6 zhangyuheng
                     } else {
                         repair.Status__c = '寰呭鐞�';
 
@@ -251,10 +282,16 @@
                     repair.AttachmentName__c = attachmentName;
                     repairOrderNo2Str += repairOrderNo2 + '\n';
                     repairList.add(repair);
+                    repairNoList.add(ged.repairOderInfo.repairOrderNo2);
                 }
-
-                if (repairList.size() > 0) {
-
+                //  2022/4/6    zhangyuheng update start
+                List<RepairSubOrder__c> repairList1 = [SELECT Id FROM RepairSubOrder__c WHERE RepairSubOrderNo__c in: repairNoList];
+                if (repairList1.size() > 0) {
+                    logstr += repairOrderNo2Str + ']-宸插瓨鍦�';
+                }
+                // if (repairList.size() > 0) {==== 2022/4/6 zhangyuheng娉ㄩ噴鎺�
+                else {
+                //  2022/4/6    zhangyuheng update end
                     insert repairList;
                     repairOrderNo2Str += ' ]\n';
                     logstr += repairOrderNo2Str + '鏂板瀹屾垚, 鏂板鎬绘暟鏁颁负锛�' + repairList.size() + '\n';
@@ -272,7 +309,9 @@
             Database.rollback(sp);
             logstr += '\n' + ex.getMessage();
             iflog.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + iflog.ErrorLog__c;
-            rowData = NFMUtil.LogAutoSend(rowData, ex, null);
+            if (!Test.isRunningTest()) {
+                rowData = NFMUtil.LogAutoSend(rowData, ex, null);
+            }
         }
         update rowData;
         iflog.Log__c = logstr;
@@ -308,7 +347,7 @@
                         SELECT id, CManageCode__c,Employee_No_manual__c 
                         FROM Contact 
                         WHERE CManageCode__c IN: rpersonList OR Employee_No_manual__c IN:rpersonList];
-        Map < String, Id > contactMap = new Map < String, Id > ();
+        Map < String, Id > contactMap = new Map < String, Id > ();        
         for (Contact con: couList) {
             contactMap.put(con.CManageCode__c, con.Id);
             if (String.isNotBlank(con.Employee_No_manual__c)) {

--
Gitblit v1.9.1