From 1b3fb93f787b8b546a307bf063183f5295d183f8 Mon Sep 17 00:00:00 2001
From: binxie <137736985@qq.com>
Date: 星期一, 26 六月 2023 16:53:25 +0800
Subject: [PATCH] merge

---
 force-app/main/default/classes/CPL003Rest.cls |   95 +++++++++++++++++++++++++++++++----------------
 1 files changed, 62 insertions(+), 33 deletions(-)

diff --git a/force-app/main/default/classes/CPL003Rest.cls b/force-app/main/default/classes/CPL003Rest.cls
index 6355680..22dc62f 100644
--- a/force-app/main/default/classes/CPL003Rest.cls
+++ b/force-app/main/default/classes/CPL003Rest.cls
@@ -1,28 +1,27 @@
 @RestResource(urlMapping='/CPL003/*')
 global with sharing class CPL003Rest {
-	
     global class GeDatas {
-        webservice NFMUtil.Monitoring Monitoring;
-        webservice CPL003Rest.GeData[] Inventory;
+        webService NFMUtil.Monitoring Monitoring;
+        webService CPL003Rest.GeData[] Inventory;
     }
 
     global class GeData {
-        webservice String MaterialNumber; //浜у搧缂栫爜(浜у搧浠g爜)
-        webservice String ItemQuantity;   //OpenPO鍜屽簱瀛樼殑鎬绘暟閲�
+        webService String MaterialNumber; //浜у搧缂栫爜(浜у搧浠g爜)
+        webService String ItemQuantity; //OpenPO鍜屽簱瀛樼殑鎬绘暟閲�
 
-        webservice String Area;    //鍖哄煙(寰呭畾)
+        webService String Area; //鍖哄煙(寰呭畾)
         //webservice String other1;
         //webservice String other2;
         //webservice String other3;
     }
 
-	@HttpPost
+    @HttpPost
     global static void execute() {
-    	// 鍙栧緱鎺ュ彛浼犺緭鍐呭
+        // 鍙栧緱鎺ュ彛浼犺緭鍐呭
         String strData = RestContext.request.requestBody.toString();
         GeDatas ges = (GeDatas) JSON.deserializeStrict(strData, GeDatas.class);
 
-        if (ges == null ) {
+        if (ges == null) {
             return;
         }
 
@@ -46,7 +45,6 @@
         return;
     }
 
-
     @future
     global static void executefuture(String rowData_Id) {
         main(rowData_Id);
@@ -54,8 +52,29 @@
 
     global static void main(String rowData_Id) {
         Integer batch_retry_max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
-        BatchIF_Log__c rowData = [Select Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c, Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,retry_cnt__c from BatchIF_Log__c where RowDataFlg__c = true and Id = :rowData_Id];
-        MDMITMWebService.isRunning = true;
+        BatchIF_Log__c rowData = [
+            SELECT
+                Id,
+                Name,
+                Log__c,
+                ErrorLog__c,
+                Log2__c,
+                Log3__c,
+                Log4__c,
+                Log5__c,
+                Log6__c,
+                Log7__c,
+                Log8__c,
+                Log9__c,
+                Log10__c,
+                Log11__c,
+                Log12__c,
+                MessageGroupNumber__c,
+                retry_cnt__c
+            FROM BatchIF_Log__c
+            WHERE RowDataFlg__c = TRUE AND Id = :rowData_Id
+        ];
+        //MDMITMWebService.isRunning = true; //Commented By Li Jun 20230428
         String logstr = rowData.MessageGroupNumber__c + ' start\n';
         BatchIF_Log__c iflog = new BatchIF_Log__c();
         iflog.Type__c = 'CPL003';
@@ -67,36 +86,39 @@
         String rowDataStr = NFMUtil.getRowDataStr(rowData);
         //rowDataStr = XMLTools.xml2json(rowDataStr);
         List<GeData> itemMasterList = (List<GeData>) JSON.deserialize(rowDataStr, List<GeData>.class);
-        
+
         if (itemMasterList == null || itemMasterList.size() == 0) {
             return;
-        }   
+        }
 
         Savepoint sp = Database.setSavepoint();
 
-        try{
+        try {
             List<String> materialNumberList = new List<String>();
 
             for (GeData GeData : itemMasterList) {
-                if (String.isBlank(GeData.MaterialNumber))  continue;
-                if (String.isBlank(GeData.ItemQuantity))  continue;
+                if (String.isBlank(GeData.MaterialNumber))
+                    continue;
+                if (String.isBlank(GeData.ItemQuantity))
+                    continue;
                 materialNumberList.add(GeData.MaterialNumber);
             }
 
-            List<Product2> product2List = [select Id, ProductCode, StorageStatusNo__c 
-                                             from Product2
-                                            where ProductCode in :materialNumberList ];
-            
-            Map<String,Product2> product2Map = new Map<String,Product2>();
+            List<Product2> product2List = [
+                SELECT Id, ProductCode, StorageStatusNo__c
+                FROM Product2
+                WHERE ProductCode IN :materialNumberList
+            ];
+
+            Map<String, Product2> product2Map = new Map<String, Product2>();
             for (Product2 product2 : product2List) {
                 product2Map.put(product2.ProductCode, product2);
             }
 
             List<Product2> upsertProList = new List<Product2>();
-            Map<String,Product2> prdUpdateMap = new Map<String, Product2>();
+            Map<String, Product2> prdUpdateMap = new Map<String, Product2>();
 
             for (GeData GeData : itemMasterList) {
-                
                 if (String.isBlank(GeData.MaterialNumber)) {
                     iflog.ErrorLog__c += 'MaterialNumber is required.\n';
                     continue;
@@ -106,29 +128,36 @@
                     Product2 product = product2Map.get(GeData.MaterialNumber);
                     product.StorageStatusNo__c = Double.valueOf(GeData.ItemQuantity);
                     upsertProList.add(product);
-
                 } else {
                     iflog.ErrorLog__c += 'This MaterialNumber [ ' + GeData.MaterialNumber + ' ] is not Exist.\n';
                     continue;
                 }
             }
 
-            if(upsertProList.size() > 0)    upsert upsertProList;
+            if (upsertProList.size() > 0)
+                upsert upsertProList;
 
             logstr += '\nend';
-            rowData.retry_cnt__c=0;
-        } catch(Exception ex) {
+            rowData.retry_cnt__c = 0;
+        } catch (Exception ex) {
             // 銈ㄣ儵銉笺亴鐧虹敓銇椼仧鍫村悎
             Database.rollback(sp);
             logstr += '\n' + ex.getMessage();
             iflog.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + iflog.ErrorLog__c;
-            if (rowData.retry_cnt__c == null) rowData.retry_cnt__c = 0;
-            if (rowData.retry_cnt__c < batch_retry_max_cnt){
+            if (rowData.retry_cnt__c == null)
+                rowData.retry_cnt__c = 0;
+            if (rowData.retry_cnt__c < batch_retry_max_cnt) {
                 rowData.retry_cnt__c++;
                 LogAutoSendSchedule.assignOneMinute();
             }
-            if (rowData.retry_cnt__c >= batch_retry_max_cnt){
-                rowData.ErrorLog__c = ex.getMessage() + '\n' + ex.getStackTraceString() + '\n' + rowData.ErrorLog__c+'閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
+            if (rowData.retry_cnt__c >= batch_retry_max_cnt) {
+                rowData.ErrorLog__c =
+                    ex.getMessage() +
+                    '\n' +
+                    ex.getStackTraceString() +
+                    '\n' +
+                    rowData.ErrorLog__c +
+                    '閿欒娆℃暟宸茬粡瓒呰繃鑷姩鏀朵俊璁惧畾鐨勬渶澶ф鏁帮紝璇锋墜鍔ㄦ敹淇�';
             }
         }
 
@@ -142,4 +171,4 @@
         }
         update iflog;
     }
-}
\ No newline at end of file
+}

--
Gitblit v1.9.1