From af7b716a60d889acea95560abba0e46eee008b8f Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期三, 05 七月 2023 13:54:50 +0800
Subject: [PATCH] backup0705

---
 force-app/main/default/classes/LexOverdueStockController.cls |  787 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 432 insertions(+), 355 deletions(-)

diff --git a/force-app/main/default/classes/LexOverdueStockController.cls b/force-app/main/default/classes/LexOverdueStockController.cls
index c6d0fd1..b53796f 100644
--- a/force-app/main/default/classes/LexOverdueStockController.cls
+++ b/force-app/main/default/classes/LexOverdueStockController.cls
@@ -1,381 +1,458 @@
 public with sharing class LexOverdueStockController {
+  /*****************妞滅储鐢�******************/
+  public static String barcode { get; set; }
 
-    /*****************妞滅储鐢�******************/
-    public static String barcode { get; set; }
+  // 杩囨湡鍜岄攢瀛�,鐢婚潰鏄剧ず鐢�
+  public static List<orderBean> codPageRecords { get; set; }
 
-    // 杩囨湡鍜岄攢瀛�,鐢婚潰鏄剧ず鐢�
-    public static List<orderBean> codPageRecords { get; set; }
+  // 杩囨湡鍜岄攢瀛�,鐢婚潰鏄剧ず鐢�
+  public static List<orderBean> overduePageRecords { get; set; }
 
-    // 杩囨湡鍜岄攢瀛�,鐢婚潰鏄剧ず鐢�
-    public static List<orderBean> overduePageRecords { get; set; }
+  // 鐧诲綍鑰呭伐浣滃湴
+  private static String userWorkLocation;
+  //缁忛攢鍟嗙敤鎴蜂骇鍝佸垎绫伙紙ET銆丒NG锛�
+  private static String agencyProType;
+  private static String sqlagencyProType;
+  // 缁忛攢鍟嗕俊鎭�
+  private static Account accountInfo;
 
-    // 鐧诲綍鑰呭伐浣滃湴
-    private static String userWorkLocation;
-    //缁忛攢鍟嗙敤鎴蜂骇鍝佸垎绫伙紙ET銆丒NG锛�
-    private static String agencyProType;
-    private static String sqlagencyProType;
-    // 缁忛攢鍟嗕俊鎭�
-    private static Account accountInfo;
+  //鍒ゆ柇鎿嶄綔浜哄憳鏄惁閿�瀛�
+  public static Boolean iSinventory = false;
 
-     //鍒ゆ柇鎿嶄綔浜哄憳鏄惁閿�瀛�
-    public static Boolean iSinventory = false;
+  public static List<Consumable_order_details2__c> overdueList = new List<Consumable_order_details2__c>();
 
-    public static List<Consumable_order_details2__c> overdueList = new List<Consumable_order_details2__c>();
+  public static Integer pageRecordsSize {
+    get {
+      return codPageRecords == null ? 0 : codPageRecords.size();
+    }
+  }
 
-    public static Integer pageRecordsSize  {
-        get {
-            return codPageRecords == null ? 0 : codPageRecords.size();
-        }
+  public LexOverdueStockController() {
+  }
+
+  // 鐢婚潰鍒濆鍖�
+  @AuraEnabled
+  public static ResponseBodyLWC init() {
+    ResponseBodyLWC res = new ResponseBodyLWC();
+    Map<String, object> data = new Map<String, object>();
+    res.entity = data;
+
+    codPageRecords = new List<orderBean>();
+    overduePageRecords = new List<orderBean>();
+    // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
+    user Useracc = [
+      SELECT Accountid, Work_Location__c, UserPro_Type__c
+      FROM user
+      WHERE id = :UserInfo.getUserId()
+    ];
+    userWorkLocation = Useracc.Work_Location__c;
+    agencyProType = Useracc.UserPro_Type__c;
+    if (String.isBlank(Useracc.UserPro_Type__c)) {
+      agencyProType = 'ET';
+    }
+    sqlagencyProType = '%' + agencyProType + '%';
+    accountInfo = [
+      SELECT id, Name, Dealer_discount__c
+      FROM account
+      WHERE id = :Useracc.accountid
+    ];
+    // 杩囨湡搴撳瓨姹囨�讳俊鎭�
+    List<AggregateResult> orderDetZaiku = [
+      SELECT
+        count(Id) countsum,
+        Consumable_Product__c prodid,
+        Consumable_Product__r.Name_Text__c prodname,
+        Box_Piece__c boxPiece
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        AND Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = FALSE
+        AND Isoverdue__c = 0
+        AND Dealer_Returned__c = FALSE
+        AND Cancellation_Flag__c = FALSE
+        AND Bar_Code__c != NULL
+        AND Product_Type__c LIKE :sqlagencyProType
+        AND Dealer_Info_text__c = :accountInfo.Name
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+      GROUP BY
+        Consumable_Product__c,
+        Box_Piece__c,
+        Consumable_Product__r.Name_Text__c
+    ];
+
+    for (AggregateResult overdue : orderDetZaiku) {
+      codPageRecords.add(new orderBean(overdue));
     }
 
-    public LexOverdueStockController() {
+    system.debug('codPageRecords====>' + codPageRecords);
+    data.put('codPageRecords', JSON.serialize(codPageRecords));
+    data.put('userWorkLocation', userWorkLocation);
+    data.put('accountName', accountInfo.Name);
+    data.put('agencyProType', agencyProType);
+    data.put('orderDetZaiku', JSON.serialize(orderDetZaiku));
+    res.status = 'Success';
+    res.code = 200;
+    System.debug('res = ' + res);
+    return res;
+  }
 
+  // BarCode褰曞叆
+  @AuraEnabled
+  public static ResponseBodyLWC searchorderBean(
+    String agencyProTypeLWC,
+    String userWorkLocationLWC,
+    String accountNameLWC,
+    String barcodeLWC,
+    String codPageRecordsLWC
+  ) {
+    ResponseBodyLWC res = new ResponseBodyLWC();
+    Map<String, object> data = new Map<String, object>();
+    res.entity = data;
+    List<orderBean> codPageRecords = (List<orderBean>) JSON.deserialize(
+      codPageRecordsLWC,
+      List<orderBean>.class
+    );
+    sqlagencyProType = '%' + agencyProTypeLWC + '%';
+    system.debug('sqlagencyProType==>' + sqlagencyProType);
+    barcode = barcodeLWC;
+    system.debug('barcode==>' + barcode);
+    userWorkLocation = userWorkLocationLWC;
+    // add by Wang Xueqin 2023/04/12
+    // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
+    user Useracc = [
+      SELECT Accountid, Work_Location__c, UserPro_Type__c
+      FROM user
+      WHERE id = :UserInfo.getUserId()
+    ];
+    accountInfo = [
+      SELECT id, Name, Dealer_discount__c
+      FROM account
+      WHERE id = :Useracc.accountid
+    ];
+
+    iSinventory = true;
+    Set<String> barCodeoverdue = new Set<String>();
+    overduePageRecords = new List<orderBean>();
+    List<String> barCodeListP = ParseBarCode(barcode);
+    // 椤甸潰鏄剧ず鏁版嵁鍒濆鍖�
+    for (orderBean codPage : codPageRecords) {
+      codPage.pandian = 0;
+    }
+    // 鏌ヨ鎵�鏈夎繃鏈熷簱瀛�
+    List<Consumable_order_details2__c> orderDetZaiku = [
+      SELECT
+        Id,
+        Name,
+        Consumable_Product__c,
+        Bar_Code__c,
+        Consumable_Product__r.Name__c,
+        Dealer_Info_text__c,
+        Asset_Model_No__c,
+        Isoverdue__c,
+        Box_Piece__c,
+        Sterilization_limit__c,
+        Bar_Code_search__c
+      FROM Consumable_order_details2__c
+      WHERE
+        Dealer_Arrive__c = TRUE
+        AND Dealer_Shipment__c = FALSE
+        AND Dealer_Saled__c = FALSE
+        AND Lose_Flag__c = FALSE
+        AND Isoverdue__c = 0
+        AND Dealer_Returned__c = FALSE
+        AND Cancellation_Flag__c = FALSE
+        AND Bar_Code__c != NULL
+        AND Product_Type__c LIKE :sqlagencyProType
+        AND Dealer_Info_text__c = :accountInfo.Name
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+    ];
+    // 娌℃湁杈撳叆鏉$爜鏃讹紝寰幆椤甸潰锛屾墍鏈夋墦閽╀骇鍝佸叏閮ㄩ攢瀛�
+    // 鍙栧緱鎵�鏈�
+    overdueList = new List<Consumable_order_details2__c>();
+    if (String.isBlank(barcode)) {
+      System.debug('barcode绌�');
+      for (orderBean codPage : codPageRecords) {
+        if (codPage.check) {
+          for (Consumable_order_details2__c cod2 : orderDetZaiku) {
+            if (
+              cod2.Consumable_Product__c == codPage.prodid &&
+              codPage.boxPiece == cod2.Box_Piece__c
+            ) {
+              overduePageRecords.add(new orderBean(cod2, '杩囨湡搴撳瓨閿�瀛�'));
+              overdueList.add(cod2);
+            }
+          }
+          codPage.pandian = codPage.overlimitCount;
+        }
+      }
+      // return;
+      System.debug('overduePageRecords = ' + overduePageRecords);
+      System.debug('overdueList = ' + overdueList);
+      data.put('overduePageRecords', JSON.serialize(overduePageRecords));
+      data.put('codPageRecords', JSON.serialize(codPageRecords));
+      data.put('iSinventory', iSinventory);
+      data.put('overdueList', overdueList);
+      res.status = 'Success1';
+      res.code = 200;
+      // res.msg = '璇疯緭鍏arCode鍙�';
+      System.debug('res = ' + res);
+      return res;
     }
 
-    // 鐢婚潰鍒濆鍖�
-    @AuraEnabled
-    public static ResponseBodyLWC init() {
-        ResponseBodyLWC res = new ResponseBodyLWC();
-        Map<String, object> data = new Map<String, object>();
-        res.entity = data;
+    // 杈撳叆barcode鏃�
 
-        codPageRecords = new List<orderBean>();
-        overduePageRecords = new List<orderBean>();
-        // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
-        user Useracc = [select Accountid, Work_Location__c,UserPro_Type__c from user where id =: UserInfo.getUserId()];
-        userWorkLocation = Useracc.Work_Location__c;
-        agencyProType = Useracc.UserPro_Type__c;
-        if(String.isBlank(Useracc.UserPro_Type__c)){
-            agencyProType = 'ET';
-        }
-        sqlagencyProType = '%' + agencyProType + '%';
-        accountInfo = [SELECT id,Name,Dealer_discount__c FROM account WHERE id =:Useracc.accountid];
-        // 杩囨湡搴撳瓨姹囨�讳俊鎭�
-        List<AggregateResult>  orderDetZaiku = [SELECT count(Id) countsum,
-                        Consumable_Product__c prodid,
-                        Consumable_Product__r.Name_Text__c prodname,
-                        Box_Piece__c boxPiece
-                        FROM Consumable_order_details2__c
-                        WHERE Dealer_Arrive__c = true
-                        AND Dealer_Shipment__c = false
-                        AND Dealer_Saled__c = false
-                        AND Lose_Flag__c = false
-                        AND Isoverdue__c = 0
-                        AND Dealer_Returned__c = false
-                        AND Cancellation_Flag__c = false
-                        AND Bar_Code__c !=null
-                        AND Product_Type__c like : sqlagencyProType
-                        AND Dealer_Info_text__c = :accountInfo.Name
-                        AND Arrive_Owner_Work_Location__c = :userWorkLocation
-                        group by Consumable_Product__c,Box_Piece__c,Consumable_Product__r.Name_Text__c];
+    // BarCode鐨勬绱�  鎵�鏈夊湪搴�
+    List<Consumable_order_details2__c> reSet = [
+      SELECT
+        Id,
+        Consumable_Product__c,
+        Consumable_Product__r.Name__c,
+        Box_Piece__c,
+        Bar_Code_search__c,
+        Dealer_Shipment__c,
+        Dealer_Saled__c,
+        Lose_Flag__c,
+        Bar_Code__c,
+        Cancellation_Flag__c,
+        Isoverdue__c,
+        Sterilization_limit__c
+      FROM Consumable_order_details2__c
+      WHERE
+        Bar_Code_search__c IN :BarCodeListP
+        AND Dealer_Arrive__c = TRUE
+        AND Cancellation_Flag__c = FALSE
+        AND Dealer_Returned__c = FALSE
+        AND Bar_Code__c != NULL
+        AND Product_Type__c LIKE :sqlagencyProType
+        AND Arrive_Owner_Work_Location__c = :userWorkLocation
+        AND Dealer_Info_text__c = :accountInfo.Name
+      ORDER BY Name
+    ];
 
-        for(AggregateResult overdue : orderDetZaiku){
-            codPageRecords.add(new orderBean(overdue));
-        }
+    System.debug('reSet===>' + reSet);
 
-        system.debug('codPageRecords====>'+codPageRecords);
-        data.put('codPageRecords',JSON.serialize(codPageRecords));
-        data.put('userWorkLocation',userWorkLocation);
-        data.put('accountName',accountInfo.Name);
-        data.put('agencyProType',agencyProType);
-        data.put('orderDetZaiku',JSON.serialize(orderDetZaiku));
-        res.status = 'Success';
-        res.code = 200;
-        System.debug('res = ' + res);
-        return res;
-
-    }
-
-    // BarCode褰曞叆
-    @AuraEnabled
-    public static ResponseBodyLWC searchorderBean(String agencyProTypeLWC,String userWorkLocationLWC,String accountNameLWC,String barcodeLWC,String codPageRecordsLWC){
-        ResponseBodyLWC res = new ResponseBodyLWC();
-        Map<String, object> data = new Map<String, object>();
-        res.entity = data;
-        List<orderBean> codPageRecords = (List<orderBean>)JSON.deserialize(codPageRecordsLWC,List<orderBean>.class);
-        sqlagencyProType = '%' + agencyProTypeLWC + '%';
-        system.debug('sqlagencyProType==>'+ sqlagencyProType);
-        barcode = barcodeLWC;
-        system.debug('barcode==>'+ barcode);
-        userWorkLocation = userWorkLocationLWC;
-        // add by Wang Xueqin 2023/04/12
-        // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
-        user Useracc = [select Accountid, Work_Location__c,UserPro_Type__c from user where id =: UserInfo.getUserId()];
-        accountInfo = [SELECT id,Name,Dealer_discount__c FROM account WHERE id =:Useracc.accountid];
-  
-       
-        iSinventory = true;
-        Set<String> barCodeoverdue = new Set<String>();
-        overduePageRecords = new List<orderBean>();
-        List<String> barCodeListP = ParseBarCode( barcode );
-        // 椤甸潰鏄剧ず鏁版嵁鍒濆鍖�
+    for (Consumable_order_details2__c cod2 : reSet) {
+      if (
+        (cod2.Dealer_Shipment__c == false &&
+        cod2.Dealer_Saled__c == false &&
+        cod2.Lose_Flag__c == false &&
+        cod2.Cancellation_Flag__c == false) && cod2.Isoverdue__c == 0
+      ) {
         for (orderBean codPage : codPageRecords) {
-            codPage.pandian = 0;
+          if (
+            cod2.Consumable_Product__c == codPage.prodid &&
+            cod2.Box_Piece__c == codPage.boxPiece
+          ) {
+            overduePageRecords.add(new orderBean(cod2, '杩囨湡搴撳瓨閿�瀛�'));
+            overdueList.add(cod2);
+            codPage.pandian++;
+            codPage.check = true;
+          }
         }
-        // 鏌ヨ鎵�鏈夎繃鏈熷簱瀛�
-        List<Consumable_order_details2__c>  orderDetZaiku = [select Id,  Name,Consumable_Product__c,
-                            Bar_Code__c,Consumable_Product__r.Name__c,Dealer_Info_text__c,
-                            Asset_Model_No__c,Isoverdue__c,Box_Piece__c,Sterilization_limit__c,
-                            Bar_Code_search__c
-                        FROM Consumable_order_details2__c
-                        WHERE Dealer_Arrive__c = true
-                        AND Dealer_Shipment__c = false
-                        AND Dealer_Saled__c = false
-                        AND Lose_Flag__c = false
-                        AND Isoverdue__c = 0
-                        AND Dealer_Returned__c = false
-                        AND Cancellation_Flag__c = false
-                        AND Bar_Code__c !=null
-                        AND Product_Type__c like : sqlagencyProType
-                        AND Dealer_Info_text__c = :accountInfo.Name
-                        AND Arrive_Owner_Work_Location__c = :userWorkLocation];
-        // 娌℃湁杈撳叆鏉$爜鏃讹紝寰幆椤甸潰锛屾墍鏈夋墦閽╀骇鍝佸叏閮ㄩ攢瀛�
-        // 鍙栧緱鎵�鏈�
-        overdueList = new List<Consumable_order_details2__c>();
-        if (String.isBlank(barcode)) {
-            System.debug('barcode绌�');
-            for(orderBean codPage : codPageRecords){
-                if (codPage.check) {
-                    for(Consumable_order_details2__c cod2 : orderDetZaiku){
-                        if(cod2.Consumable_Product__c == codPage.prodid && codPage.boxPiece == cod2.Box_Piece__c){
-                            overduePageRecords.add(new orderBean(cod2,'杩囨湡搴撳瓨閿�瀛�'));
-                            overdueList.add(cod2);
-                        }
-                    }
-                    codPage.pandian = codPage.overlimitCount;
-                }
-            }
-            // return;
-        System.debug('overduePageRecords = ' + overduePageRecords);
-        System.debug('overdueList = ' + overdueList);
-        data.put('overduePageRecords',JSON.serialize(overduePageRecords));
-        data.put('codPageRecords',JSON.serialize(codPageRecords));
-        data.put('iSinventory',iSinventory);
-        data.put('overdueList',overdueList);
-        res.status = 'Success1';
-        res.code = 200;
-        // res.msg = '璇疯緭鍏arCode鍙�';
-        System.debug('res = ' + res);
-        return res;
-        }
-
-        // 杈撳叆barcode鏃�
-
-        // BarCode鐨勬绱�  鎵�鏈夊湪搴�
-        List<Consumable_order_details2__c> reSet = [select Id,Consumable_Product__c,
-                        Consumable_Product__r.Name__c,Box_Piece__c,Bar_Code_search__c,
-                        Dealer_Shipment__c,Dealer_Saled__c,Lose_Flag__c,Bar_Code__c,
-                        Cancellation_Flag__c,Isoverdue__c,Sterilization_limit__c
-                    from Consumable_order_details2__c
-                    where Bar_Code_search__c in :BarCodeListP
-                    AND Dealer_Arrive__c = true
-                    AND Cancellation_Flag__c = false
-                    and Dealer_Returned__c = false
-                    and Bar_Code__c !=null
-                    AND Product_Type__c like : sqlagencyProType
-                    AND Arrive_Owner_Work_Location__c =: userWorkLocation
-                    AND  Dealer_Info_text__c = :accountInfo.Name
-                    order by Name];
-                
-                    System.debug('reSet===>'+reSet);
-
-
-        for(Consumable_order_details2__c cod2 : reSet){
-            if ((cod2.Dealer_Shipment__c == false &&  cod2.Dealer_Saled__c == false
-                && cod2.Lose_Flag__c == false && cod2.Cancellation_Flag__c == false) &&  cod2.Isoverdue__c == 0) {
-                for (orderBean codPage : codPageRecords) {
-                    if(cod2.Consumable_Product__c == codPage.prodid && cod2.Box_Piece__c == codPage.boxPiece){
-                        overduePageRecords.add(new orderBean(cod2,'杩囨湡搴撳瓨閿�瀛�'));
-                        overdueList.add(cod2);
-                        codPage.pandian ++;
-                        codPage.check = true;
-                    }
-                }
-            }else if (cod2.Dealer_Shipment__c ||  cod2.Dealer_Saled__c) {
-                overduePageRecords.add(new orderBean(cod2,'浜у搧宸茬粡鍑哄簱'));
-            }else{
-                overduePageRecords.add(new orderBean(cod2,'涓嶆槸杩囨湡搴撳瓨'));
-            }
-        }
-        System.debug('overduePageRecords = ' + overduePageRecords);
-        data.put('overduePageRecords',JSON.serialize(overduePageRecords));
-        data.put('codPageRecords',JSON.serialize(codPageRecords));
-        data.put('iSinventory',iSinventory);
-        data.put('overdueList',overdueList);
-        res.status = 'Success';
-        res.code = 200;
-        System.debug('res = ' + res);
-        return res;
+      } else if (cod2.Dealer_Shipment__c || cod2.Dealer_Saled__c) {
+        overduePageRecords.add(new orderBean(cod2, '浜у搧宸茬粡鍑哄簱'));
+      } else {
+        overduePageRecords.add(new orderBean(cod2, '涓嶆槸杩囨湡搴撳瓨'));
+      }
     }
+    System.debug('overduePageRecords = ' + overduePageRecords);
+    data.put('overduePageRecords', JSON.serialize(overduePageRecords));
+    data.put('codPageRecords', JSON.serialize(codPageRecords));
+    data.put('iSinventory', iSinventory);
+    data.put('overdueList', overdueList);
+    res.status = 'Success';
+    res.code = 200;
+    System.debug('res = ' + res);
+    return res;
+  }
 
+  // 淇濆瓨鎸夐挳
+  @AuraEnabled
+  public static ResponseBodyLWC save(
+    Boolean iSinventory,
+    string saveCodPageRecords,
+    List<Consumable_order_details2__c> saveoverdueList
+  ) {
+    ResponseBodyLWC res = new ResponseBodyLWC();
+    Map<String, object> data = new Map<String, object>();
+    res.entity = data;
+    system.debug('saveCodPageRecords=============>' + saveCodPageRecords);
+    system.debug('saveoverdueList' + saveoverdueList);
+    overdueList = saveoverdueList;
+    // if(saveoverdueList==null){
+    //     return new ResponseBodyLWC('Error',500, '璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏', '');
 
-    // 淇濆瓨鎸夐挳
+    // }
+
+    List<orderBean> codPageRecords = (List<orderBean>) JSON.deserialize(
+      saveCodPageRecords,
+      List<orderBean>.class
+    );
+    // List<Consumable_order_details2__c> overdueList = (List<Consumable_order_details2__c>)JSON.deserialize(saveoverdueList,List<Consumable_order_details2__c>.class);
+    // add by Wang Xueqin 2023/04/12
+    // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
+    user Useracc = [
+      SELECT Accountid, Work_Location__c, UserPro_Type__c
+      FROM user
+      WHERE id = :UserInfo.getUserId()
+    ];
+    accountInfo = [
+      SELECT id, Name, Dealer_discount__c
+      FROM account
+      WHERE id = :Useracc.accountid
+    ];
+
+    // 璺宠繃鏄庣粏2涓嶅繀瑕佹洿鏂�
+    StaticParameter.EscapeConsumableOrderDetail2Trigger = true;
+    if (!iSinventory) {
+      // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇峰厛鐐广�怋arCode褰曞叆銆�'));
+      return new ResponseBodyLWC('Error', 500, '璇峰厛褰曞叆BarCode', '');
+      // return null;
+    }
+    integer Lo = 0;
+    for (orderBean header : codPageRecords) {
+      if (header.check == true) {
+        Lo++;
+      }
+    }
+    if (Lo == 0) {
+      iSinventory = false;
+      // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏銆�'));
+      return new ResponseBodyLWC('Error', 500, '璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏', '');
+      // return null;
+    }
+    Integer orderDetNo = 1;
+    Savepoint sp = Database.setSavepoint();
+    Consumable_order__c po = new Consumable_order__c();
+    po.Name = '*';
+    po.Order_status__c = '鎵瑰噯';
+    po.Inventory_date__c = Date.today();
+    po.Order_type__c = '閿�瀛�';
+    po.Dealer_Info__c = accountInfo.Id;
+    po.Order_ProType__c = agencyProType;
+    po.RecordTypeid = System.Label.RT_ConOrder_Overdue;
+    try {
+      insert po;
+      Consumable_order__c order = [
+        SELECT Name
+        FROM Consumable_order__c
+        WHERE id = :po.id
+      ];
+      List<Consumable_orderdetails__c> InsList = new List<Consumable_orderdetails__c>();
+      for (orderBean header : codPageRecords) {
+        if (header.check == true) {
+          Consumable_orderdetails__c insPan = new Consumable_orderdetails__c();
+          String str = string.valueOf(orderDetNo);
+          if (str.length() == 1) {
+            str = '0' + str;
+          }
+          insPan.Name = order.Name + '-' + str;
+          insPan.Consumable_Product__c = header.prodId;
+          insPan.Consumable_order__c = po.Id;
+          insPan.Lose_reason__c = '杩囨湡搴撳瓨閿�瀛�';
+          insPan.Overdue_count__c = header.pandian;
+          insPan.Overdue_SUM__c = header.overlimitCount;
+          insPan.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
+          orderDetNo++;
+          InsList.add(insPan);
+        }
+      }
+      // 鐢熸垚鏄庣粏1
+      if (InsList.size() > 0) {
+        insert InsList;
+      }
+
+      for (Consumable_order_details2__c cod : overdueList) {
+        cod.Consumable_Inventory_order__c = po.Id;
+        cod.Inventory_date__c = Date.today();
+        cod.Lose_reason__c = '杩囨湡搴撳瓨閿�瀛�';
+        cod.Lose_Flag__c = true;
+      }
+      if (overdueList.size() > 0) {
+        ControllerUtil.updateOrderDetailsSatus(overdueList);
+      }
+    } catch (Exception ex) {
+      Database.rollback(sp);
+      ApexPages.addMessages(ex);
+      return null;
+    }
+    // return new Pagereference('/' + po.Id);
+    data.put('Id', po.Id);
+    res.status = 'Success';
+    res.code = 200;
+    System.debug('res = ' + res);
+    return res;
+  }
+
+  // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
+  public static List<String> ParseBarCode(String Code) {
+    Map<String, Integer> barcodeCountMap = new Map<String, Integer>();
+    String[] Cache = new List<String>{};
+    Cache = Code.split('\n');
+    List<String> Buff = new List<String>();
+    for (String A : Cache) {
+      A = A.trim().toUpperCase();
+      if (barcodeCountMap.containsKey(A)) {
+        barcodeCountMap.put(A, barcodeCountMap.get(A) + 1);
+      } else {
+        barcodeCountMap.put(A, 1);
+      }
+      Buff.add(A + barcodeCountMap.get(A));
+    }
+    return Buff;
+  }
+
+  // Data Bean
+  @TestVisible
+  class orderBean implements Comparable {
     @AuraEnabled
-    public static ResponseBodyLWC save(Boolean iSinventory,string saveCodPageRecords,List<Consumable_order_details2__c> saveoverdueList) {
-        ResponseBodyLWC res = new ResponseBodyLWC();
-        Map<String, object> data = new Map<String, object>();
-        res.entity = data;
-        system.debug('saveCodPageRecords=============>'+saveCodPageRecords);
-        system.debug('saveoverdueList'+saveoverdueList);
-        overdueList =  saveoverdueList;
-        // if(saveoverdueList==null){
-        //     return new ResponseBodyLWC('Error',500, '璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏', '');
+    public Consumable_order_details2__c orderdetails2 { get; set; }
+    @AuraEnabled
+    public Product2__c Prod { get; set; }
+    @AuraEnabled
+    public Boolean check { get; set; }
 
-        // }
-
-        List<orderBean> codPageRecords = (List<orderBean>)JSON.deserialize(saveCodPageRecords,List<orderBean>.class);
-        // List<Consumable_order_details2__c> overdueList = (List<Consumable_order_details2__c>)JSON.deserialize(saveoverdueList,List<Consumable_order_details2__c>.class);
-         // add by Wang Xueqin 2023/04/12
-        // 鑾峰彇鐢ㄦ埛鍜岀粡閿�鍟嗕俊鎭�
-        user Useracc = [select Accountid, Work_Location__c,UserPro_Type__c from user where id =: UserInfo.getUserId()];
-        accountInfo = [SELECT id,Name,Dealer_discount__c FROM account WHERE id =:Useracc.accountid];
-
-        // 璺宠繃鏄庣粏2涓嶅繀瑕佹洿鏂�
-        StaticParameter.EscapeConsumableOrderDetail2Trigger = true;
-        if(!iSinventory){
-            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇峰厛鐐广�怋arCode褰曞叆銆�'));
-            return new ResponseBodyLWC('Error',500, '璇峰厛鐐瑰嚮鑾峰彇鏄庣粏', '');
-            // return null;
-        }
-        integer Lo = 0;
-        for(orderBean header : codPageRecords){
-            if(header.check==true){
-                Lo++;
-            }
-        }
-        if(Lo == 0){
-            iSinventory = false;
-            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏銆�'));
-            return new ResponseBodyLWC('Error',500, '璇烽�夋嫨瑕侀攢瀛樼殑鏄庣粏', '');
-            // return null;
-        }
-        Integer orderDetNo = 1;
-        Savepoint sp = Database.setSavepoint();
-        Consumable_order__c po = new Consumable_order__c();
-        po.Name ='*';
-        po.Order_status__c = '鎵瑰噯';
-        po.Inventory_date__c = Date.today();
-        po.Order_type__c = '閿�瀛�';
-        po.Dealer_Info__c = accountInfo.Id;
-        po.Order_ProType__c = agencyProType;
-        po.RecordTypeid = System.Label.RT_ConOrder_Overdue;
-        try{
-            insert  po;
-            Consumable_order__c order = [SELECT Name FROM Consumable_order__c WHERE id =:po.id];
-            List<Consumable_orderdetails__c> InsList = New List<Consumable_orderdetails__c>();
-            for(orderBean header : codPageRecords){
-                if(header.check==true){
-                    Consumable_orderdetails__c insPan = new Consumable_orderdetails__c();
-                    String str = string.valueOf(orderDetNo);
-                    if(str.length() == 1){
-                    str = '0' + str;
-                    }
-                    insPan.Name = order.Name + '-'+ str;
-                    insPan.Consumable_Product__c = header.prodId;
-                    insPan.Consumable_order__c = po.Id;
-                    insPan.Lose_reason__c = '杩囨湡搴撳瓨閿�瀛�';
-                    insPan.Overdue_count__c = header.pandian;
-                    insPan.Overdue_SUM__c = header.overlimitCount;
-                    insPan.RecordTypeId = System.Label.RT_ConOrderDetail1_Inventory;
-                    orderDetNo ++;
-                    InsList.add(insPan);
-                }
-            }
-            // 鐢熸垚鏄庣粏1
-            if(InsList.size()>0){
-                insert InsList;
-            }
-
-            for(Consumable_order_details2__c cod : overdueList){
-                cod.Consumable_Inventory_order__c = po.Id;
-                cod.Inventory_date__c = Date.today();
-                cod.Lose_reason__c = '杩囨湡搴撳瓨閿�瀛�';
-                cod.Lose_Flag__c = true;
-
-            }
-            if(overdueList.size()>0){
-                ControllerUtil.updateOrderDetailsSatus(overdueList);
-            }
-
-        }catch (Exception ex) {
-            Database.rollback(sp);
-            ApexPages.addMessages(ex);
-            return null;
-        }
-        // return new Pagereference('/' + po.Id);
-        data.put('Id',po.Id);
-        res.status = 'Success';
-        res.code = 200;
-        System.debug('res = ' + res);
-        return res;
+    // 杩囨湡搴撳瓨
+    @AuraEnabled
+    public Integer overlimitCount { get; set; }
+    // 閿�瀛樻暟閲�
+    @AuraEnabled
+    public Integer pandian { get; set; }
+    // 閿�瀛樺師鍥�
+    @AuraEnabled
+    public String diffReason { get; set; }
+    // 鍗曚綅
+    @AuraEnabled
+    public String boxPiece { get; set; }
+    @AuraEnabled
+    public String prodname { get; set; }
+    @AuraEnabled
+    public String prodid { get; set; }
+    orderBean(Consumable_order_details2__c e, string str) {
+      orderdetails2 = e;
+      Prod = e.Consumable_Product__r;
+      DiffReason = str;
     }
-
-    // 灏嗛〉闈㈡垨鍙栧緱BarCode鍘绘帀閲嶅鐨勶紝杞崲鎴怢ist
-    public static List<String> ParseBarCode(String Code){
-        Map<String,Integer> barcodeCountMap = new Map<String,Integer>();
-        String[] Cache = new String[]{};
-        Cache = Code.split('\n');
-        List <String> Buff = new List<String>();
-        for(String A : Cache){
-            A = A.trim().toUpperCase();
-            if(barcodeCountMap.containsKey(A)){
-                barcodeCountMap.put(A,barcodeCountMap.get(A) + 1);
-            }else{
-                barcodeCountMap.put(A,1);
-            }
-            Buff.add(A + barcodeCountMap.get(A));
-        }
-        return Buff;
+    public orderBean(AggregateResult e) {
+      check = false;
+      overlimitCount = Integer.valueOf(e.get('countsum'));
+      prodname = String.valueOf(e.get('prodname'));
+      prodid = String.valueOf(e.get('prodid'));
+      boxPiece = String.valueOf(e.get('BoxPiece'));
+      pandian = 0;
     }
-
-     // Data Bean
-    class orderBean implements Comparable {
-        @AuraEnabled
-        public Consumable_order_details2__c orderdetails2 { get; set; }
-        @AuraEnabled
-        public Product2__c Prod { get; set; }
-        @AuraEnabled
-        public Boolean check { get; set; }
-        
-        // 杩囨湡搴撳瓨
-        @AuraEnabled
-        public Integer overlimitCount { get; set; }
-        // 閿�瀛樻暟閲�
-        @AuraEnabled
-        public Integer pandian { get; set; }
-        // 閿�瀛樺師鍥�
-        @AuraEnabled
-        public String diffReason { get; set; }
-        // 鍗曚綅
-        @AuraEnabled
-        public String boxPiece { get; set; }
-        @AuraEnabled
-        public String prodname { get; set; }
-        @AuraEnabled
-        public String prodid { get; set; }
-        orderBean(Consumable_order_details2__c e,string str) {
-            orderdetails2 = e;
-            Prod = e.Consumable_Product__r;
-            DiffReason = str;
-        }
-        public orderBean(AggregateResult e) {
-            check = false;
-            overlimitCount = Integer.valueOf(e.get('countsum'));
-            prodname = String.valueOf(e.get('prodname'));
-            prodid = String.valueOf(e.get('prodid'));
-            boxPiece = String.valueOf(e.get('BoxPiece'));
-            pandian = 0;
-        }
-        // 鎺掑簭
-        public Integer compareTo(Object compareTo) {
-            orderBean compareToesd =(orderBean)compareTo;
-            Integer returnValue = 0;
-            if (overlimitCount  > compareToesd.overlimitCount ) {
-                returnValue = -1;
-            } else if (overlimitCount  < compareToesd.overlimitCount ) {
-                returnValue = 1;
-            }
-            return returnValue;
-        }
+    // 鎺掑簭
+    public Integer compareTo(Object compareTo) {
+      orderBean compareToesd = (orderBean) compareTo;
+      Integer returnValue = 0;
+      if (overlimitCount > compareToesd.overlimitCount) {
+        returnValue = -1;
+      } else if (overlimitCount < compareToesd.overlimitCount) {
+        returnValue = 1;
+      }
+      return returnValue;
     }
-}
\ No newline at end of file
+  }
+}

--
Gitblit v1.9.1