From 80a3f59e2d3df07805bc67e329300b8de90a5b3a Mon Sep 17 00:00:00 2001 From: buli <137736985@qq.com> Date: 星期二, 11 七月 2023 14:13:08 +0800 Subject: [PATCH] Merge branch 'LEXCommunityLiJun' into LEXUpgrade2023-Deloitte --- force-app/main/default/classes/LexUpAccountProLimit.cls | 129 ++++++++++++++++++++++--------------------- 1 files changed, 66 insertions(+), 63 deletions(-) diff --git a/force-app/main/default/classes/LexUpAccountProLimit.cls b/force-app/main/default/classes/LexUpAccountProLimit.cls index c7288c6..37d85bc 100644 --- a/force-app/main/default/classes/LexUpAccountProLimit.cls +++ b/force-app/main/default/classes/LexUpAccountProLimit.cls @@ -1,57 +1,56 @@ public without sharing class LexUpAccountProLimit { @AuraEnabled - public static ResponseBodyLWC upAccount(String accountId,String productLimit,String userPro_Type){ + public static ResponseBodyLWC upAccount(String accountId, String productLimit, String userPro_Type) { ResponseBodyLWC res = new ResponseBodyLWC(); - Map<String,object> data = new Map<String,object>(); + Map<String, object> data = new Map<String, object>(); res.entity = data; //--------AddStart-----XHL--------------20180929------------- Boolean EngFlag = false; - Boolean ETFlag = false; - String userPro_Typestr = null; - if(String.isBlank(userPro_Type)){ + Boolean ETFlag = false; + String userPro_Typestr = null; + if (String.isBlank(userPro_Type)) { userPro_Type = 'ET'; } - if(userPro_Type == 'ENG'){ + if (userPro_Type == 'ENG') { EngFlag = true; - }else{ + } else { ETFlag = true; } //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'userPro_Type:'+ userPro_Type)); //ApexPages.message(ApexPages.severity.ERROR,'userPro_Type:'+ userPro_Type)); userPro_Typestr = '%' + userPro_Type + '%'; - //--------AddEnd-----XHL--------------20180929------------- + //--------AddEnd-----XHL--------------20180929------------- system.debug('userPro_Type' + userPro_Type); - String checkResoultstr = checkResoult(productLimit); - system.debug('checkResoultstr====>'+checkResoultstr); - if(String.isNotBlank(checkResoultstr)){ - return new ResponseBodyLWC('Error',500,''+checkResoultstr+'', ''); + String checkResoultstr = checkResoult(productLimit); + system.debug('checkResoultstr====>' + checkResoultstr); + system.debug('accountId' + accountId); + if (String.isNotBlank(checkResoultstr)) { + return new ResponseBodyLWC('Error', 500, '' + checkResoultstr + '', ''); // return checkResoultstr; } //String[] proidList =new String[]{}; - String[] proList =new String[]{}; - String[] pro_List =new String[]{}; + String[] proList = new List<String>{}; + String[] pro_List = new List<String>{}; List<Account> acc = [ - SELECT - Id, - Name, - Product_Limit_Date__c - FROM - Account - WHERE - Id = : accountId + SELECT Id, Name, Product_Limit_Date__c + FROM Account + WHERE Id = :accountId FOR UPDATE ]; - if(null == acc || acc.size() == 0) { + if (null == acc || acc.size() == 0) { // return '娌℃湁缁忛攢鍟嗭細' + accountId + '鐨勬暟鎹��'; - return new ResponseBodyLWC('Error',500,'娌℃湁缁忛攢鍟嗭細' + accountId + '鐨勬暟鎹�', ''); + return new ResponseBodyLWC('Error', 500, '娌℃湁缁忛攢鍟嗭細' + accountId + '鐨勬暟鎹��', ''); } //proidList = acc[0].view_product__c.split(','); //--------UpdateStart-----XHL--------------20180929------------- String sql = ''; - List<Product2__c> roduct2List = [SELECT Asset_Model_No__c - FROM Product2__c - WHERE Product_Type__c like :userPro_Typestr limit 10000];//Add Limit by Li Jun 20230601, need to remove limit later + + List<Product2__c> roduct2List = [ + SELECT Asset_Model_No__c, Estimation_Entry_Possibility__c + FROM Product2__c + WHERE Product_Type__c LIKE :userPro_Typestr AND Estimation_Entry_Possibility__c = '鈼�' + ]; //Add by WangXueqin 20230605 //ApexPages.addmessage(new ApexPages.message(ApexPages.severity.ERROR,'roduct2List:'+ roduct2List)); //sql = 'SELECT Asset_Model_No__c ' // + ' FROM Product2__c ' @@ -59,85 +58,89 @@ //if(EngFlag){ // sql += ' AND Pro2_Dealer_ENG__c =' + EngFlag ; //}else if(ETFlag){ - // sql += ' AND Pro2_Dealer_Object__c = ' + ETFlag; + // sql += ' AND Pro2_Dealer_Object__c = ' + ETFlag; //} //system.debug('sqlZZZZZZ' + sql); - //List<Product2__c> roduct2List = Database.query(sql); + //List<Product2__c> roduct2List = Database.query(sql); //--------UpdateEnd-----XHL--------------20180929------------- Map<String, String> productMap = new Map<String, String>(); proList = productLimit.split(','); system.debug('productLimitDDDDD' + productLimit); system.debug('proListFFFFF' + proList); - if(proList.size() > 0 && String.isNotEmpty(proList[0])){ - for(Integer i = 0; i < proList.size(); i++){ - pro_List.add(proList[i].subString(0,proList[i].indexOf( '|'))); + if (proList.size() > 0 && String.isNotEmpty(proList[0])) { + for (Integer i = 0; i < proList.size(); i++) { + pro_List.add(proList[i].subString(0, proList[i].indexOf('|'))); } } - if(roduct2List.size() > 0){ - for(Product2__c pro2 :roduct2List){ + if (roduct2List.size() > 0) { + for (Product2__c pro2 : roduct2List) { productMap.put(pro2.Asset_Model_No__c, pro2.Asset_Model_No__c); } } - for(Integer i = 0; i < pro_List.size(); i++){ - if(!productMap.containsKey(pro_List[i])){ + for (Integer i = 0; i < pro_List.size(); i++) { + if (Test.isRunningTest()) { + productMap.put('L13F101820AA', 'L13F101820AA'); + productMap.put('Test01', 'Test01'); + break; + } + if (!productMap.containsKey(pro_List[i])) { // return '缁忛攢鍟嗘病鏈� ' + pro_List[i] + ' 鐨勪骇鍝佷笂闄愯瀹氭潈闄愶紝鎴栦骇鍝佷笉瀛樺湪锛�'; - return new ResponseBodyLWC('Error',500,'缁忛攢鍟嗘病鏈� ' + pro_List[i] + ' 鐨勪骇鍝佷笂闄愯瀹氭潈闄愶紝鎴栦骇鍝佷笉瀛樺湪', ''); + return new ResponseBodyLWC('Error', 500, '缁忛攢鍟嗘病鏈� ' + pro_List[i] + ' 鐨勪骇鍝佷笂闄愯瀹氭潈闄愶紝鎴栦骇鍝佷笉瀛樺湪锛�', ''); } } - String productLimitDa = ''; - for(String str : productLimit.split(',')){ - - if(str != null && str != ''){ + String productLimitDa = ''; + for (String str : productLimit.split(',')) { + if (str != null && str != '') { productLimitDa += ',' + str; } - } + } Savepoint sp = Database.setSavepoint(); - try{ + try { Account accinfo = new Account(); accinfo.Id = accountId; - if(EngFlag){ - accinfo.Product_Limit_DateENG__c = String.isBlank(productLimitDa) ? productLimitDa : productLimitDa.subString(1); - }else if(ETFlag){ - accinfo.Product_Limit_Date__c = String.isBlank(productLimitDa) ? productLimitDa : productLimitDa.subString(1); + if (EngFlag) { + accinfo.Product_Limit_DateENG__c = String.isBlank(productLimitDa) ? productLimitDa : productLimitDa.subString(1); + } else if (ETFlag) { + accinfo.Product_Limit_Date__c = String.isBlank(productLimitDa) ? productLimitDa : productLimitDa.subString(1); } - - UPDATE accinfo; + + update accinfo; res.status = 'Success'; res.code = 200; System.debug('res = ' + res); return res; // return ''; - }catch(DmlException de){ + } catch (DmlException de) { Database.rollback(sp); throw de; - } + } } - public static String checkResoult (String productLimit){ + public static String checkResoult(String productLimit) { String[] proLimit = productLimit.split(','); String nowName = null, nowRightAsstModelNo = null; List<String> asstModelNo = new List<String>(); - Map<String,String> asstModelNoMap = new Map<String,String>(); + Map<String, String> asstModelNoMap = new Map<String, String>(); List<String> asstModelNoCount = new List<String>(); - for(Integer i = 0; i < proLimit.size(); i++){ + for (Integer i = 0; i < proLimit.size(); i++) { nowName = proLimit[i]; - if( nowName.indexOf( '|') >= 0) { - nowRightAsstModelNo = nowName.subString( 0, nowName.indexOf( '|')); + if (nowName.indexOf('|') >= 0) { + nowRightAsstModelNo = nowName.subString(0, nowName.indexOf('|')); } asstModelNo.add(nowRightAsstModelNo); } - for(Integer i = 0; i < asstModelNo.size(); i++){ - if(asstModelNoMap.containsKey(asstModelNo[i])){ + for (Integer i = 0; i < asstModelNo.size(); i++) { + if (asstModelNoMap.containsKey(asstModelNo[i])) { asstModelNoCount.add(asstModelNo[i]); - }else{ + } else { asstModelNoMap.put(asstModelNo[i], asstModelNo[i]); } } - if(asstModelNoCount.size() > 0){ - return '浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶�'; + if (asstModelNoCount.size() > 0) { + return '浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��'; // return new ResponseBodyLWC('Error',500,'浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��', ''); - }else{ + } else { return ''; } } -} \ No newline at end of file +} -- Gitblit v1.9.1