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