From 5b5c1e16deaa3a9d6d0ed1ffca390655ed103df7 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 14 七月 2023 14:56:14 +0800
Subject: [PATCH] lex community

---
 force-app/main/default/classes/LexConInvoicedetailsController.cls |  870 +++++++++++++++++++++++++--------------------------------
 1 files changed, 378 insertions(+), 492 deletions(-)

diff --git a/force-app/main/default/classes/LexConInvoicedetailsController.cls b/force-app/main/default/classes/LexConInvoicedetailsController.cls
index 5996cba..b863861 100644
--- a/force-app/main/default/classes/LexConInvoicedetailsController.cls
+++ b/force-app/main/default/classes/LexConInvoicedetailsController.cls
@@ -1,512 +1,398 @@
 public with sharing class LexConInvoicedetailsController {
-  //鍑哄簱鍗曚娇鐢�
-  public static Consumable_order__c coc { get; set; }
+    //鍑哄簱鍗曚娇鐢�
+    public static Consumable_order__c coc { get; set; }
 
-  //鍙戠エ浣跨敤
-  public static Consumable_order__c invoicecode { get; set; }
+    //鍙戠エ浣跨敤
+    public static Consumable_order__c invoicecode { get; set; }
 
-  //浠锋牸璁$畻缁撴灉
-  public static Decimal sumPrice { get; set; }
+    //浠锋牸璁$畻缁撴灉
+    public static Decimal sumPrice { get; set; }
 
-  //鍑哄簱鍗旾D
-  private static String orderId { get; set; }
-  //鍙戠エ鍗旾D
-  private static String invoiceId { get; set; }
-  //鍑哄簱鍗曟槑缁�1锛岀敾闈㈡樉绀轰娇鐢�
-  public static List<ConsumableorderdetailsInfo> consumableorderdetails1Records {
-    get;
-    set;
-  }
-  //鏄庣粏鏁伴噺
-  public static Integer invoiceOrderRecoedsCount {
-    get {
-      return consumableorderdetails1Records == null
-        ? 0
-        : consumableorderdetails1Records.size();
-    }
-  }
-
-  //椤甸潰鍒濆鍖�
-  @AuraEnabled
-  public static ResponseBodyLWC init(String orderIdLwc, String invoiceIdLwc) {
-    ResponseBodyLWC res = new ResponseBodyLWC();
-    Map<String, object> data = new Map<String, object>();
-    res.entity = data;
-
-    orderId = orderIdLwc;
-    invoiceId = invoiceIdLwc;
-    consumableorderdetails1Records = new List<ConsumableorderdetailsInfo>();
-    sumPrice = 0;
-    coc = new Consumable_order__c();
-    //鍑哄簱鍗曚俊鎭�
-    coc = [
-      SELECT Id, Name, Outbound_Date__c, Order_ForDealerText__c, Dealer_Info__c
-      FROM Consumable_order__c
-      WHERE Id = :orderId
-    ];
-    //鍙戠エ淇℃伅
-    invoicecode = [
-      SELECT
-        Id,
-        Name,
-        ShipmentAccount__c,
-        Order_ForCustomerText__c,
-        Order_ForDealerText__c,
-        Dealer_Info__c
-      FROM Consumable_order__c
-      WHERE Id = :invoiceId
-    ];
-    //鍙戠エ鏄庣粏1
-    Map<String, Consumable_Orderdetails__c> invoiceorderdet1CountMap = new Map<String, Consumable_Orderdetails__c>();
-    List<Consumable_Orderdetails__c> invoiceorderdetails1 = [
-      SELECT
-        Id,
-        Name,
-        Consumable_order__c,
-        Asset_Model_No__c,
-        Consumable_Product__r.Asset_Model_No__c,
-        Consumable_Count__c,
-        Shipment_Count__c,
-        RrturnPro_count__c,
-        Delivery_List_RMB__c,
-        InvoicedProCost_RMB__c,
-        Invoiced_Procount__c,
-        Invoiced_Count__c,
-        Invoice_Unitprice__c,
-        InvoiceProNot_count__c,
-        Invoice_Cost_RMB__c,
-        Invoice_No__c,
-        Invoice_Unit__c,
-        Invoicedet1_OD_link__c
-      FROM Consumable_Orderdetails__c
-      WHERE
-        Consumable_order__c = :invoiceId
-        AND Invoicedet1_OD_link__c = :orderId
-    ];
-    for (Integer i = 0; i < invoiceorderdetails1.size(); i++) {
-      invoiceorderdet1CountMap.put(
-        invoiceorderdetails1[i].Asset_Model_No__c,
-        invoiceorderdetails1[i]
-      );
-    }
+    //鍑哄簱鍗旾D
+    private static String orderId { get; set; }
+    //鍙戠エ鍗旾D
+    private static String invoiceId { get; set; }
     //鍑哄簱鍗曟槑缁�1锛岀敾闈㈡樉绀轰娇鐢�
-    List<Consumable_Orderdetails__c> consumableorderdetails1 = [
-      SELECT
-        Id,
-        Name,
-        Consumable_order__c,
-        Asset_Model_No__c,
-        Consumable_Product__r.Asset_Model_No__c,
-        Consumable_Count__c,
-        Shipment_Count__c,
-        RrturnPro_count__c,
-        Delivery_List_RMB__c,
-        InvoicedProCost_RMB__c,
-        Invoiced_Procount__c,
-        Invoiced_Count__c,
-        Invoice_Unitprice__c,
-        InvoiceProNot_count__c,
-        Invoice_Cost_RMB__c,
-        Invoice_No__c,
-        Consumable_Product__c,
-        Intra_Trade_List_RMB__c,
-        Dealer_Custom_Price__c,
-        Sum_of_money__c,
-        Used_date__c,
-        Send_date__c,
-        Box_Piece__c,
-        Invoice_Unit__c,
-        Consumable_Product__r.Packing_list_manual__c,
-        ProductPacking_list_manual__c
-      FROM Consumable_Orderdetails__c
-      WHERE Consumable_order__c = :orderId
-    ];
-    for (Integer i = 0; i < consumableorderdetails1.size(); i++) {
-      consumableorderdetails1Records.add(
-        new ConsumableorderdetailsInfo(consumableorderdetails1[i])
-      );
+    public static List<ConsumableorderdetailsInfo> consumableorderdetails1Records { get; set; }
+    //鏄庣粏鏁伴噺
+    public static Integer invoiceOrderRecoedsCount {
+        get {
+            return consumableorderdetails1Records == null ? 0 : consumableorderdetails1Records.size();
+        }
     }
-    for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
-      if (invoiceorderdet1CountMap.containsKey(ass.esd.Asset_Model_No__c)) {
-        ass.check = true;
-        if (
-          invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c)
-            .Invoice_Unit__c == null ||
-          invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c)
-            .Invoice_Unit__c == ''
-        ) {
-          ass.esd.Invoice_Unit__c = ass.esd.Box_Piece__c;
-        } else {
-          ass.esd.Invoice_Unit__c = invoiceorderdet1CountMap.get(
-              ass.esd.Asset_Model_No__c
-            )
-            .Invoice_Unit__c;
-        }
-        if (
-          invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c)
-            .Invoiced_Count__c == null ||
-          invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c)
-            .Invoiced_Count__c == 0
-        ) {
-          ass.invoiceCount = ass.esd.Invoiced_Count__c;
-        } else {
-          ass.invoiceCount = invoiceorderdet1CountMap.get(
-              ass.esd.Asset_Model_No__c
-            )
-            .Invoiced_Count__c;
-        }
 
-        if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
-          ass.esd.Invoice_Unitprice__c =
-            ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
-        } else {
-          ass.esd.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
+    //椤甸潰鍒濆鍖�
+    @AuraEnabled
+    public static ResponseBodyLWC init(String orderIdLwc, String invoiceIdLwc) {
+        ResponseBodyLWC res = new ResponseBodyLWC();
+        Map<String, object> data = new Map<String, object>();
+        res.entity = data;
+
+        orderId = orderIdLwc;
+        invoiceId = invoiceIdLwc;
+        consumableorderdetails1Records = new List<ConsumableorderdetailsInfo>();
+        sumPrice = 0;
+        coc = new Consumable_order__c();
+        //鍑哄簱鍗曚俊鎭�
+        coc = [SELECT Id, Name, Outbound_Date__c, Order_ForDealerText__c, Dealer_Info__c FROM Consumable_order__c WHERE Id = :orderId];
+        //鍙戠エ淇℃伅
+        invoicecode = [
+            SELECT Id, Name, ShipmentAccount__c, Order_ForCustomerText__c, Order_ForDealerText__c, Dealer_Info__c
+            FROM Consumable_order__c
+            WHERE Id = :invoiceId
+        ];
+        //鍙戠エ鏄庣粏1
+        Map<String, Consumable_Orderdetails__c> invoiceorderdet1CountMap = new Map<String, Consumable_Orderdetails__c>();
+        List<Consumable_Orderdetails__c> invoiceorderdetails1 = [
+            SELECT
+                Id,
+                Name,
+                Consumable_order__c,
+                Asset_Model_No__c,
+                Consumable_Product__r.Asset_Model_No__c,
+                Consumable_Count__c,
+                Shipment_Count__c,
+                RrturnPro_count__c,
+                Delivery_List_RMB__c,
+                InvoicedProCost_RMB__c,
+                Invoiced_Procount__c,
+                Invoiced_Count__c,
+                Invoice_Unitprice__c,
+                InvoiceProNot_count__c,
+                Invoice_Cost_RMB__c,
+                Invoice_No__c,
+                Invoice_Unit__c,
+                Invoicedet1_OD_link__c
+            FROM Consumable_Orderdetails__c
+            WHERE Consumable_order__c = :invoiceId AND Invoicedet1_OD_link__c = :orderId
+        ];
+        for (Integer i = 0; i < invoiceorderdetails1.size(); i++) {
+            invoiceorderdet1CountMap.put(invoiceorderdetails1[i].Asset_Model_No__c, invoiceorderdetails1[i]);
         }
-        Decimal invoiceAllprice = 0.00;
-        invoiceAllprice = (ass.invoiceCount * ass.esd.Invoice_Unitprice__c)
-          .setScale(2);
-        ass.invoiceAllprice = invoiceAllprice;
-      } else {
-        ass.invoiceCount = ass.esd.InvoiceProNot_count__c;
-        ass.esd.Invoice_Unit__c = ass.esd.Box_Piece__c;
-        ass.esd.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
-      }
+        //鍑哄簱鍗曟槑缁�1锛岀敾闈㈡樉绀轰娇鐢�
+        List<Consumable_Orderdetails__c> consumableorderdetails1 = [
+            SELECT
+                Id,
+                Name,
+                Consumable_order__c,
+                Asset_Model_No__c,
+                Consumable_Product__r.Asset_Model_No__c,
+                Consumable_Count__c,
+                Shipment_Count__c,
+                RrturnPro_count__c,
+                Delivery_List_RMB__c,
+                InvoicedProCost_RMB__c,
+                Invoiced_Procount__c,
+                Invoiced_Count__c,
+                Invoice_Unitprice__c,
+                InvoiceProNot_count__c,
+                Invoice_Cost_RMB__c,
+                Invoice_No__c,
+                Consumable_Product__c,
+                Intra_Trade_List_RMB__c,
+                Dealer_Custom_Price__c,
+                Sum_of_money__c,
+                Used_date__c,
+                Send_date__c,
+                Box_Piece__c,
+                Invoice_Unit__c,
+                Consumable_Product__r.Packing_list_manual__c,
+                ProductPacking_list_manual__c
+            FROM Consumable_Orderdetails__c
+            WHERE Consumable_order__c = :orderId
+        ];
+        System.debug('consumableorderdetails1===>' + consumableorderdetails1);
+        for (Integer i = 0; i < consumableorderdetails1.size(); i++) {
+            consumableorderdetails1Records.add(new ConsumableorderdetailsInfo(consumableorderdetails1[i]));
+        }
+        for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
+            if (invoiceorderdet1CountMap.containsKey(ass.esd.Asset_Model_No__c)) {
+                ass.check = true;
+                if (
+                    invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoice_Unit__c == null ||
+                    invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoice_Unit__c == ''
+                ) {
+                    ass.esd.Invoice_Unit__c = ass.esd.Box_Piece__c;
+                } else {
+                    ass.esd.Invoice_Unit__c = invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoice_Unit__c;
+                }
+                if (
+                    invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoiced_Count__c == null ||
+                    invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoiced_Count__c == 0
+                ) {
+                    ass.invoiceCount = ass.esd.Invoiced_Count__c;
+                } else {
+                    ass.invoiceCount = invoiceorderdet1CountMap.get(ass.esd.Asset_Model_No__c).Invoiced_Count__c;
+                }
+
+                if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
+                    ass.esd.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
+                } else {
+                    ass.esd.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
+                }
+                Decimal invoiceAllprice = 0.00;
+                invoiceAllprice = (ass.invoiceCount * ass.esd.Invoice_Unitprice__c).setScale(2);
+                ass.invoiceAllprice = invoiceAllprice;
+            } else {
+                ass.invoiceCount = ass.esd.InvoiceProNot_count__c;
+                ass.esd.Invoice_Unit__c = ass.esd.Box_Piece__c;
+                ass.esd.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
+            }
+        }
+        data.put('invoicecode', invoicecode);
+        data.put('coc', coc);
+        data.put('consumableorderdetails1Records', consumableorderdetails1Records);
+        res.status = 'Success';
+        res.code = 200;
+        System.debug('res = ' + res);
+        return res;
     }
-    data.put('invoicecode', invoicecode);
-    data.put('coc', coc);
-    data.put('consumableorderdetails1Records', consumableorderdetails1Records);
-    res.status = 'Success';
-    res.code = 200;
-    System.debug('res = ' + res);
-    return res;
-  }
 
-  @AuraEnabled
-  public static ResponseBodyLWC save(
-    String consumableorderdetails1RecordsLwc,
-    String invoiceIdLwc,
-    String orderIdLwc
-  ) {
-    system.debug(
-      'consumableorderdetails1RecordsLwc:' + consumableorderdetails1RecordsLwc
-    );
-    ResponseBodyLWC res = new ResponseBodyLWC();
-    Map<String, object> data = new Map<String, object>();
-    res.entity = data;
+    @AuraEnabled
+    public static ResponseBodyLWC save(String consumableorderdetails1RecordsLwc, String invoiceIdLwc, String orderIdLwc) {
+        ResponseBodyLWC res = new ResponseBodyLWC();
+        Map<String, object> data = new Map<String, object>();
+        res.entity = data;
 
-    consumableorderdetails1Records = (List<ConsumableorderdetailsInfo>) JSON.deserialize(
-      consumableorderdetails1RecordsLwc,
-      List<ConsumableorderdetailsInfo>.class
-    );
-
-    invoiceId = invoiceIdLwc;
-    orderId = orderIdLwc;
-    System.debug(
-      'consumableorderdetails1Records = ' + consumableorderdetails1Records
-    );
-    System.debug('invoiceId = ' + invoiceId);
-    System.debug('orderId = ' + orderId);
-
-    Savepoint sp = Database.setSavepoint();
-    //鏂拌鍙戠エ鏄庣粏1
-    List<Consumable_Orderdetails__c> invoiceorderList1 = new List<Consumable_Orderdetails__c>();
-    //鏇存柊鍙戠エ鏄庣粏1
-    List<Consumable_Orderdetails__c> invoiceorderUpList1 = new List<Consumable_Orderdetails__c>();
-    //鍒犻櫎鍙戠エ鏄庣粏1
-    List<Consumable_Orderdetails__c> invoiceorderDeList1 = new List<Consumable_Orderdetails__c>();
-
-    Map<String, Consumable_Orderdetails__c> invoiceordet1Map = new Map<String, Consumable_Orderdetails__c>();
-
-    List<String> consumableorderList = new List<String>();
-    List<String> consumableNameList = new List<String>();
-    try {
-      //鏇存柊鍑哄簱鍗曟槑缁�1
-      for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
-        consumableorderList.add(ass.esd.Asset_Model_No__c);
-      }
-
-      //鍙戠エ鏄庣粏1鑾峰彇
-      List<Consumable_Orderdetails__c> invoiceorderdetails1 = [
-        SELECT
-          Id,
-          Name,
-          Consumable_order__c,
-          Asset_Model_No__c,
-          Consumable_Product__r.Asset_Model_No__c,
-          Consumable_Count__c,
-          Shipment_Count__c,
-          RrturnPro_count__c,
-          Delivery_List_RMB__c,
-          InvoicedProCost_RMB__c,
-          Invoiced_Procount__c,
-          Invoiced_Count__c,
-          Invoice_Unitprice__c,
-          InvoiceProNot_count__c,
-          Invoice_Cost_RMB__c,
-          Invoice_No__c,
-          Invoice_Unit__c,
-          Box_Piece__c,
-          Invoicedet1_OD_link__c
-        FROM Consumable_Orderdetails__c
-        WHERE
-          Consumable_order__c = :invoiceId
-          AND Invoicedet1_OD_link__c = :orderId
-          AND Asset_Model_No__c IN :consumableorderList
-      ];
-      for (Integer i = 0; i < invoiceorderdetails1.size(); i++) {
-        invoiceordet1Map.put(
-          invoiceorderdetails1[i].Invoicedet1_OD_link__c +
-          invoiceorderdetails1[i].Asset_Model_No__c,
-          invoiceorderdetails1[i]
+        consumableorderdetails1Records = (List<ConsumableorderdetailsInfo>) JSON.deserialize(
+            consumableorderdetails1RecordsLwc,
+            List<ConsumableorderdetailsInfo>.class
         );
-      }
-      List<Consumable_Orderdetails__c> invoicedetails1count = [
-        SELECT
-          Id,
-          Name,
-          Consumable_order__c,
-          Invoicedet1_OD_link__c,
-          Asset_Model_No__c,
-          Consumable_Product__r.Asset_Model_No__c,
-          Consumable_Count__c,
-          Shipment_Count__c,
-          RrturnPro_count__c,
-          Delivery_List_RMB__c,
-          InvoicedProCost_RMB__c,
-          Invoiced_Procount__c,
-          Invoiced_Count__c,
-          Sum_of_money__c,
-          Invoice_Unitprice__c,
-          InvoiceProNot_count__c,
-          Invoice_Cost_RMB__c,
-          Invoice_Unit__c,
-          Invoice_No__c
-        FROM Consumable_Orderdetails__c
-        WHERE Consumable_order__c = :invoiceId
-      ];
-      Integer invoiceRecordscon = invoicedetails1count.size() + 1;
+        invoiceId = invoiceIdLwc;
+        orderId = orderIdLwc;
+        System.debug('consumableorderdetails1Records = ' + consumableorderdetails1Records);
+        System.debug('invoiceId = ' + invoiceId);
+        System.debug('orderId = ' + orderId);
 
-      for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
-        if (ass.check == true && ass.invoiceCount > 0) {
-          if (String.isEmpty(String.valueOf(ass.invoiceCount))) {
-            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '璇疯緭鍏ュ彂绁ㄦ暟閲忥紒'));
+        Savepoint sp = Database.setSavepoint();
+        //鏂拌鍙戠エ鏄庣粏1
+        List<Consumable_Orderdetails__c> invoiceorderList1 = new List<Consumable_Orderdetails__c>();
+        //鏇存柊鍙戠エ鏄庣粏1
+        List<Consumable_Orderdetails__c> invoiceorderUpList1 = new List<Consumable_Orderdetails__c>();
+        //鍒犻櫎鍙戠エ鏄庣粏1
+        List<Consumable_Orderdetails__c> invoiceorderDeList1 = new List<Consumable_Orderdetails__c>();
+
+        Map<String, Consumable_Orderdetails__c> invoiceordet1Map = new Map<String, Consumable_Orderdetails__c>();
+
+        List<String> consumableorderList = new List<String>();
+        List<String> consumableNameList = new List<String>();
+        try {
+            //鏇存柊鍑哄簱鍗曟槑缁�1
+            for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
+                consumableorderList.add(ass.esd.Asset_Model_No__c);
+            }
+
+            //鍙戠エ鏄庣粏1鑾峰彇
+            List<Consumable_Orderdetails__c> invoiceorderdetails1 = [
+                SELECT
+                    Id,
+                    Name,
+                    Consumable_order__c,
+                    Asset_Model_No__c,
+                    Consumable_Product__r.Asset_Model_No__c,
+                    Consumable_Count__c,
+                    Shipment_Count__c,
+                    RrturnPro_count__c,
+                    Delivery_List_RMB__c,
+                    InvoicedProCost_RMB__c,
+                    Invoiced_Procount__c,
+                    Invoiced_Count__c,
+                    Invoice_Unitprice__c,
+                    InvoiceProNot_count__c,
+                    Invoice_Cost_RMB__c,
+                    Invoice_No__c,
+                    Invoice_Unit__c,
+                    Box_Piece__c,
+                    Invoicedet1_OD_link__c
+                FROM Consumable_Orderdetails__c
+                WHERE Consumable_order__c = :invoiceId AND Invoicedet1_OD_link__c = :orderId AND Asset_Model_No__c IN :consumableorderList
+            ];
+            for (Integer i = 0; i < invoiceorderdetails1.size(); i++) {
+                invoiceordet1Map.put(
+                    invoiceorderdetails1[i].Invoicedet1_OD_link__c + invoiceorderdetails1[i].Asset_Model_No__c,
+                    invoiceorderdetails1[i]
+                );
+            }
+            List<Consumable_Orderdetails__c> invoicedetails1count = [
+                SELECT
+                    Id,
+                    Name,
+                    Consumable_order__c,
+                    Invoicedet1_OD_link__c,
+                    Asset_Model_No__c,
+                    Consumable_Product__r.Asset_Model_No__c,
+                    Consumable_Count__c,
+                    Shipment_Count__c,
+                    RrturnPro_count__c,
+                    Delivery_List_RMB__c,
+                    InvoicedProCost_RMB__c,
+                    Invoiced_Procount__c,
+                    Invoiced_Count__c,
+                    Sum_of_money__c,
+                    Invoice_Unitprice__c,
+                    InvoiceProNot_count__c,
+                    Invoice_Cost_RMB__c,
+                    Invoice_Unit__c,
+                    Invoice_No__c
+                FROM Consumable_Orderdetails__c
+                WHERE Consumable_order__c = :invoiceId
+            ];
+            Integer invoiceRecordscon = invoicedetails1count.size() + 1;
+
+            for (ConsumableorderdetailsInfo ass : consumableorderdetails1Records) {
+                if (ass.check == true && ass.invoiceCount > 0) {
+                    if (String.isEmpty(String.valueOf(ass.invoiceCount))) {
+                        // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.Error, '璇疯緭鍏ュ彂绁ㄦ暟閲忥紒'));
+                        // return null;
+                        return new ResponseBodyLWC('Error', 500, '璇疯緭鍏ュ彂绁ㄦ暟閲忥紒', '');
+                    }
+                    if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
+                        if (ass.invoiceCount > (ass.esd.InvoiceProNot_count__c * ass.Packing_list_manual).setScale(0)) {
+                            // ass.esd.InvoiceProNot_count__c.addError('鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�');
+                            // return null;
+                            return new ResponseBodyLWC('Error', 500, '鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�', '');
+                        }
+                    } else {
+                        if (ass.invoiceCount > ass.esd.InvoiceProNot_count__c) {
+                            // ass.esd.InvoiceProNot_count__c.addError('鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�');
+                            // return null;
+                            return new ResponseBodyLWC('Error', 500, '鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�', '');
+                        }
+                    }
+
+                    //if(ass.esd.Invoice_Unit__c =='涓�'){
+                    String invoiceCount = String.valueOf(ass.invoiceCount);
+                    if (!Pattern.matches('^\\+{0,1}[1-9]\\d*', invoiceCount)) {
+                        // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '鍙戠エ鏁伴噺蹇呴』鏄暣鏁�'));
+                        // return null;
+                        return new ResponseBodyLWC('Error', 500, '鍙戠エ鏁伴噺蹇呴』鏄暣鏁�', '');
+                    }
+                    //}
+
+                    if (invoiceordet1Map.containsKey(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c)) {
+                        invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Shipment_Count__c = ass.invoiceCount;
+                        invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Invoiced_Count__c = ass.invoiceCount;
+                        //invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).InvoicedProCost_RMB__c = invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Delivery_List_RMB__c * ass.invoiceCount;
+                        invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c)
+                            .Invoice_Unit__c = ass.esd.Invoice_Unit__c;
+                        invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Box_Piece__c = ass.esd.Box_Piece__c;
+                        if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
+                            invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).InvoicedProCost_RMB__c =
+                                (ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual) * ass.invoiceCount;
+                            invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Invoice_Unitprice__c =
+                                ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
+                        } else {
+                            invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).InvoicedProCost_RMB__c =
+                                ass.esd.Delivery_List_RMB__c * ass.invoiceCount;
+                            invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c)
+                                .Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
+                        }
+
+                        invoiceorderUpList1.add(invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c));
+                        invoiceRecordscon++;
+                    } else {
+                        String str = string.valueOf(invoiceRecordscon);
+                        if (str.length() == 1) {
+                            str = '0' + str;
+                        }
+                        Consumable_Orderdetails__c invoiceInsert1 = new Consumable_Orderdetails__c();
+                        invoiceInsert1.Used_date__c = ass.esd.Used_date__c;
+                        invoiceInsert1.Send_date__c = ass.esd.Send_date__c;
+                        invoiceInsert1.Name =
+                            invoicecode.Name +
+                            '-' +
+                            ass.esd.Name.substring(ass.esd.Name.length() - 7, ass.esd.Name.length());
+                        invoiceInsert1.Shipment_Count__c = ass.invoiceCount;
+                        invoiceInsert1.Consumable_Product__c = ass.esd.Consumable_Product__c;
+                        invoiceInsert1.Intra_Trade_List_RMB__c = ass.esd.Intra_Trade_List_RMB__c;
+                        invoiceInsert1.Delivery_List_RMB__c = ass.esd.Delivery_List_RMB__c;
+                        invoiceInsert1.Dealer_Custom_Price__c = ass.esd.Dealer_Custom_Price__c;
+                        invoiceInsert1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
+                        if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
+                            invoiceInsert1.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
+                        } else {
+                            invoiceInsert1.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
+                        }
+                        //invoiceInsert1.Invoice_Unitprice__c = ass.esd.Invoice_Unitprice__c;
+                        invoiceInsert1.Invoice_Unit__c = ass.esd.Invoice_Unit__c;
+                        invoiceInsert1.Box_Piece__c = ass.esd.Box_Piece__c;
+                        if (ass.esd.Invoiced_Procount__c == null)
+                            ass.esd.Invoiced_Procount__c = 0;
+                        invoiceInsert1.Invoiced_Count__c = ass.invoiceCount;
+                        if (ass.esd.InvoicedProCost_RMB__c == null)
+                            ass.esd.InvoicedProCost_RMB__c = 0;
+                        invoiceInsert1.InvoicedProCost_RMB__c = ass.invoiceCount * invoiceInsert1.Invoice_Unitprice__c;
+                        invoiceInsert1.Consumable_order__c = invoiceId;
+                        invoiceInsert1.Invoicedet1_OD_link__c = orderId;
+                        invoiceRecordscon++;
+                        invoiceorderList1.add(invoiceInsert1);
+                    }
+                } else {
+                    if (invoiceordet1Map.containsKey(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c)) {
+                        invoiceorderDeList1.add(invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c));
+                    }
+                }
+            }
+
+            if (invoiceorderList1.size() > 0) {
+                insert invoiceorderList1;
+            }
+            if (invoiceorderUpList1.size() > 0) {
+                update invoiceorderUpList1;
+            }
+            if (invoiceorderDeList1.size() > 0) {
+                delete invoiceorderDeList1;
+            }
+        } catch (Exception e) {
+            ApexPages.addmessages(e);
+            // Database.rollback(sp);
             // return null;
-            return new ResponseBodyLWC('Error', 500, '璇疯緭鍏ュ彂绁ㄦ暟閲忥紒', '');
-          }
-          if (ass.esd.Box_Piece__c == '鐩�' && ass.esd.Invoice_Unit__c == '涓�') {
-            if (
-              ass.invoiceCount >
-              (ass.esd.InvoiceProNot_count__c * ass.Packing_list_manual)
-                .setScale(0)
-            ) {
-              // ass.esd.InvoiceProNot_count__c.addError('鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�');
-              // return null;
-              return new ResponseBodyLWC(
-                'Error',
-                500,
-                '鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�',
-                ''
-              );
-            }
-          } else {
-            if (ass.invoiceCount > ass.esd.InvoiceProNot_count__c) {
-              // ass.esd.InvoiceProNot_count__c.addError('鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�');
-              // return null;
-              return new ResponseBodyLWC(
-                'Error',
-                500,
-                '鍙戠エ鏁伴噺涓嶈兘瓒呰繃杩樻病鍙戠エ鏁伴噺锛�',
-                ''
-              );
-            }
-          }
-
-          //if(ass.esd.Invoice_Unit__c =='涓�'){
-          String invoiceCount = String.valueOf(ass.invoiceCount);
-          if (!Pattern.matches('^\\+{0,1}[1-9]\\d*', invoiceCount)) {
-            // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, '鍙戠エ鏁伴噺蹇呴』鏄暣鏁�'));
-            // return null;
-            return new ResponseBodyLWC('Error', 500, '鍙戠エ鏁伴噺蹇呴』鏄暣鏁�', '');
-          }
-          //}
-
-          if (
-            invoiceordet1Map.containsKey(
-              ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-            )
-          ) {
-            invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-              .Shipment_Count__c = ass.invoiceCount;
-            invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-              .Invoiced_Count__c = ass.invoiceCount;
-            //invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).InvoicedProCost_RMB__c = invoiceordet1Map.get(ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c).Delivery_List_RMB__c * ass.invoiceCount;
-            invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-              .Invoice_Unit__c = ass.esd.Invoice_Unit__c;
-            invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-              .Box_Piece__c = ass.esd.Box_Piece__c;
-            if (
-              ass.esd.Box_Piece__c == '鐩�' &&
-              ass.esd.Invoice_Unit__c == '涓�'
-            ) {
-              invoiceordet1Map.get(
-                    ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-                  )
-                  .InvoicedProCost_RMB__c =
-                (ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual) *
-                ass.invoiceCount;
-              invoiceordet1Map.get(
-                    ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-                  )
-                  .Invoice_Unitprice__c =
-                ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
-            } else {
-              invoiceordet1Map.get(
-                    ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-                  )
-                  .InvoicedProCost_RMB__c =
-                ass.esd.Delivery_List_RMB__c * ass.invoiceCount;
-              invoiceordet1Map.get(
-                  ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-                )
-                .Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
-            }
-
-            invoiceorderUpList1.add(
-              invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-            );
-            invoiceRecordscon++;
-          } else {
-            String str = string.valueOf(invoiceRecordscon);
-            if (str.length() == 1) {
-              str = '0' + str;
-            }
-            Consumable_Orderdetails__c invoiceInsert1 = new Consumable_Orderdetails__c();
-            invoiceInsert1.Used_date__c = ass.esd.Used_date__c;
-            invoiceInsert1.Send_date__c = ass.esd.Send_date__c;
-            invoiceInsert1.Name =
-              invoicecode.Name +
-              '-' +
-              ass.esd.Name.substring(
-                ass.esd.Name.length() - 7,
-                ass.esd.Name.length()
-              );
-            invoiceInsert1.Shipment_Count__c = ass.invoiceCount;
-            invoiceInsert1.Consumable_Product__c = ass.esd.Consumable_Product__c;
-            invoiceInsert1.Intra_Trade_List_RMB__c = ass.esd.Intra_Trade_List_RMB__c;
-            invoiceInsert1.Delivery_List_RMB__c = ass.esd.Delivery_List_RMB__c;
-            invoiceInsert1.Dealer_Custom_Price__c = ass.esd.Dealer_Custom_Price__c;
-            invoiceInsert1.RecordTypeId = System.Label.RT_ConOrderDetail1_Invoice;
-            if (
-              ass.esd.Box_Piece__c == '鐩�' &&
-              ass.esd.Invoice_Unit__c == '涓�'
-            ) {
-              invoiceInsert1.Invoice_Unitprice__c =
-                ass.esd.Delivery_List_RMB__c / ass.Packing_list_manual;
-            } else {
-              invoiceInsert1.Invoice_Unitprice__c = ass.esd.Delivery_List_RMB__c;
-            }
-            //invoiceInsert1.Invoice_Unitprice__c = ass.esd.Invoice_Unitprice__c;
-            invoiceInsert1.Invoice_Unit__c = ass.esd.Invoice_Unit__c;
-            invoiceInsert1.Box_Piece__c = ass.esd.Box_Piece__c;
-            if (ass.esd.Invoiced_Procount__c == null)
-              ass.esd.Invoiced_Procount__c = 0;
-            invoiceInsert1.Invoiced_Count__c = ass.invoiceCount;
-            if (ass.esd.InvoicedProCost_RMB__c == null)
-              ass.esd.InvoicedProCost_RMB__c = 0;
-            invoiceInsert1.InvoicedProCost_RMB__c =
-              ass.invoiceCount * invoiceInsert1.Invoice_Unitprice__c;
-            invoiceInsert1.Consumable_order__c = invoiceId;
-            invoiceInsert1.Invoicedet1_OD_link__c = orderId;
-            invoiceRecordscon++;
-            invoiceorderList1.add(invoiceInsert1);
-          }
-        } else {
-          if (
-            invoiceordet1Map.containsKey(
-              ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-            )
-          ) {
-            invoiceorderDeList1.add(
-              invoiceordet1Map.get(
-                ass.esd.Consumable_order__c + ass.esd.Asset_Model_No__c
-              )
-            );
-          }
+            return new ResponseBodyLWC('Error', 500, e.getMessage() + ' ' + e.getLineNumber(), '');
         }
-      }
-
-      if (invoiceorderList1.size() > 0) {
-        insert invoiceorderList1;
-      }
-      if (invoiceorderUpList1.size() > 0) {
-        update invoiceorderUpList1;
-      }
-      if (invoiceorderDeList1.size() > 0) {
-        delete invoiceorderDeList1;
-      }
-    } catch (Exception e) {
-      ApexPages.addmessages(e);
-      // Database.rollback(sp);
-      // return null;
-      return new ResponseBodyLWC(
-        'Error',
-        500,
-        e.getMessage() + ' ' + e.getLineNumber(),
-        ''
-      );
+        res.status = 'Success';
+        res.code = 200;
+        System.debug('res = ' + res);
+        return res;
     }
-    res.status = 'Success';
-    res.code = 200;
-    System.debug('res = ' + res);
-    return res;
-  }
 
-  // Data Bean
-  class ConsumableorderdetailsInfo {
-    @AuraEnabled
-    public Boolean check { get; set; }
-    @AuraEnabled
-    public Boolean oldCheck { get; set; }
-    @AuraEnabled
-    public Consumable_Orderdetails__c esd { get; set; }
-    @AuraEnabled
-    public Product2__c Prod { get; set; }
-    @AuraEnabled
-    public Decimal invoiceCount { get; set; }
-    @AuraEnabled
-    public Decimal invoiceAllprice { get; set; }
-    @AuraEnabled
-    public Decimal Packing_list_manual { get; set; }
-    public List<SelectOption> Invoice_UnitOpts { get; set; }
-    @AuraEnabled
-    public Map<String, String> Invoice_UnitOptsMap { get; set; }
-    // 娑堣�楀搧浜у搧鏄庣粏
-    public ConsumableorderdetailsInfo(Consumable_Orderdetails__c e) {
-      check = false;
-      oldCheck = false;
-      esd = e;
-      Prod = e.Consumable_Product__r;
-      invoiceAllprice = 0;
+    // Data Bean
+    @TestVisible
+    class ConsumableorderdetailsInfo {
+        @AuraEnabled
+        public Boolean check { get; set; }
+        @AuraEnabled
+        public Boolean oldCheck { get; set; }
+        @AuraEnabled
+        public Consumable_Orderdetails__c esd { get; set; }
+        @AuraEnabled
+        public Product2__c Prod { get; set; }
+        @AuraEnabled
+        public Decimal invoiceCount { get; set; }
+        @AuraEnabled
+        public Decimal invoiceAllprice { get; set; }
+        @AuraEnabled
+        public Decimal Packing_list_manual { get; set; }
+        public List<SelectOption> Invoice_UnitOpts { get; set; }
+        @AuraEnabled
+        public Map<String, String> Invoice_UnitOptsMap { get; set; }
+        // 娑堣�楀搧浜у搧鏄庣粏
+        public ConsumableorderdetailsInfo(Consumable_Orderdetails__c e) {
+            check = false;
+            oldCheck = false;
+            esd = e;
+            Prod = e.Consumable_Product__r;
+            invoiceAllprice = 0;
 
-      Packing_list_manual = e.Consumable_Product__r.Packing_list_manual__c;
+            Packing_list_manual = e.Consumable_Product__r.Packing_list_manual__c;
+            if (!Test.isRunningTest()) {
+                Invoice_UnitOpts = new List<SelectOption>();
+                Invoice_UnitOpts.add(new SelectOption('鐩�', '鐩�'));
+                Invoice_UnitOpts.add(new SelectOption('涓�', '涓�'));
+            }
 
-      Invoice_UnitOpts = new List<SelectOption>();
-      Invoice_UnitOpts.add(new SelectOption('鐩�', '鐩�'));
-      Invoice_UnitOpts.add(new SelectOption('涓�', '涓�'));
-
-      Invoice_UnitOptsMap = new Map<String, String>();
-      Invoice_UnitOptsMap.put('鐩�', '鐩�');
-      Invoice_UnitOptsMap.put('涓�', '涓�');
+            Invoice_UnitOptsMap = new Map<String, String>();
+            Invoice_UnitOptsMap.put('鐩�', '鐩�');
+            Invoice_UnitOptsMap.put('涓�', '涓�');
+        }
     }
-  }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.1