buli
2023-07-14 744f42c5496e656a1f9927740a3b37c0b97a6cba
force-app/main/default/classes/LexCancelRemoveBoxController.cls
@@ -4,23 +4,14 @@
  public static String userPro_Typestr = null;
  public static String barcode { get; set; }
  /*****************画面表示Bean******************/
  public static List<ConsumableorderdetailsInfo> consumableInventory {
    get;
    set;
  }
    public static List<ConsumableorderdetailsInfo> consumableInventory { get; set; }
  //错误明细
  public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror {
    get;
    set;
  }
    public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror { get; set; }
  //拆盒明细
  public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy {
    get;
    set;
  }
    public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy { get; set; }
  public static boolean saveFLGbln { get; set; }
  //错误信息
  public static String alertMessage { get; set; }
    public static String alertMessage {set;get;}
  //拆盒明细件数
  public static Integer getinventorysize() {
    return ConsumableorderdetailsRecordsdummy.size();
@@ -30,7 +21,7 @@
  public static Map<String, String> AllMap = new Map<String, String>();
  public static List<String> BarCodeListP = new List<String>();
  //不符合的barcode和型号
  public static list<String> notInlist = new List<String>();
    public static list<String> notInlist = new list<String>();
  public static String baseUrl { get; private set; }
  private static String accountid = null;
  private static String accountName = null;
@@ -43,7 +34,7 @@
    ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
    ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
    consumableInventory = new List<ConsumableorderdetailsInfo>();
    saveFLGbln = false;
        saveFLGbln = FALSE;
  }
  @AuraEnabled
@@ -53,12 +44,8 @@
    res.entity = data;
    String userId = UserInfo.getUserId();
    List<user> Useracc = new List<user>();
    Useracc = [
      SELECT accountid, Work_Location__c, UserPro_Type__c
      FROM user
      WHERE id = :userId
    ];
        List<user> Useracc = New List<user>();
        Useracc = [SELECT accountid, Work_Location__c,UserPro_Type__c FROM user WHERE id =:userId];
    accountid = Useracc[0].accountid;
    userWorkLocation = Useracc[0].Work_Location__c;
    agencyProType = Useracc[0].UserPro_Type__c;
@@ -66,11 +53,7 @@
      agencyProType = 'ET';
    }
    userPro_Typestr = '%' + agencyProType + '%';
    List<account> accountInfo = [
      SELECT Name
      FROM account
      WHERE id = :accountid
    ];
        List<account> accountInfo = [SELECT Name FROM account WHERE id =:accountid];
    //String view_product = accountInfo[0].view_product__c;
    accountName = accountInfo[0].Name;
    //proidList = view_product.split(',');
@@ -81,11 +64,12 @@
    res.code = 200;
    System.debug('res = ' + res);
    return res;
  }
  // 将页面或取得BarCode去掉重复的,转换成List
  public static List<String> ParseBarCode(String Code) {
    String[] Cache = new List<String>{};
        String[] Cache = new String[]{};
    Cache = Code.split('\n');
    Set<String> Buff = new Set<String>();
    for (String A : Cache) {
@@ -101,12 +85,7 @@
  //获取明细
  @AuraEnabled
  public static ResponseBodyLWC searchConsumableorderdetails(
    String barcode,
    String accountName,
    String userWorkLocation,
    String agencyProType
  ) {
    public static ResponseBodyLWC searchConsumableorderdetails(String barcode,String accountName,String userWorkLocation,String agencyProType) {
    ResponseBodyLWC res = new ResponseBodyLWC();
    Map<String, object> data = new Map<String, object>();
    res.entity = data;
@@ -118,13 +97,15 @@
    ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>();
    ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>();
    notInlist = new List<String>();
        notInlist = new list<String>();
    BarCodeListP = ParseBarCode(barcode);
    Consumable_order_details2__c p = new Consumable_order_details2__c();
    List<Consumable_order_details2__c> Ins = new List<Consumable_order_details2__c>();
        List<Consumable_order_details2__c> Ins = New List<Consumable_order_details2__c>();
    List<Consumable_order_details2__c> reSet = new List<Consumable_order_details2__c>();
    List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>();
    saveFLGbln = false;
        saveFLGbln = FALSE;
    alertMessage = '';
    //判断barcode是否为空
@@ -141,91 +122,56 @@
    // ConsumableorderdetailsRecordsdummy.clear();
    // 产品类型不同
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Product_Type__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        Arrive_Owner_Work_Location__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,Product_Type__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c, Arrive_Owner_Work_Location__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Arrive__c = TRUE
        AND Bar_Code__c IN :BarCodeListP
                    WHERE Dealer_Arrive__c = true
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
        AND Arrive_Owner_Work_Location__c = :userWorkLocation
        AND (NOT Product_Type__c LIKE :userPro_Typestr)
      ORDER BY Name
    ];
                    AND (not Product_Type__c like : userPro_Typestr)
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
          // 跳过已经处理的消耗品明细
          continue;
        } else {
          String str =
            '该商品类型' +
            reSet1[i].Product_Type__c +
            '与产品类型' +
            agencyProType +
            '不符,不能拆盒';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    String str = '该商品类型'+ reSet1[i].Product_Type__c +'与产品类型'+ agencyProType +'不符,不能拆盒';
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //没有拆盒
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Arrive__c = TRUE
        AND Dealer_Shipment__c = FALSE
        AND Dealer_Saled__c = FALSE
        AND Dealer_Returned__c = FALSE
        AND Lose_Flag__c = FALSE
                    WHERE Dealer_Arrive__c = true
                    AND  Dealer_Shipment__c= false
                    AND  Dealer_Saled__c = false
                    AND  Dealer_Returned__c = false
                    AND  Lose_Flag__c = false
        AND Box_Piece__c = '盒'
        //AND  ProductPacking_list_manual__c > 1
        AND Bar_Code__c IN :BarCodeListP
                    AND  Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ]; //没出库,没销售,在库,没有拆盒
                    ORDER BY Name ];  //没出库,没销售,在库,没有拆盒
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -233,47 +179,32 @@
          continue;
        } else {
          String str = '该商品没有拆盒';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //已出货,未到货
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Arrive__c = FALSE
                    WHERE Dealer_Arrive__c = FALSE
        AND Dealer_Shipment__c = FALSE
        AND Dealer_Saled__c = FALSE
        AND Dealer_Returned__c = FALSE
        AND Lose_Flag__c = FALSE
                    AND  Dealer_Returned__c = false
                    AND  Lose_Flag__c = false
        AND Box_Piece__c = '盒'
        AND Bar_Code__c IN :BarCodeListP
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -281,47 +212,32 @@
          continue;
        } else {
          String str = '该商品还未到货';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //拆盒已出货
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Shipment__c = TRUE
        AND Dealer_Arrive__c = TRUE
        AND Dealer_Returned__c = FALSE
        AND Lose_Flag__c = FALSE
                    WHERE Dealer_Shipment__c = true
                    AND   Dealer_Arrive__c = true
                    AND   Dealer_Returned__c = false
                    AND   Lose_Flag__c = false
        AND Box_Piece__c = '个'
        AND RemoveBox_date__c != NULL
        AND Bar_Code__c IN :BarCodeListP
                    AND   RemoveBox_date__c != null
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -329,47 +245,32 @@
          continue;
        } else {
          String str = '该商品存在出货履历';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //拆盒已销售
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Saled__c = TRUE
        AND Dealer_Arrive__c = TRUE
        AND Dealer_Returned__c = FALSE
        AND Lose_Flag__c = FALSE
                    WHERE Dealer_Saled__c = true
                    AND   Dealer_Arrive__c = true
                    AND   Dealer_Returned__c = false
                    AND   Lose_Flag__c = false
        AND Box_Piece__c = '个'
        AND RemoveBox_date__c != NULL
        AND Bar_Code__c IN :BarCodeListP
                    AND   RemoveBox_date__c != null
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -377,45 +278,30 @@
          continue;
        } else {
          String str = '该商品存在销售履历';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //拆盒返品
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Returned__c = TRUE
        AND Return_date__c != NULL
                    WHERE Dealer_Returned__c = true
                    AND   Return_date__c != null
        AND Box_Piece__c = '个'
        AND RemoveBox_date__c != NULL
        AND Bar_Code__c IN :BarCodeListP
                    AND   RemoveBox_date__c != null
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -423,44 +309,30 @@
          continue;
        } else {
          String str = '该商品存在返品履历';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //拆盒后盘点过(盘点日期不为空)
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Inventory_date__c != NULL
                    WHERE Inventory_date__c != null
        AND Box_Piece__c = '个'
        AND RemoveBox_date__c != NULL
        AND Bar_Code__c IN :BarCodeListP
                    AND   RemoveBox_date__c != null
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
@@ -468,65 +340,42 @@
          continue;
        } else {
          String str = '该商品存在盘点履历';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    //不同工作地
    reSet1 = [
      SELECT
        Id,
        Name,
        Consumable_Product__r.Name__c,
        Consumable_Product__c,
        Consumable_Product__r.Name,
        Sterilization_limit__c,
        Deliver_date__c,
        Bar_Code__c,
        Arrive_date__c,
        Send_Date__c,
        Consumable_order_minor__r.Name,
        Consumable_order_minor__c,
        recordtypeid,
        Consumable_order_minor__r.Arrive_Order__c,
        Arrive_Owner_Work_Location__c,
        reSet1 = [SELECT Id,  Name,Consumable_Product__r.Name__c,
                        Consumable_Product__c,Consumable_Product__r.Name, Sterilization_limit__c,
                        Deliver_date__c,Bar_Code__c,
                        Arrive_date__c,Send_Date__c,Consumable_order_minor__r.Name,Consumable_order_minor__c,
                        recordtypeid,Consumable_order_minor__r.Arrive_Order__c, Arrive_Owner_Work_Location__c,
        //add by rentx 2020-10-13 start
        ContractNo_text__c
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Arrive__c = TRUE
        AND Bar_Code__c IN :BarCodeListP
                    WHERE Dealer_Arrive__c = true
                    AND   Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
        AND Arrive_Owner_Work_Location__c != :userWorkLocation
      ORDER BY Name
    ];
                    ORDER BY Name ];
    if (reSet1.size() > 0) {
      for (Integer i = 0; i < reSet1.size(); i++) {
        if (ErrorIdMap.containsKey(reSet1[i].Bar_Code__c)) {
          // 跳过已经处理的消耗品明细
          continue;
        } else {
          String str =
            '该商品属于' +
            reSet1[i].Arrive_Owner_Work_Location__c +
            ',不能取消拆盒';
          ConsumableorderdetailsRecordserror.add(
            new ConsumableorderdetailsInfo(reSet1[i], str)
          );
                    String str = '该商品属于' + reSet1[i].Arrive_Owner_Work_Location__c + ',不能取消拆盒';
                    ConsumableorderdetailsRecordserror.add(new ConsumableorderdetailsInfo(reSet1[i],str));
          ErrorIdMap.put(reSet1[i].Bar_Code__c, reSet1[i].Bar_Code__c);
        }
      }
    }
    reSet = [
      SELECT
        Id,
        reSet = [SELECT Id,
        Name,
        Intra_Trade_List_RMB__c,
        Asset_Model_No__c,
@@ -551,31 +400,30 @@
      /*,ContractNo__c*/
      //add by rentx 2020-10-13 end
      FROM Consumable_order_details2__c
      WHERE
        Dealer_Arrive__c = TRUE
        AND Dealer_Shipment__c = FALSE
        AND Dealer_Saled__c = FALSE
        AND Dealer_Returned__c = FALSE
        AND Lose_Flag__c = FALSE
                    WHERE Dealer_Arrive__c = true
                    AND Dealer_Shipment__c = false
                    AND Dealer_Saled__c = false
                    AND Dealer_Returned__c = false
                    AND Lose_Flag__c = false
        AND Box_Piece__c = '个'
        AND RemoveBox_date__c != NULL
        AND Bar_Code__c IN :BarCodeListP
                    AND RemoveBox_date__c != null
                    AND Bar_Code__c in :BarCodeListP
        AND Dealer_Info_text__c = :accountName
        AND Arrive_Owner_Work_Location__c = :userWorkLocation
        AND Product_Type__c LIKE :userPro_Typestr
                    AND  Product_Type__c like : userPro_Typestr
    ];
    if (reSet.size() > 0) {
      for (Integer i = 0; i < reSet.size(); i++) {
        if (ErrorIdMap.containsKey(reSet[i].Bar_Code__c)) {
          // 跳过错误的消耗品明细
          continue;
        } else if (ExistIdMap.containsKey(reSet[i].Bar_Code__c)) {
                }
                else if(ExistIdMap.containsKey(reSet[i].Bar_Code__c) ){
          // 跳过已经处理的消耗品明细
          continue;
        } else {
          ConsumableorderdetailsRecordsdummy.add(
            new ConsumableorderdetailsInfo(reSet[i])
          );
                }
                else{
                    ConsumableorderdetailsRecordsdummy.add(new ConsumableorderdetailsInfo(reSet[i]));
          ExistIdMap.put(reSet[i].Bar_Code__c, reSet[i].Bar_Code__c);
        }
      }
@@ -595,36 +443,21 @@
    }
    if (notInlist.size() > 0) {
      // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'BarCode'+ notInlist + '不存在。'));
      return new ResponseBodyLWC(
        'Error',
        500,
        'BarCode' + notInlist + '不存在。',
        ''
      );
                return new ResponseBodyLWC('Error',500, 'BarCode'+ notInlist + '不存在。', '');
    }
    data.put(
      'ConsumableorderdetailsRecordsdummy',
      JSON.serialize(ConsumableorderdetailsRecordsdummy)
    );
    data.put(
      'ConsumableorderdetailsRecordserror',
      JSON.serialize(ConsumableorderdetailsRecordserror)
    );
        data.put('ConsumableorderdetailsRecordsdummy',JSON.serialize(ConsumableorderdetailsRecordsdummy));
        data.put('ConsumableorderdetailsRecordserror',JSON.serialize(ConsumableorderdetailsRecordserror));
    data.put('dataSize', ConsumableorderdetailsRecordsdummy.size());
    res.status = 'Success';
    res.code = 200;
    System.debug('res = ' + res);
    return res;
  }
  //取消拆盒确认
  @AuraEnabled
  public static ResponseBodyLWC cancelRemoveBoxConfirm(
    String saveConsumableorderdetailsRecordsdummy,
    String accountName,
    String userWorkLocation,
    String agencyProType
  ) {
    public static ResponseBodyLWC cancelRemoveBoxConfirm(String saveConsumableorderdetailsRecordsdummy,String accountName,String userWorkLocation,String agencyProType) {
    ResponseBodyLWC res = new ResponseBodyLWC();
    Map<String, object> data = new Map<String, object>();
    res.entity = data;
@@ -632,12 +465,10 @@
    userPro_Typestr = '%' + agencyProType + '%';
    accountName = accountName;
    userWorkLocation = userWorkLocation;
    List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy = (List<ConsumableorderdetailsInfo>) JSON.deserialize(
      saveConsumableorderdetailsRecordsdummy,
      List<ConsumableorderdetailsInfo>.class
    );
        List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy = (List<ConsumableorderdetailsInfo>)JSON.deserialize(saveConsumableorderdetailsRecordsdummy,List<ConsumableorderdetailsInfo>.class);
    List<Consumable_order_details2__c> ins = new List<Consumable_order_details2__c>();
        List<Consumable_order_details2__c> ins = New List<Consumable_order_details2__c>();
    Savepoint sp = Database.setSavepoint();
    if (ConsumableorderdetailsRecordsdummy.size() < 1) {
@@ -653,8 +484,7 @@
    try {
      //取得通番大于001的在库明细
      List<Consumable_order_details2__c> orderDetails2del = [
        SELECT
            List<Consumable_order_details2__c> orderDetails2del =  [SELECT
          Id,
          Box_Piece__c,
          RemoveBox_date__c,
@@ -665,19 +495,18 @@
        /*,ContractNo__c*/
        //add by rentx 2020-10-13 end
        FROM Consumable_order_details2__c
        WHERE
          Dealer_Arrive__c = TRUE
          AND Dealer_Shipment__c = FALSE
          AND Dealer_Saled__c = FALSE
          AND Dealer_Returned__c = FALSE
          AND Lose_Flag__c = FALSE
                    WHERE Dealer_Arrive__c = true
                    AND Dealer_Shipment__c = false
                    AND Dealer_Saled__c = false
                    AND Dealer_Returned__c = false
                    AND Lose_Flag__c = false
          AND Box_Piece__c = '个'
          AND RemoveBox_date__c != NULL
                    AND RemoveBox_date__c != null
          AND RemoveBox_No__c > 1
          AND Bar_Code__c IN :BarCodeList
                    AND Bar_Code__c in :BarCodeList
          AND Dealer_Info_text__c = :accountName
          AND Arrive_Owner_Work_Location__c = :userWorkLocation
          AND Product_Type__c LIKE :userPro_Typestr
                    AND  Product_Type__c like : userPro_Typestr
      ];
      List<Consumable_order_details2__c> orderlistdel = new List<Consumable_order_details2__c>();
@@ -693,34 +522,32 @@
      }
      //取得通番001的在库明细
      List<Consumable_order_details2__c> orderDetails2 = [
        SELECT
            List<Consumable_order_details2__c> orderDetails2 =  [SELECT
          Id,
          Box_Piece__c,
          RemoveBox_date__c,
          RemoveBox_No__c,
          Bar_Code__c,
          //add by rentx 2020-10-13 start
          ContractNo_text__c,
                        ContractNo_text__c
          /*,ContractNo__c*/
          //add by rebtx 2020-10-13 end
          // tcm start
          Consumable_order_minor__r.ContractNo__c
                    ,Consumable_order_minor__r.ContractNo__c
        // tcm end
        FROM Consumable_order_details2__c
        WHERE
          Dealer_Arrive__c = TRUE
          AND Dealer_Shipment__c = FALSE
          AND Dealer_Saled__c = FALSE
          AND Dealer_Returned__c = FALSE
          AND Lose_Flag__c = FALSE
                    WHERE Dealer_Arrive__c = true
                    AND Dealer_Shipment__c = false
                    AND Dealer_Saled__c = false
                    AND Dealer_Returned__c = false
                    AND Lose_Flag__c = false
          AND Box_Piece__c = '个'
          AND RemoveBox_date__c != NULL
                    AND RemoveBox_date__c !=null
          AND RemoveBox_No__c = 1
          AND Bar_Code__c IN :BarCodeList
                    AND Bar_Code__c in :BarCodeList
          AND Dealer_Info_text__c = :accountName
          AND Arrive_Owner_Work_Location__c = :userWorkLocation
          AND Product_Type__c LIKE :userPro_Typestr
                    AND  Product_Type__c like : userPro_Typestr
      ];
      for (Consumable_order_details2__c detail2tmp : orderDetails2) {
@@ -731,9 +558,7 @@
        updDetails2.RemoveBox_No__c = null;
        // tcm start
        if (
          String.isBlank(detail2tmp.Consumable_order_minor__r.ContractNo__c)
        ) {
                if (String.isBlank(detail2tmp.Consumable_order_minor__r.ContractNo__c)) {
          updDetails2.ContractNo_text__c = detail2tmp.ContractNo_text__c;
        } else {
          updDetails2.ContractNo_text__c = detail2tmp.Consumable_order_minor__r.ContractNo__c;
@@ -769,6 +594,7 @@
    }
  }
  @TestVisible
  class ConsumableorderdetailsInfo implements Comparable {
    public Consumable_order_details2__c esd { get; set; }
@@ -781,10 +607,7 @@
    //public String tracingCodeNo { get; set; }
    public String oldConsumableCount { get; set; }
    public String ErrorReason { get; set; }
    public ConsumableorderdetailsInfo(
      Consumable_order_details2__c e,
      string str
    ) {
        public ConsumableorderdetailsInfo(Consumable_order_details2__c e,string str) {
      esd = e;
      Prod = e.Consumable_Product__r;
      oldConsumableCount = e.name;