From 0f44cb1a0b7b36860e9ce81c1eac9e395d87f0b4 Mon Sep 17 00:00:00 2001 From: buli <137736985@qq.com> Date: 星期一, 05 六月 2023 13:53:18 +0800 Subject: [PATCH] mergecode into lex dtt --- force-app/main/default/classes/LexInventoryController.cls | 234 ++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 179 insertions(+), 55 deletions(-) diff --git a/force-app/main/default/classes/LexInventoryController.cls b/force-app/main/default/classes/LexInventoryController.cls index 2399a9b..564eded 100644 --- a/force-app/main/default/classes/LexInventoryController.cls +++ b/force-app/main/default/classes/LexInventoryController.cls @@ -1,4 +1,11 @@ public without sharing class LexInventoryController { + // page + public static Integer pagesize { get; set; } + public static Integer pageToken { get; set; } + public static String sortField { get; set; } + public static String sortOrder { get; set; } + + public static Integer totalcount { get; set; } //鍒嗛〉浣跨敤鏁版嵁 public static String fileName { get; set; } public static Integer size{get;set;} @@ -24,6 +31,7 @@ public static List<ConsumableorderdetailsInfo> consumableorderdetailsRecordserrordummy; // 涓㈠け鍜屽贰鍥炵殑,瀹為檯鐐掍綔鐢� @AuraEnabled public static List<List<ConsumableorderdetailsInfo>> consumableorderdetailsRecordsview { get; set; } // 浜у搧鍗曚綅鐨凩ist + public static List<Consumable_order_details2__c> InsListUp = New List<Consumable_order_details2__c>(); public static List<ConsumableorderdetailsInfo> consumableorderdetailsviewRecords; @@ -35,10 +43,10 @@ //list<String> notexitlist = new list<String>(); public static Map<String,String> reFindProduct = new Map<String,String>(); //鎺掑簭鐢� - public static String sortKey; - public static String preSortKey; - public static Boolean sortOrderAsc; - public static String[] sortOrder; + // public static String sortKey; + // public static String preSortKey; + // public static Boolean sortOrderAsc; + // public static String[] sortOrder; //private Set<String> carCodeListLose = new Set<String>(); //ProductCount_Res 鏈夛紝BarCodeListP 娌℃湁 /*****************缁忛攢鍟咺D******************/ private static String accountid = null; @@ -105,6 +113,8 @@ // 鐢婚潰鍒濆鍖� @AuraEnabled public static ResponseBodyLWC init() { + + ResponseBodyLWC res = new ResponseBodyLWC(); Map<String,object> data = new Map<String,object>(); res.entity = data; @@ -123,17 +133,17 @@ System.debug('pandiandetailsMap====>'+pandiandetailsMap); initStandardController(); makepagerecords(); - sortKey = '1'; - preSortKey = '1'; - sortOrderAsc = false; - sortOrder = new String[1]; - sortOrder = new String[]{' ',' ','鈫�'}; + // sortKey = '1'; + // preSortKey = '1'; + // sortOrderAsc = false; + // sortOrder = new String[1]; + // sortOrder = new String[]{' ',' ','鈫�'}; String userId = UserInfo.getUserId(); //String userId = '00510000006k82X'; //String userId = '00510000005QO75'; user Useracc = [select Accountid, Work_Location__c,UserPro_Type__c from user where id =:userId]; - accountid = Useracc.accountid; + accountid = Useracc.Accountid; userWorkLocation = Useracc.Work_Location__c; agencyProType = Useracc.UserPro_Type__c; if(String.isBlank(Useracc.UserPro_Type__c)){ @@ -147,17 +157,18 @@ List<ConsumableorderdetailsInfo> boxRecords = new List<ConsumableorderdetailsInfo>(); Map<String,ConsumableorderdetailsInfo> newMidBoxMap = new Map<String,ConsumableorderdetailsInfo>(); Map<String,ConsumableorderdetailsInfo> newMidPieceMap = new Map<String,ConsumableorderdetailsInfo>(); + //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy start //寮�濮嬪埗浣滆〃澶存暟鎹� - List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c, - SFDA_Status__c,Packing_list_manual__c, - Asset_Model_No__c - from Product2__c - //where Estimation_Entry_Possibility__c = '鈼�' - where Product_Type__c like : sqlagencyProType - ]; - for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){ - midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]); - } + // List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c, + // SFDA_Status__c,Packing_list_manual__c, + // Asset_Model_No__c + // from Product2__c + // //where Estimation_Entry_Possibility__c = '鈼�' + // where Product_Type__c like : sqlagencyProType + // ]; + // for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){ + // midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]); + // } //鏌ヨ搴撳瓨 杩藉姞杩斿搧搴撳瓨 List<Consumable_order_details2__c> ProductCount_Res = [select Id, Name,Consumable_Product__c, Bar_Code__c,Consumable_Product__r.Name__c, @@ -173,7 +184,28 @@ AND Product_Type__c like : sqlagencyProType AND Arrive_Owner_Work_Location__c =: userWorkLocation AND Dealer_Info_text__c = :accountName]; - //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ProductCount_Res ' + ProductCount_Res.size())); + //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy start + //寮�濮嬪埗浣滆〃澶存暟鎹� + Set<Id> Product2cIdSet = new Set<Id>(); + for(Consumable_order_details2__c con_or_d2item: ProductCount_Res){ + Product2cIdSet.add(con_or_d2item.Consumable_Product__c); + } + List<Product2__c> productCount_Unfull_bak = [select Id, Name,Name__c, + SFDA_Status__c,Packing_list_manual__c, + Asset_Model_No__c + from Product2__c + //where Estimation_Entry_Possibility__c = '鈼�' + where Id in:Product2cIdSet + and Product_Type__c like : sqlagencyProType + ]; + for(integer i = 0;i < productCount_Unfull_bak.size() ; i++){ + midMap.put(productCount_Unfull_bak[i].Id, productCount_Unfull_bak[i]); + } + system.debug('productCount_Unfull_bak'+productCount_Unfull_bak.size()); + // String erro='productCount_Unfull_bak:'+productCount_Unfull_bak.size(); + // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR, erro)); + //DB202302357027 娑堣�楀搧杩芥函绯荤粺鏃犳硶姝e父浣跨敤鈥斺�旂洏鐐归〉闈㈡搷浣滃嵆鎶ラ敊 fy end + // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'ProductCount_Res ' + ProductCount_Res.size())); for(Integer i = 0 ; i< ProductCount_Res.size();i++){ //鐒跺悗寰幆CountDel鍋欱ox鍜宲iece2涓猰ap if(MidMap.containsKey(ProductCount_Res[i].Consumable_Product__c) && ProductCount_Res[i].Box_Piece__c == '鐩�'){ @@ -236,23 +268,17 @@ } //consumableorderdetailsCount = consumableorderdetailsRecords.size(); listCut(); - + - system.debug('ConsumableorderdetailsRecordsview'+ConsumableorderdetailsRecordsview); - System.debug('ConsumableorderdetailsRecordsview==>'+ConsumableorderdetailsRecordsview); - // data.put('ConsumableorderdetailsRecordsview',ConsumableorderdetailsRecordsview); - - // for(ConsumableorderdetailsInfo con: ConsumableorderdetailsRecordsview){ - // consumableorderdetailsviewRecords.add(con); - // } - System.debug('consumableorderdetailsviewRecords===>'+consumableorderdetailsviewRecords); - System.debug('consumableorderdetailsRecords===>'+consumableorderdetailsRecords); + data.put('ConsumableorderdetailsRecordsview',JSON.serialize(ConsumableorderdetailsRecordsview)); data.put('userWorkLocation',userWorkLocation); data.put('agencyProType',agencyProType); data.put('accountName',accountName); + data.put('accountid',accountid); + data.put('consumableorderdetailsRecords',JSON.serialize(consumableorderdetailsRecords)); res.status = 'Success'; res.code = 200; @@ -319,7 +345,12 @@ //========20160311======ADD_End================================== // BarCode褰曞叆 @AuraEnabled - public static ResponseBodyLWC searchConsumableorderdetails(String agencyProType,String userWorkLocation,String accountName,String barcode,String consumableorderdetailsRecordsLWC){ + public static ResponseBodyLWC searchConsumableorderdetails(String agencyProType,String userWorkLocation,String accountName,String barcode,String consumableorderdetailsRecordsLWC,Integer pageSizeLWC, Integer pageTokenLWC, String sortFieldLWC, String sortOrderLWC){ + pageSize = pageSizeLWC; + pageToken = pageTokenLWC; + sortField = sortFieldLWC; + sortOrder = sortOrderLWC; + System.debug('===>consumableorderdetailsRecordsLWC'+consumableorderdetailsRecordsLWC); List<ConsumableorderdetailsInfo> consumableorderdetailsRecords = (List<ConsumableorderdetailsInfo>)JSON.deserialize(consumableorderdetailsRecordsLWC,List<ConsumableorderdetailsInfo>.class); // ConsumableorderdetailsInfo[] consumableorderdetailsRecords=(List<ConsumableorderdetailsInfo>)JSON.deserialize(consumableorderdetailsRecordsLWC,List<ConsumableorderdetailsInfo>.class); @@ -330,10 +361,7 @@ sqlagencyProType = '%' + agencyProType + '%'; - // consumableorderdetailsRecords = consumableorderdetailsRecordsLWC; - System.debug('consumableorderdetailsRecords===>'+consumableorderdetailsRecords); - System.debug('agencyProType===>'+sqlagencyProType); - System.debug('accountName===>'+accountName); + /* BarCodelist鍋氭垚 */ @@ -490,6 +518,7 @@ } initStandardController(); showcod2nid = cod2s(); + for (Consumable_order_details2__c cod2 : showcod2nid) { codPageRecords.add(new ConsumableorderdetailsInfo(cod2,pandiandetailsMap.get(cod2.Id))); } @@ -518,11 +547,47 @@ if(pandiandetailsListMid.size() > 0){ pandiandetailsListShow.add(pandiandetailsListMid); } - res.code = 400; - res.status = 'fail'; - res.msg = 'barcode涓虹┖'; - return res; - // return; + + //鍒嗛〉 + PaginatedAccounts paginatedAccounts = new PaginatedAccounts(); + totalCount = codPageRecords.size(); + paginatedAccounts.nextPageToken = (pageToken + pageSize < totalCount) ? pageToken + pageSize : null; + paginatedAccounts.recordStart = pageToken + 1; + paginatedAccounts.pageNumber = pageToken / pageSize + 1; + Integer recordEnd = pageSize * paginatedAccounts.pageNumber; + paginatedAccounts.recordEnd = totalCount >= recordEnd ? recordEnd : totalCount; + paginatedAccounts.totalRecords = totalCount; + + Integer startIdx; + Integer endIdx; + List<ConsumableorderdetailsInfo> pageCodeRecords = new List<ConsumableorderdetailsInfo>(); + startIdx = pageToken; + endIdx = startIdx + pageSize; + if (endIdx > codPageRecords.size()) { + endIdx = codPageRecords.size(); + } + for (Integer i = startIdx; i < endIdx; i++) { + pageCodeRecords.add(codPageRecords.get(i)); + } + + data.put('paginatedAccounts', paginatedAccounts); + data.put('pageCodeRecords', pageCodeRecords); + + //end + data.put('codPageRecords',JSON.serialize(codPageRecords)); + data.put('consumableorderdetailsRecords',JSON.serialize(consumableorderdetailsRecords)); + data.put('consumableorderdetailsRecordsview',JSON.serialize(consumableorderdetailsRecordsview)); + data.put('pandiandetailsMap',pandiandetailsMap); + System.debug('iSinventory===>'+iSinventory); + System.debug('codPageRecords===>'+codPageRecords); + data.put('iSinventory',JSON.serialize(iSinventory)); + data.put('reSet1',reSet1); + System.debug('reSet1===>'+reSet1); + res.code = 200; + res.status = 'Success1'; + + return res; + } @@ -552,6 +617,7 @@ AND Arrive_Owner_Work_Location__c =: userWorkLocation AND Dealer_Info_text__c = :accountName order by Name]; + System.debug('reSet===>'+reSet); Map<String, Integer> pandianProdIdCountMap = new Map<String, Integer>(); // ProdId 鍗樹綅 // 20200509 add gzw 璁板綍闇�瑕侀攢瀛樻暟閲� Map<String, Integer> pandianoverdueCountMap = new Map<String, Integer>(); // ProdId 鍗樹綅 @@ -928,6 +994,33 @@ if(pandiandetailsListMid.size() > 0){ pandiandetailsListShow.add(pandiandetailsListMid); } + //鍒嗛〉 + PaginatedAccounts paginatedAccounts = new PaginatedAccounts(); + totalCount = codPageRecords.size(); + paginatedAccounts.nextPageToken = (pageToken + pageSize < totalCount) ? pageToken + pageSize : null; + paginatedAccounts.recordStart = pageToken + 1; + paginatedAccounts.pageNumber = pageToken / pageSize + 1; + Integer recordEnd = pageSize * paginatedAccounts.pageNumber; + paginatedAccounts.recordEnd = totalCount >= recordEnd ? recordEnd : totalCount; + paginatedAccounts.totalRecords = totalCount; + + Integer startIdx; + Integer endIdx; + List<ConsumableorderdetailsInfo> pageCodeRecords = new List<ConsumableorderdetailsInfo>(); + startIdx = pageToken; + endIdx = startIdx + pageSize; + if (endIdx > codPageRecords.size()) { + endIdx = codPageRecords.size(); + } + for (Integer i = startIdx; i < endIdx; i++) { + pageCodeRecords.add(codPageRecords.get(i)); + } + + data.put('paginatedAccounts', paginatedAccounts); + data.put('pageCodeRecords', pageCodeRecords); + + //end + System.debug('=====>codPageRecords2'+codPageRecords); System.debug('=====>consumableorderdetailsRecords'+consumableorderdetailsRecords); data.put('codPageRecords',JSON.serialize(codPageRecords)); @@ -935,23 +1028,24 @@ System.debug('iSinventory===>'+iSinventory); data.put('iSinventory',JSON.serialize(iSinventory)); System.debug('pandiandetailsMap===>'+pandiandetailsMap); - data.put('pandiandetailsMap',JSON.serialize(pandiandetailsMap)); - - + data.put('pandiandetailsMap',pandiandetailsMap); + data.put('reSet',reSet); + data.put('consumableorderdetailsRecordsview',JSON.serialize(consumableorderdetailsRecordsview)); + System.debug('=====>consumableorderdetailsRecordsview'+consumableorderdetailsRecordsview); res.code = 200; res.status = 'Sucess'; return res; } - - public static ResponseBodyLWC saveConfirm(Boolean iSinventory,String consumableorderdetailsRecordsLWC) { - save(iSinventory,consumableorderdetailsRecordsLWC); - // LexInventoryController.oinoi - return null; - } + // 淇濆瓨鎸夐挳 @AuraEnabled - public static ResponseBodyLWC save(Boolean iSinventory,String consumableorderdetailsRecordsLWC) { + public static ResponseBodyLWC save(Boolean iSinventory,String consumableorderdetailsRecordsLWC,String accountid,String agencyProType,Map<Id,String> pandiandetailsMap,List<Consumable_order_details2__c> reSet) { List<ConsumableorderdetailsInfo> consumableorderdetailsRecords = (List<ConsumableorderdetailsInfo>)JSON.deserialize(consumableorderdetailsRecordsLWC,List<ConsumableorderdetailsInfo>.class); + agencyProType = agencyProType; + accountid =accountid; + pandiandetailsMap = pandiandetailsMap; + reSet =reSet; + System.debug('pandiandetailsMap===>'+pandiandetailsMap); ResponseBodyLWC res = new ResponseBodyLWC(); Map<String, object> data = new Map<String, object>(); @@ -959,7 +1053,7 @@ // 璺宠繃鏄庣粏2涓嶅繀瑕佹洿鏂� StaticParameter.EscapeConsumableOrderDetail2Trigger = true; if(!iSinventory){ - return new ResponseBodyLWC('Error',500, '璇峰厛鐐广�怋arCode褰曞叆銆�', ''); + return new ResponseBodyLWC('Error',500, '璇峰厛褰曞叆BarCode', ''); // ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'璇峰厛鐐广�怋arCode褰曞叆銆�')); // return null; } @@ -1071,15 +1165,17 @@ ControllerUtil.updateOrderDetailsSatus(InsListUp);// Commented By DTT - Li Jun for testing 20230407 } - }catch (Exception ex) { + }catch (Exception e) { Database.rollback(sp); - ApexPages.addMessages(ex); - return null; + // ApexPages.addMessages(ex); + return new ResponseBodyLWC('Error',500, e.getMessage()+e.getLineNumber(), ''); + // return null; } // FIXME impliment BarCodeListAdjust /************************************************************************************************/ // return ProS(); data.put('eSetId',eSetId); + data.put('InsListUp',InsListUp); res.status = 'Success'; res.code = 200; System.debug('res = ' + res); @@ -1098,23 +1194,51 @@ Pagereference pr = page.InventoryCSV; return pr; } + //鍒嗛〉Bean + public class PaginatedAccounts { + @AuraEnabled + public Integer nextPageToken; + @AuraEnabled + public Integer pageNumber { get; set; } + @AuraEnabled + public Integer totalRecords { get; set; } + @AuraEnabled + public Integer recordStart { get; set; } + @AuraEnabled + public Integer recordEnd { get; set; } + } // Data Bean class ConsumableorderdetailsInfo implements Comparable { + @AuraEnabled public Boolean check { get; set; } + @AuraEnabled public Consumable_orderdetails__c orderdetails1 { get; set; } + @AuraEnabled public Consumable_order_details2__c orderdetails2 { get; set; } + @AuraEnabled public Product2__c Prod { get; set; } + @AuraEnabled public Decimal countid { get; set; } + @AuraEnabled public String ProdId{get;set;} + @AuraEnabled public Decimal Pandian { get; set; } + @AuraEnabled public Decimal Diff { get; set; } + @AuraEnabled public Decimal refind { get; set; } + @AuraEnabled public String DiffReason { get; set; } + @AuraEnabled public Boolean canSelect { get; set; } + @AuraEnabled public Boolean sortBy { get; set; } + @AuraEnabled public Decimal limitCount { get; set; } + @AuraEnabled public Decimal overlimitCount { get; set; } + @AuraEnabled public String boxPiece { get; set; } public ConsumableorderdetailsInfo(Consumable_order_details2__c e,string str) { -- Gitblit v1.9.1