From 63802d619f5a2cdce4d1d0f0b62fcec8517d1f9b Mon Sep 17 00:00:00 2001
From: 游畅 <youchang@prec-tech.com>
Date: 星期一, 11 四月 2022 10:05:42 +0800
Subject: [PATCH] 【委托】非医疗产品3C证书相关改造,接口部分

---
 force-app/main/default/classes/NFM204RestTest.cls |   69 +++++++++++++++++++++++++---------
 force-app/main/default/classes/NFM204Rest.cls     |   20 +++++++++-
 2 files changed, 68 insertions(+), 21 deletions(-)

diff --git a/force-app/main/default/classes/NFM204Rest.cls b/force-app/main/default/classes/NFM204Rest.cls
index 1043b70..60214ca 100644
--- a/force-app/main/default/classes/NFM204Rest.cls
+++ b/force-app/main/default/classes/NFM204Rest.cls
@@ -63,6 +63,12 @@
         public String ClinicalCode;    //鍨嬪彿瑙勬牸
         //2019/11/28 End
 
+        //20220329 WLIG-CCTA6G you 
+        public String CertificateNo;//3C璇佷功缂栧彿
+        public String EffectiveFrom;//3C璇佷功鏁堟湡浠�
+        public String EffectiveTo;//3C璇佷功鏁堟湡鑷�
+
+
     }
 
     @HttpPost
@@ -199,7 +205,7 @@
             Map<String, Product_Register_Link__c> prlinkMap = new Map<String, Product_Register_Link__c>();
 
             // 浜у搧
-            List<Product2> productList = [select id, ProductCode,ProduceCompany__c,ProduceCompany2__c,ProduceCompany3__c,M_BC_Stop_manufacure__c from Product2 where ProductCode = :productNoList];
+            List<Product2> productList = [select id, ProductCode,ProduceCompany__c,ProduceCompany2__c,ProduceCompany3__c,M_BC_Stop_manufacure__c,CertificateNo__c,EffectiveFrom__c,EffectiveTo__c from Product2 where ProductCode = :productNoList];
             for (Product2 product : productList) {
                 productMap.put(product.ProductCode, product);
             }
@@ -354,7 +360,18 @@
 
                     
                 }
+                // 20220329 WLIG-CCTA6G you start
+                //MaterialStatusType涓虹┖鏃讹紝浜у搧娉ㄥ唽璇佸拰浜у搧閮芥洿鏂�
+                if(String.isBlank(data.MaterialStatusType) && upd_productMap.containsKey(data.MaterialNo)){
+                   prd = upd_productMap.get(data.MaterialNo); 
+                   prd.CertificateNo__c = data.CertificateNo;
+                   prd.EffectiveFrom__c = NFMUtil.parseStr2Date(data.EffectiveFrom, false);
+                   prd.EffectiveTo__c = NFMUtil.parseStr2Date(data.EffectiveTo, false);
+                   upd_productMap.put(data.MaterialNo, prd);
+                }
+                // 20220329 WLIG-CCTA6G you end
             }
+            
             //logstr += ups_registerMap;
             system.debug('ups_registerMap--->'+ups_registerMap);
             if (upd_productMap.keySet().size() > 0) update upd_productMap.values();
@@ -550,5 +567,4 @@
         }
         return prd;
     }
-
 }
\ No newline at end of file
diff --git a/force-app/main/default/classes/NFM204RestTest.cls b/force-app/main/default/classes/NFM204RestTest.cls
index 44a4b50..1f76918 100644
--- a/force-app/main/default/classes/NFM204RestTest.cls
+++ b/force-app/main/default/classes/NFM204RestTest.cls
@@ -1,10 +1,9 @@
 @isTest
 private class NFM204RestTest {
-	
-    @isTest 
-    static void test_method_one() {
-        	
-        // product
+
+
+    @testSetup
+    static void makeTestRepair() {
         Product2 prd1 = new Product2();
         prd1.ProductCode_Ext__c     = 'Prd1';
         prd1.ProductCode            = 'Prd1';
@@ -49,8 +48,11 @@
         trans2.External_Value__c = '20';
         trans2.Internal_Value__c = '鏈夋晥';
         insert trans2;
-
-        	NFM204Rest.GeDatas GeDatas = new NFM204Rest.GeDatas();
+    }
+	
+    @isTest 
+    static void test_method_one() {
+        NFM204Rest.GeDatas GeDatas = new NFM204Rest.GeDatas();
         NFM204Rest.GeData GeData = new NFM204Rest.GeData();
         GeDatas.GeData = new NFM204Rest.GeData[]{GeData};
 
@@ -113,18 +115,18 @@
         
         RestRequest req = new RestRequest();
         RestResponse res = new RestResponse();
-        Product2 prd1 = new Product2();
-        prd1.ProductCode_Ext__c     = 'Prd1';
-        prd1.ProductCode            = 'Prd1';
-        prd1.Repair_Product_Code__c = 'Prd1_RP';
-        prd1.Name                   = 'Prd1';
-        prd1.Manual_Entry__c        = false;
-        prd1.Category2__c = '鏈綋';
-        prd1.Category3__c = '绾ょ淮闀�';
-        prd1.Category4__c = 'CV';
-        prd1.Category5__c = '260SL绯诲垪';
-        prd1.Asset_Model_No__c = '1001';
-        insert prd1;
+        // Product2 prd1 = new Product2();
+        // prd1.ProductCode_Ext__c     = 'Prd1';
+        // prd1.ProductCode            = 'Prd1';
+        // prd1.Repair_Product_Code__c = 'Prd1_RP';
+        // prd1.Name                   = 'Prd1';
+        // prd1.Manual_Entry__c        = false;
+        // prd1.Category2__c = '鏈綋';
+        // prd1.Category3__c = '绾ょ淮闀�';
+        // prd1.Category4__c = 'CV';
+        // prd1.Category5__c = '260SL绯诲垪';
+        // prd1.Asset_Model_No__c = '1001';
+        // insert prd1;
         String JsonMsg = '{"Monitoring":{"TransmissionDateTime":"201812201320","Text":"","Tag":"MSGH","Sender":"SFDC","Receiver":"SPO","NumberOfRecord":"1","MessageType":"NFM204","MessageGroupNumber":"20180001722190"},"GeData":[{"Z3PLAuthorizedNo":"","Z3PLAuthorized":"","YXQX":"1骞�","ValidTo":null,"ValidFrom":null,"Unit":null,"TransCondition":null,"StroageCondition":null,"RegisterNoStatus":"50","RegisterNoClass_Old":"","RegisterNoClass_New":"","RegisterNo":"FYL","ProductName":"SSC6024 : Sof-Curl 杈撳翱绠℃敮鏋剁 6Fr.X 24cm","PrdValidTo":null,"PrdValidFrom":null,"PrdCompanyLicense":"","PrdCompanyAddr":"","Other3":null,"Other2":null,"Other1":null,"Model":"SSC6024 ","MedPrdClass":"","MaterialStatusType":null,"MaterialStatus":"10","MaterialNo":"SSC6024","MaterialGroup":null,"BusinessScope":"","AuthorizedCompany_SH":"","AuthorizedCompany":"","ApprovedDate_SH":null,"ApprovedDate":null}]}';
         req.requestURI = 'services/apexrest/NFM204/execute';
         req.httpMethod = 'POST';
@@ -136,5 +138,34 @@
 
         Test.stopTest();
     }
+
+    @isTest static void test_method_three() {
+        Test.startTest();
+        
+        RestRequest req = new RestRequest();
+        RestResponse res = new RestResponse();
+        // Product2 prd1 = new Product2();
+        // prd1.ProductCode_Ext__c     = 'Prd1';
+        // prd1.ProductCode            = 'Prd1';
+        // prd1.Repair_Product_Code__c = 'Prd1_RP';
+        // prd1.Name                   = 'Prd1';
+        // prd1.Manual_Entry__c        = false;
+        // prd1.Category2__c = '鏈綋';
+        // prd1.Category3__c = '绾ょ淮闀�';
+        // prd1.Category4__c = 'CV';
+        // prd1.Category5__c = '260SL绯诲垪';
+        // prd1.Asset_Model_No__c = '1001';
+        // insert prd1;
+        String JsonMsg = '{"Monitoring":{"TransmissionDateTime":"201812201320","Text":"","Tag":"MSGH","Sender":"SFDC","Receiver":"SPO","NumberOfRecord":"1","MessageType":"NFM204","MessageGroupNumber":"20180001722190"},"GeData":[{"Z3PLAuthorizedNo":null,"Z3PLAuthorized":null,"YXQX":null,"ValidTo":null,"ValidFrom":null,"Unit":null,"TransCondition":null,"STRU_COM":null,"StroageCondition":null,"RegisterNoStatus":null,"RegisterNoClass_Old":null,"RegisterNoClass_New":null,"RegisterNo":null,"REG_Name":null,"REG_ADD":null,"ProductName":"70138002 : 骞虫粦鍒�澶�","PROD_ADD":null,"PreDiscontinuedDatetime":"20240522","PrdValidTo":null,"PrdValidFrom":null,"PrdCompanyLicense":null,"PrdCompanyAddr":null,"Other3":null,"Other2":null,"Other1":null,"Model":"70138002","MedPrdClass":null,"MaterialStatusType":"1","MaterialStatus":"30","MaterialNo":"Prd1","MaterialGroup":null,"IsPrediscontinued":"1","ClinicalCode":"","BusinessScope":null,"AuthorizedCompany_SH":null,"AuthorizedCompany":null,"ApprovedDate_SH":null,"ApprovedDate":null,"APP_RSLT_SH":null,"APP_RSLT_OSH":null,"APP_RSLT_GZ":null,"APP_RSLT_BJ":null,"APP_NAME_SH":null,"APP_NAME_OSH":null,"APP_NAME_GZ":null,"APP_NAME_BJ":null,"APP_DATE_SH":null,"APP_DATE_OSH":null,"APP_DATE_GZ":null,"APP_DATE_BJ":null,"ADOPT_RANGE":null}]}';
+        req.requestURI = 'services/apexrest/NFM204/execute';
+        req.httpMethod = 'POST';
+        req.requestBody = Blob.valueof(JsonMsg);
+        RestContext.request = req;
+        RestContext.response= res;
+
+        NFM204Rest.execute();
+
+        Test.stopTest();
+    }
 	
 }
\ No newline at end of file

--
Gitblit v1.9.1