From 93ed3770e5f4a313e4cdb9239bdafc0037c68d24 Mon Sep 17 00:00:00 2001
From: 涂煌豪 <tuhuanghao@prec-tech.com>
Date: 星期一, 28 三月 2022 11:50:16 +0800
Subject: [PATCH] 共通平台新建产品咨询单,意向区分为空

---
 force-app/main/default/classes/NFM620Rest.cls |   94 ++++++++++++++++++++++++++++++-----------------
 1 files changed, 60 insertions(+), 34 deletions(-)

diff --git a/force-app/main/default/classes/NFM620Rest.cls b/force-app/main/default/classes/NFM620Rest.cls
index 0bf82a8..a044a3d 100644
--- a/force-app/main/default/classes/NFM620Rest.cls
+++ b/force-app/main/default/classes/NFM620Rest.cls
@@ -10,7 +10,10 @@
 @RestResource(urlMapping = '/NFM620/*')
 global with sharing class NFM620Rest {
     //鏂板NFM620Rest 鍟嗗搧璇㈤棶鍗曟帴鏀舵暟鎹帴鍙� 绮剧悽鎶�鏈� start
-   
+   //add to AWS 鍥炲 start sushanhu 20220225 
+   static Boolean SFStatus=true;
+   static String SFMessage='';
+  //add to AWS 鍥炲 end sushanhu 20220225 
     global class GeDatas {
         public NFMUtil.Monitoring Monitoring;
         public  GeData[] GeData;
@@ -25,7 +28,10 @@
         public String Product;                   // 浜у搧淇℃伅
         public String Request;                   // 濮旀墭浜嬮」
         public String RequestDetail;             // 濮旀墭浜嬮」璇︾粏
-        // public String ApproverID;                // 瀹℃牳浜哄憳鍛樺伐缂栫爜
+        public String ApproverID;                // 瀹℃牳浜哄憳鍛樺伐缂栫爜
+        public String ContactWayEncrypted;         //鑱旂郴鏂瑰紡瀵嗘枃 for pi
+        public String DataId;                      //AWS 鍔犲瘑鍑嵁
+        public Integer ContactType;                 //鑱旂郴鏂瑰紡 1涓洪偖绠� 2涓虹數璇�
     }
 
     @HttpPost
@@ -34,7 +40,7 @@
         // 鍙栧緱鎺ュ彛浼犺緭鍐呭
         String strData = RestContext.request.requestBody.toString();
         GeDatas ges = (GeDatas) JSON.deserializeStrict(strData, GeDatas.class);
-
+        system.debug('rquest----'+strData);
         if (ges == null ) {
             return;
         }
@@ -53,8 +59,16 @@
         RestResponse res = RestContext.response;
         res.addHeader('Content-Type', 'application/json');
         res.statusCode = 200;
-        String jsonResponse = '{"status": "Success", "Message":""}';
+        // 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;
     }
 
@@ -104,7 +118,7 @@
             List<String> inquiryNoList = new List<String>();
             List<String> conIDList = new List<String>();
             List<String> camNoList = new List<String>();
-            // List<String> approverIDList = new List<String>();
+            List<String> approverIDList = new List<String>();
             List<GeData> geDataListNew = new List<GeData>();
             for (GeData geData : geDataList) {
                 if (String.isBlank(geData.InquiryNo)) {
@@ -122,9 +136,9 @@
                 } else {
                     conIDList.add(geData.ContactId);
                 }
-                // if (String.isNotBlank(geData.ApproverID)) {
-                //     approverIDList.add(geData.ApproverID);
-                // }
+                if (String.isNotBlank(geData.ApproverID)) {
+                    approverIDList.add(geData.ApproverID);
+                }
                 if (String.isNotBlank(geData.Campaign)) {
                     camNoList.add(geData.Campaign);
                 }
@@ -134,10 +148,10 @@
             //浣跨敤缁熶竴鐢ㄦ埛ID鑾峰彇绉戝銆佹垬鐣ョ瀹ゅ垎绫汇�佺敤鎴峰鍚嶅苟瀛樺叆Map
             Map<String, Contact> conInfoMap = new Map<String, Contact>();
             if (conIDList.size() > 0) {
-                List<Contact> conList = [select UnifiedI_Contact_ID__c,Account.Id, 
-                                        Strategic_dept_Class__c, Strategic_dept_Class__r.OwnerId,Id  
-                                        from Contact where UnifiedI_Contact_ID__c in: conIDList];
-                if (conList.size() > 0){
+                List<Contact> conList = [select UnifiedI_Contact_ID__c, Account.Id,
+                                         Strategic_dept_Class__c, Strategic_dept_Class__r.OwnerId, Id
+                                         from Contact where UnifiedI_Contact_ID__c in: conIDList];
+                if (conList.size() > 0) {
                     //绉戝銆佹垬鐣ョ瀹ゅ垎绫汇�佺敤鎴峰鍚嶈幏鍙栨垚鍔�
                     for (Contact conInfo : conList) {
                         conInfoMap.put(conInfo.UnifiedI_Contact_ID__c, conInfo);
@@ -160,7 +174,7 @@
             //璇㈤棶鍗曠紪鐮佸凡缁忓瓨鍦ㄧ殑鏃跺�欒繛鍚孖D涓�璧峰瓨鍏ap
             Map<String, String> inqInfoMap = new Map<String, String>();
             if (inquiryNoList.size() > 0) {
-                List<Inquiry_form__c> inquiryList = [select Inquiry_No__c,Id from Inquiry_form__c where Inquiry_No__c in :inquiryNoList];
+                List<Inquiry_form__c> inquiryList = [select Inquiry_No__c, Id from Inquiry_form__c where Inquiry_No__c in :inquiryNoList];
                 if (inquiryList.size() > 0) {
                     for (Inquiry_form__c inqInfo : inquiryList) {
                         inqInfoMap.put(inqInfo.Inquiry_No__c, inqInfo.Id);
@@ -168,62 +182,74 @@
                 }
             }
             //浣跨敤瀹℃牳浜哄憳鍛樺伐缂栫爜鏌ヨ鐢ㄦ埛ID
-            // Map<string,String> ownerMap = new Map<string,String>();
-            // List<User> ownerList = [select Id,Employee_No__c from User where Employee_No__c  IN:approverIDList];
-            // for(User temp : ownerList){
-            //     ownerMap.put(temp.Employee_No__c,temp.Id);
-            // }
-
+            Map<string,String> ownerMap = new Map<string,String>();
+            if(approverIDList.size()>0){
+                List<User> ownerList = [select Id,Employee_No__c from User where Employee_No__c  IN:approverIDList];
+                if (ownerList.size()>0){
+                    for(User temp : ownerList){
+                        ownerMap.put(temp.Employee_No__c,temp.Id);
+                    }
+                }
+            }
             // 灏哫ML鍚勬暟鎹」鏇存柊鍒板晢鍝佽闂崟瀵硅薄涓�
             for (GeData geData : geDataListNew) {
                     
                 Inquiry_form__c inquiry = new Inquiry_form__c();
 
-                inquiry.Name = geData.Name;                                       //璇㈤棶鍗曞悕绉�
+                inquiry.ComPlat_Name__c = geData.Name;                                       //璇㈤棶鍗曞悕绉�
                 inquiry.Inquiry_No__c = geData.InquiryNo;                         //璇㈤棶鍗曠紪鐮�
-                inquiry.Opportunity_Division__c = '璇环';                         //鎰忓悜鍖哄垎
-                inquiry.Status__c = '鏈窡杩�';                                     //璇㈤棶鍗曠姸鎬�
+                // inquiry.Opportunity_Division__c = '璇环';                         //鎰忓悜鍖哄垎
+                inquiry.Status__c = '01.鏈窡杩�';                                     //璇㈤棶鍗曠姸鎬�
                 inquiry.Request_Detail__c = geData.RequestDetail;                 //濮旀墭浜嬮」璇︾粏
                 inquiry.Product1__c = geData.Product;                             //浜у搧淇℃伅
                 inquiry.ContactId__c = geData.ContactId;                          //缁熶竴鐢ㄦ埛ID
-                // inquiry.OwnerId = ownerMap.get(geData.ApproverID);                //鎵�鏈変汉
+                if (String.isNotBlank(ownerMap.get(geData.ApproverID))){
+                    inquiry.OwnerId = ownerMap.get(geData.ApproverID);            //鎵�鏈変汉
+                }          
+                inquiry.AWS_Data_Id__c =geData.DataId;                              //AWS鍔犲瘑鍑嵁 add 200220214
+                
 
                 //濮旀墭浜嬮」鍙栧�煎悗鎷嗗垎
                 List<String> requestList = geData.Request.split(';');
                 String request1 = '';
                 for (String req11 : requestList) {
-                    request1 += NFMUtil.getMapValue(transferMap,'Request1__c', req11, iflog) +';';
+                    request1 += NFMUtil.getMapValue(transferMap, 'Request1__c', req11, iflog) + ';';
                 }                                   
-                inquiry.Request1__c = request1.substring(0, request1.length()-1);    //濮旀墭浜嬮」
+                inquiry.Request1__c = request1.substring(0, request1.length() - 1);  //濮旀墭浜嬮」
                 
                 //浣跨敤缁熶竴鐢ㄦ埛ID鑾峰彇绉戝銆佹垬鐣ョ瀹ゃ�佸鎴峰鍚�
                 if (conInfoMap.containsKey(geData.ContactId)) {
                     Contact contact = conInfoMap.get(geData.ContactId);
                     inquiry.Hospital_Name__c = contact.Account.Id;                    //绉戝鍚�    
-                    inquiry.Department_Class__c = contact.Strategic_dept_Class__c;    //鎴樼暐绉戝鍒嗙被
+                    // inquiry.Department_Class__c = contact.Strategic_dept_Class__c;    //鎴樼暐绉戝鍒嗙被
                     inquiry.Contact_Name__c = contact.Id;                             //瀹㈡埛濮撳悕
-                    inquiry.OwnerId = contact.Strategic_dept_Class__r.OwnerId;        //鎵�鏈変汉
+                    // inquiry.OwnerId = contact.Strategic_dept_Class__r.OwnerId;        //鎵�鏈変汉
                 } 
                 //浣跨敤甯傚満娲诲姩缂栫爜鑾峰彇甯傚満娲诲姩ID
-                if (String.isNotBlank(geData.Campaign)){
-                    if (String.isNotBlank(camInfoMap.get(geData.Campaign))){
+                if (String.isNotBlank(geData.Campaign)) {
+                    if (String.isNotBlank(camInfoMap.get(geData.Campaign))) {
                         inquiry.Campaign__c = camInfoMap.get(geData.Campaign); //涓昏瀛︿細
-                        inquiry.LeadSource__c = '瀛︿細/娌欓緳';                    //璇㈤棶鍗曟潵婧�
-                    }else {
-                        iflog.ErrorLog__c += geData.InquiryNo +'锛氬競鍦烘椿鍔ㄧ紪鐮佷笉瀛樺湪銆俓n';
+                        inquiry.LeadSource__c = '瀛︿細浼氳';                    //璇㈤棶鍗曟潵婧�
+                    } else {
+                        iflog.ErrorLog__c += geData.InquiryNo + '锛氬競鍦烘椿鍔ㄧ紪鐮佷笉瀛樺湪銆俓n';
                         continue;                              
                     }
                 } else {
                     inquiry.LeadSource__c = '鏅烘収鍖荤枟';                 //璇㈤棶鍗曟潵婧�
                 }
-                logstr += '鍜ㄨ鍗曟潵婧�:' + inquiry.LeadSource__c +'\n';                               
+                logstr += '鍜ㄨ鍗曟潵婧�:' + inquiry.LeadSource__c + '\n';                               
                 //鑱旂郴鏂瑰紡鐨勫�兼槸鍚﹀寘鍚獲鏉ュ垽鏂槸閭杩樻槸鐢佃瘽
-                if (geData.ContactWay.contains('@')) {
+                if (geData.ContactType==1) {
                     inquiry.Phone__c = '';                            //鐢佃瘽
+                    inquiry.Phone_Encrypted__c='';                     //鐢佃瘽瀵嗘枃 add 20220214
                     inquiry.Email__c = geData.ContactWay;             //閭
+                    inquiry.Email_Encrypted__c =geData.ContactWayEncrypted; //閭瀵嗘枃 add 20220214
+
                 } else {
                     inquiry.Phone__c = geData.ContactWay;
                     inquiry.Email__c = '';
+                    inquiry.Email_Encrypted__c = ''; //閭瀵嗘枃 add 20220214
+                    inquiry.Phone_Encrypted__c=geData.ContactWayEncrypted;    //鐢佃瘽瀵嗘枃 add 20220214
                 }
 
                 if (String.isNotBlank(inqInfoMap.get(geData.InquiryNo))) {

--
Gitblit v1.9.1