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/LexArriveGoodsController.cls | 481 +++++++++++++++++++---------------------------------- 1 files changed, 174 insertions(+), 307 deletions(-) diff --git a/force-app/main/default/classes/LexArriveGoodsController.cls b/force-app/main/default/classes/LexArriveGoodsController.cls index 0d5ff9d..b2c79cc 100644 --- a/force-app/main/default/classes/LexArriveGoodsController.cls +++ b/force-app/main/default/classes/LexArriveGoodsController.cls @@ -1,234 +1,18 @@ public without sharing class LexArriveGoodsController { - public static String barcode { get; set; } - public static Consumable_order__c coc { get; set; } - /*****************鐢婚潰琛ㄧずBean******************/ - public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>(); - public static List<ConsumableorderdetailsInfo> consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>(); - public static List<ConsumableorderdetailsInfo> consumableInventory { get; set; } - public static List<ConsumableorderdetailsInfo> detailsSummary { get; set; } - public static List<ConsumableorderdetailsInfo> consumableInventoryUse = new List<ConsumableorderdetailsInfo>(); - //鏇存柊鏄庣粏鍙栨秷鏃堕棿 - public static List<Consumable_order_details2__c> consumableorderdetails2Cancle = new List<Consumable_order_details2__c>(); - // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 start - public static Map<String, Consumable_order_details2__c> orderdetails2trMap = new Map<String, Consumable_order_details2__c>(); - // 鏇存柊鍊熻皟淇℃伅 add by gzw 2020-0-415 end - public static List<Consumable_order_details2__c> consumableorderdetails2Insert = new List<Consumable_order_details2__c>(); - public static List<Consumable_order_details2__c> consumableorderdetails2Nobox = new List<Consumable_order_details2__c>(); - public static List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordserror { get; set; } - public static transient List<ConsumableorderdetailsInfo> ConsumableorderdetailsRecordsdummy { get; set; } - public static List<ConsumableorderdetailsInfo> ShowGoodsofReturnList { get; set; } - public static List<ConsumableorderdetailsInfo> ShowGoodsofRemoveBoxReturnList { get; set; } - //add by rentx 20210602 CHAN-C3K4ZQ - public static List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview { get; set; } - //add by rentx 20210602 CHAN-C3K4ZQ - public static List<String> GrList = new List<String>(); - //瓒呭嚭瀹氳揣鏁伴噺鐨勪骇鍝� - public static List<String> cancellationProList = new List<String>(); - //閿欒淇℃伅 - public static String alertMessage { get; set; } - public static integer getinventorysize() { - return consumableInventory.size(); - } - public static integer geterrorsize() { - return ConsumableorderdetailsRecordserror.size(); - } - public static Set<String> noboxBarcodeList = new Set<String>(); - public static transient Map<String, String> ExistIdMap = new Map<String, String>(); - public static transient Map<String, String> ErrorIdMap = new Map<String, String>(); - public static transient Map<String, String> AllMap = new Map<String, String>(); - public static Map<String, String> otherAgencyMap = new Map<String, String>(); - public static transient Map<String, String> barMcodeMap = new Map<String, String>(); - public static Map<String, Integer> BarcodeCntMap = new Map<String, Integer>(); - public static transient List<String> BarCodeListP = new List<String>(); - public static Map<String, Decimal> orderProductCunMap = new Map<String, Decimal>(); - public static Map<String, Decimal> orderProductArrivedCunMap = new Map<String, Decimal>(); - public static Map<String, Decimal> orderWantArriveCunMap = new Map<String, Decimal>(); - //瓒呭嚭鍨嬪彿鍜屾暟閲� - public static Map<String, Decimal> overOrderCunMap = new Map<String, Decimal>(); - //瓒呭嚭BARCODE鍜屽瀷鍙� - public static Map<String, List<String>> overOrderBARcodeCunMap = new Map<String, List<String>>(); - public static List<String> overOrderBARcodeTTTTTT = new List<String>(); - //涓嶇鍚堢殑barcode鍜屽瀷鍙� - public static Map<String, List<String>> notEqualBARcodeCunMap = new Map<String, List<String>>(); - public static List<String> overOrderBARcodeSSSSSS = new List<String>(); - public static List<String> productList = new List<String>(); - public static List<String> notInlist = new List<String>(); - //涓嶉�夋嫨璁㈠崟鏃朵繚瀛樿鍗旾D銆佷骇鍝佸瀷鍙风敤 - //搴撳瓨鐧诲綍浣跨敤 - public static List<String> notInStorelist = new List<String>(); - public static List<String> exitBarCodeList = new List<String>(); - - public static Map<String, String> HosErrorMap = new Map<String, String>(); - public static List<String> HosErrorList = new List<String>(); - public static String baseUrl { get; private set; } - public static String ESetId { get; set; } - public static String arriveId = ''; - private static String accountid = null; - private static String accountName = null; - public static Decimal orderCountAll = 0; - public static Decimal orderCountNotarrive = 0; - private static id return_Order_id = null; - private static id inventory_Order_id = null; - public static boolean ReturnFLGbln { get; set; } - public static boolean saveFLGbln { get; set; } - public static String ArrType { get; set; } - // 鐧诲綍鑰呭伐浣滃湴 - private static String userWorkLocation; - - //鐢ㄦ埛浜у搧鍖哄垎 - public static String userPro_Typestr = null; - public static String userPro_Type = null; - public static String product_Type = null; - public static Boolean EngFlag = false; - public static Boolean ETFlag = false; - + + //鍒濆鍖� @AuraEnabled - public static Results init(String arrTypeStr, String eSetIdStr) { + public static Results init(String arrType, String eSetId) { Results results = new Results(); - ESetId = eSetIdStr; - ArrType = arrTypeStr; - ConsumableorderdetailsRecords = new List<ConsumableorderdetailsInfo>(); - ConsumableorderdetailsRecordserror = new List<ConsumableorderdetailsInfo>(); - ConsumableorderdetailsRecordsdummy = new List<ConsumableorderdetailsInfo>(); - consumableInventory = new List<ConsumableorderdetailsInfo>(); - consumableorderdetailsRecordsUse = new List<ConsumableorderdetailsInfo>(); - consumableInventoryUse = new List<ConsumableorderdetailsInfo>(); - consumableorderdetails2Cancle = new List<Consumable_order_details2__c>(); - orderdetails2trMap = new Map<String, Consumable_order_details2__c>(); - detailsSummary = new List<ConsumableorderdetailsInfo>(); - saveFLGbln = false; - consumableorderdetailsRecordsview = new List<List<ConsumableorderdetailsInfo>>(); + results.isNoteStay = LexUtility.getIsNoteStay(); try { - String userId = UserInfo.getUserId(); - List<user> Useracc = new List<user>(); - Useracc = [SELECT accountid, Work_Location__c, UserPro_Type__c FROM user WHERE id = :userId]; - accountid = Useracc[0].accountid; - userPro_Type = Useracc[0].UserPro_Type__c; - if (String.isBlank(userPro_Type)) { - userPro_Type = 'ET'; - } - - if (userPro_Type == 'ENG') { - product_Type = 'ET'; - EngFlag = true; - } else { - product_Type = 'ENG'; - ETFlag = true; - } - userPro_Typestr = '%' + userPro_Type + '%'; - userWorkLocation = Useracc[0].Work_Location__c; - system.debug('userWorkLocation' + userWorkLocation); - List<account> accountInfo = [SELECT Name FROM account WHERE id = :accountid]; - accountName = accountInfo[0].Name; - system.debug('accountName' + accountName); - coc = new Consumable_order__c(); - if (ArrType == 'ReG') { - ReturnFLGbln = true; - } else { - ReturnFLGbln = false; - } - if (ESetId != '' && ESetId != null) { - List<Consumable_order__c> qs = new List<Consumable_order__c>(); - List<Consumable_order_details2__c> reSet1 = new List<Consumable_order_details2__c>(); - List<Consumable_Orderdetails__c> reSet = new List<Consumable_Orderdetails__c>(); - qs = [ - SELECT - Id, - Name, - Order_status__c, - Dealer_Info__c, - Deliver_date__c, - ReturnGs_Upload_Date__c, - Order_Reason__c, - Order_date__c, - Contract_application_decision__c, - Order_type__c, - Total_num__c, - OrderNumber_arrived__c, - Delivery_detail_count__c, - OrderNumber_notarrive__c, - orderPattern__c - FROM Consumable_order__c - WHERE Id = :ESetId AND Order_Owner_WorkLocal__c = :userWorkLocation AND Dealer_Info__c = :accountid - ]; - if (qs.size() > 0) { - coc = qs[0]; - orderCountAll = coc.Total_num__c; - orderCountNotarrive = coc.OrderNumber_notarrive__c; - } - //浜у搧瀹氳揣鏁伴噺 - reSet = [ - SELECT Asset_Model_No__c, Consumable_order__c, Consumable_count__c - FROM Consumable_Orderdetails__c - WHERE Consumable_order__c = :ESetId AND Order_Owner_WorkLocal__c = :userWorkLocation - ]; - for (Integer i = 0; i < reSet.size(); i++) { - productList.add(reSet[i].Asset_Model_No__c); - orderProductCunMap.put(reSet[i].Asset_Model_No__c, reSet[i].Consumable_count__c); - orderProductArrivedCunMap.put(reSet[i].Asset_Model_No__c, 0); - orderWantArriveCunMap.put(reSet[i].Asset_Model_No__c, 0); - overOrderCunMap.put(reSet[i].Asset_Model_No__c, 0); - overOrderBARcodeCunMap.put(reSet[i].Asset_Model_No__c, overOrderBARcodeTTTTTT); - } - reSet1 = [ - SELECT - Id, - Name, - Intra_Trade_List_RMB__c, - Asset_Model_No__c, - Consumable_Product__c, - Consumable_Product__r.Name, - Consumable_Product__r.Name__c, - Sterilization_limit__c, - Deliver_date__c, - Bar_Code__c, - Arrive_date__c, - Send_Date__c, - Consumable_order_minor__r.Name, - Consumable_order_minor__c, - Dealer_Arrive__c, - Guarantee_period_for_products__c, - CFDA_Status__c, - Box_Piece__c, - Rrturn_count__c, - ProductPacking_list_manual__c, - Report_Product_Approbation__c, - Report_Product_Expiration__c, - ContractNo_text__c, - Consumable_order_minor__r.ContractNo__c - FROM Consumable_order_details2__c - WHERE - recordtypeid = :System.Label.RT_ConOrderDetail2_Delivery - AND Arrive_Owner_Work_Location__c = :userWorkLocation - AND Consumable_order_minor__c = :ESetId - AND Dealer_Arrive__c = TRUE - AND Box_Piece__c != '涓�' - ]; - for (Integer i = 0; i < reSet1.size(); i++) { - if (orderProductArrivedCunMap.containsKey(reSet1[i].Asset_Model_No__c)) { - orderProductArrivedCunMap.put( - reSet1[i].Asset_Model_No__c, - orderProductArrivedCunMap.get(reSet1[i].Asset_Model_No__c) + 1 - ); - } - } - } - results.accountId = accountid; - results.accountName = accountName; - results.userProType = userPro_Type; - results.userProTypestr = userPro_Typestr; - results.productType = product_Type; - results.saveFLGbln = saveFLGbln; - results.returnFLGbln = ReturnFLGbln; - results.engFlag = EngFlag; - results.etFlag = ETFlag; - results.userWorkLocation = userWorkLocation; - results.productList = productList; - results.orderProductCunMap = orderProductCunMap; - results.orderProductArrivedCunMap = orderProductArrivedCunMap; - results.orderWantArriveCunMap = orderWantArriveCunMap; - results.overOrderCunMap = overOrderCunMap; - results.overOrderBARcodeCunMap = overOrderBARcodeCunMap; + ArriveGoodsController arrController = new ArriveGoodsController(eSetId, arrType); + arrController.isLwc = true; + arrController.init(); + results.arrGoodCon = JSON.serialize(arrController); + results.coc = arrController.coc; + results.saveFLGbln = arrController.saveFLGbln; + results.returnFLGbln = arrController.ReturnFLGbln; results.result = 'Success'; } catch (Exception e) { results.result = 'Fail'; @@ -237,16 +21,162 @@ return results; } + //鎼滅储浜у搧 @AuraEnabled - public static Results methodName() { + public static Results searchProduct(String barcode, String arrControllerStr) { Results results = new Results(); try { - results.result = 'Success'; + System.debug('arrControllerStr:'+arrControllerStr); + ArriveGoodsController arrController = (ArriveGoodsController)JSON.deserialize(arrControllerStr, ArriveGoodsController.class); + arrController.barcode = barcode; + arrController.returnError = null; + arrController.warningList = new List<String>(); + arrController.errorList = new List<String>(); + arrController.SearchPro(); + results.arrGoodCon = JSON.serialize(arrController); + if(arrController.returnError != null && arrController.returnError != ''){ + results.result = 'Fail'; + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.errorMsg = arrController.returnError; + }else { + results.coc = arrController.coc; + results.saveFLGbln = arrController.saveFLGbln; + results.returnFLGbln = arrController.ReturnFLGbln; + results.detailsSummary = changeType1(arrController.detailsSummary); + results.consumableorderdetailsRecords = changeType1(arrController.ConsumableorderdetailsRecords); + results.showGoodsofReturnList = changeType1(arrController.ShowGoodsofReturnList); + results.consumableInventory = changeType1(arrController.consumableInventory); + results.consumableorderdetailsRecordserror = changeType1(arrController.ConsumableorderdetailsRecordserror); + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.result = 'Success'; + } + } catch (Exception e) { + results.result = 'Fail'; + results.errorMsg = e.getLineNumber() + '---' + e.getMessage() + '---' + e.getStackTraceString(); + } + return results; + } + + //鍒拌揣纭 + @AuraEnabled + public static Results arriveGoodsConfim(String arrControllerStr) { + Results results = new Results(); + try { + ArriveGoodsController arrController = (ArriveGoodsController)JSON.deserialize(arrControllerStr, ArriveGoodsController.class); + arrController.returnError = null; + arrController.warningList = new List<String>(); + arrController.errorList = new List<String>(); + Pagereference page = arrController.ArriveGoodsConfim(); + results.arrGoodCon = JSON.serialize(arrController); + if(arrController.returnError != null && arrController.returnError != ''){ + results.result = 'Fail'; + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.errorMsg = arrController.returnError; + }else { + if(arrController.urlType == 'UnabletoEdit'){ + results.url = '/lexarrivegsdetails?EsetId='+arrController.arriveId; + } + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.result = 'Success'; + } } catch (Exception e) { results.result = 'Fail'; results.errorMsg = e.getLineNumber() + '---' + e.getMessage(); } return results; + } + + //鐧诲綍杩斿搧 + @AuraEnabled + public static Results updateGoodsOfReturn(String arrControllerStr, String showGoodsofReturnListStr) { + Results results = new Results(); + try { + List<ConsumableorderdetailsInfo> showGoodsofReturnList = (List<ConsumableorderdetailsInfo>)JSON.deserialize(showGoodsofReturnListStr, List<ConsumableorderdetailsInfo>.class); + ArriveGoodsController arrController = (ArriveGoodsController)JSON.deserialize(arrControllerStr, ArriveGoodsController.class); + arrController.ShowGoodsofReturnList = changeType2(showGoodsofReturnList); + arrController.returnError = null; + arrController.warningList = new List<String>(); + arrController.errorList = new List<String>(); + StaticParameter.ConsumableOrderTrigger = true; //Add by Li Jun for bypass ConsumableOrderTrigger 20230616 + Pagereference page = arrController.UpdateGoodsOfReturn(); + results.arrGoodCon = JSON.serialize(arrController); + if(arrController.returnError != null && arrController.returnError != ''){ + results.result = 'Fail'; + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.errorMsg = arrController.returnError; + }else { + if(arrController.urlType == 'ToReturnGoodsPage'){ + results.url = '/detail/'+arrController.return_Order_id; + } + if(arrController.urlType == 'ToInventoryGoodsPage'){ + results.url = '/detail/'+arrController.inventory_Order_id; + } + results.errorMsgList = arrController.errorList; + results.warningMsgList = arrController.warningList; + results.result = 'Success'; + } + } catch (Exception e) { + results.result = 'Fail'; + results.errorMsg = e.getLineNumber() + '---' + e.getMessage(); + } + return results; + } + + public static List<ConsumableorderdetailsInfo> changeType1(List<ArriveGoodsController.ConsumableorderdetailsInfo> conList){ + List<ConsumableorderdetailsInfo> conList1 = new List<ConsumableorderdetailsInfo>(); + if(conList != null){ + for(ArriveGoodsController.ConsumableorderdetailsInfo con : conList){ + ConsumableorderdetailsInfo con1 = new ConsumableorderdetailsInfo(); + con1.esd = con.esd; + con1.Prod = con.Prod; + con1.ProductName = con.ProductName; + con1.barCodeNo = con.barCodeNo; + con1.sterilizationlimitDate = con.sterilizationlimitDate; + con1.serialNoorLotNo = con.serialNoorLotNo; + con1.tracingCodeNo = con.tracingCodeNo; + con1.ReturnReason = con.ReturnReason; + con1.oldConsumableCount = con.oldConsumableCount; + con1.ErrorReason = con.ErrorReason; + con1.canEdit = con.canEdit; + con1.intMark = con.intMark; + con1.arriveAmount = con.arriveAmount; + con1.arrivedCount = con.arrivedCount; + con1.ReportProductExpirationDate = con.ReportProductExpirationDate; + conList1.add(con1); + } + } + return conList1; + } + + public static List<ArriveGoodsController.ConsumableorderdetailsInfo> changeType2(List<ConsumableorderdetailsInfo> conList){ + List<ArriveGoodsController.ConsumableorderdetailsInfo> conList1 = new List<ArriveGoodsController.ConsumableorderdetailsInfo>(); + if(conList != null){ + for(ConsumableorderdetailsInfo con : conList){ + ArriveGoodsController.ConsumableorderdetailsInfo con1 = new ArriveGoodsController.ConsumableorderdetailsInfo(); + con1.esd = con.esd; + con1.Prod = con.Prod; + con1.ProductName = con.ProductName; + con1.barCodeNo = con.barCodeNo; + con1.sterilizationlimitDate = con.sterilizationlimitDate; + con1.serialNoorLotNo = con.serialNoorLotNo; + con1.tracingCodeNo = con.tracingCodeNo; + con1.ReturnReason = con.ReturnReason; + con1.oldConsumableCount = con.oldConsumableCount; + con1.ErrorReason = con.ErrorReason; + con1.canEdit = con.canEdit; + con1.intMark = con.intMark; + con1.arriveAmount = con.arriveAmount; + con1.arrivedCount = con.arrivedCount; + con1.ReportProductExpirationDate = con.ReportProductExpirationDate; + conList1.add(con1); + } + } + return conList1; } public class Results { @@ -255,45 +185,31 @@ @AuraEnabled public String errorMsg; @AuraEnabled - public String accountId; + public String url; @AuraEnabled - public String accountName; + public String arrGoodCon; @AuraEnabled - public String userProType; - @AuraEnabled - public String userProTypestr; - @AuraEnabled - public String productType; - @AuraEnabled - public String userWorkLocation; - @AuraEnabled - public String inventoryOrderId; - @AuraEnabled - public String returnOrderId; - @AuraEnabled - public String arriveId; + public Consumable_order__c coc; @AuraEnabled public Boolean returnFLGbln; @AuraEnabled public Boolean saveFLGbln; @AuraEnabled - public Boolean engFlag; + public List<ConsumableorderdetailsInfo> detailsSummary; @AuraEnabled - public Boolean etFlag; + public List<ConsumableorderdetailsInfo> consumableorderdetailsRecords; @AuraEnabled - public Consumable_order__c coc; + public List<ConsumableorderdetailsInfo> showGoodsofReturnList; @AuraEnabled - public List<String> productList; + public List<ConsumableorderdetailsInfo> consumableInventory; @AuraEnabled - public Map<String, Decimal> orderProductCunMap; + public List<ConsumableorderdetailsInfo> consumableorderdetailsRecordserror; @AuraEnabled - public Map<String, Decimal> orderProductArrivedCunMap; + public List<String> errorMsgList; @AuraEnabled - public Map<String, Decimal> orderWantArriveCunMap; + public List<String> warningMsgList; @AuraEnabled - public Map<String, Decimal> overOrderCunMap; - @AuraEnabled - public Map<String, List<String>> overOrderBARcodeCunMap; + public Boolean isNoteStay; } public class ConsumableorderdetailsInfo implements Comparable { @@ -325,65 +241,16 @@ public Decimal arriveAmount { get; set; } @AuraEnabled public Decimal arrivedCount { get; set; } - + @AuraEnabled public String ReportProductExpirationDate { get; set; } - public ConsumableorderdetailsInfo(Consumable_order_details2__c e, string str) { - esd = e; - Prod = e.Consumable_Product__r; - oldConsumableCount = e.name; - ErrorReason = str; - intMark = 1; - if (e.Report_Product_Expiration__c != null) { - ReportProductExpirationDate = e.Report_Product_Expiration__c.format(); - } - } - public ConsumableorderdetailsInfo(Consumable_order_details2__c e) { - canEdit = false; - if (e.Box_Piece__c == '鐩�') { - e.Rrturn_count__c = 1; - canEdit = true; - } - esd = e; - Prod = e.Consumable_Product__r; - oldConsumableCount = e.name; - if (e.Report_Product_Expiration__c != null) { - ReportProductExpirationDate = e.Report_Product_Expiration__c.format(); - } + public ConsumableorderdetailsInfo(){ + } - public ConsumableorderdetailsInfo(Product2__c e, List<String> barinfoL) { - esd = new Consumable_order_details2__c(); - ProductName = e.Name__c; - Prod = e; - barCodeNo = barinfoL[0]; - if (String.isNotBlank(barinfoL[1])) { - sterilizationlimitDate = Date.valueOf(barinfoL[1]); - } - serialNoorLotNo = barinfoL[2]; - tracingCodeNo = barinfoL[3]; - ReturnReason = ''; - } - - public ConsumableorderdetailsInfo(Consumable_order_details2__c e, List<String> barinfoL) { - esd = e; - Prod = e.Consumable_Product__r; - barCodeNo = barinfoL[0]; - if (String.isNotBlank(barinfoL[1])) { - sterilizationlimitDate = Date.valueOf(barinfoL[1]); - } - serialNoorLotNo = barinfoL[2]; - tracingCodeNo = barinfoL[3]; - if (e.Report_Product_Expiration__c != null) { - ReportProductExpirationDate = e.Report_Product_Expiration__c.format(); - } - } - public ConsumableorderdetailsInfo(Product2__c e) { - Prod = e; - } // 鎺掑簭 public Integer compareTo(Object compareTo) { return null; } } -} +} \ No newline at end of file -- Gitblit v1.9.1