From 744f42c5496e656a1f9927740a3b37c0b97a6cba Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期五, 14 七月 2023 14:34:12 +0800
Subject: [PATCH] lexcommunityupload0714

---
 force-app/main/default/classes/LexUpAccountProLimit.cls |  306 ++++++++++++++++++++++++--------------------------
 1 files changed, 145 insertions(+), 161 deletions(-)

diff --git a/force-app/main/default/classes/LexUpAccountProLimit.cls b/force-app/main/default/classes/LexUpAccountProLimit.cls
index bf396dd..68dfba6 100644
--- a/force-app/main/default/classes/LexUpAccountProLimit.cls
+++ b/force-app/main/default/classes/LexUpAccountProLimit.cls
@@ -1,166 +1,150 @@
 public without sharing class LexUpAccountProLimit {
-  @AuraEnabled
-  public static ResponseBodyLWC upAccount(
-    String accountId,
-    String productLimit,
-    String userPro_Type
-  ) {
-    ResponseBodyLWC res = new ResponseBodyLWC();
-    Map<String, object> data = new Map<String, object>();
-    res.entity = data;
+    @AuraEnabled
+    public static ResponseBodyLWC upAccount(String accountId,String productLimit,String userPro_Type){
+        ResponseBodyLWC res = new ResponseBodyLWC();
+        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)) {
-      userPro_Type = 'ET';
+        //--------AddStart-----XHL--------------20180929-------------
+        Boolean EngFlag = false;
+        Boolean ETFlag = false; 
+        String userPro_Typestr = null; 
+        if(String.isBlank(userPro_Type)){
+            userPro_Type = 'ET';
+        }
+        if(userPro_Type == 'ENG'){
+            EngFlag = true;
+        }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------------- 
+        system.debug('userPro_Type' + userPro_Type);
+        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[]{};
+        List<Account> acc = [
+            SELECT
+                    Id,
+                    Name,
+                    Product_Limit_Date__c
+            FROM
+                    Account
+            WHERE
+                    Id = : accountId
+            FOR UPDATE
+        ];
+        if(null == acc || acc.size() == 0) {
+            // return '娌℃湁缁忛攢鍟嗭細' + 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,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 '
+        //    + ' WHERE Pro2_Dealer_Object__c = true';
+        //if(EngFlag){
+        //   sql += ' AND Pro2_Dealer_ENG__c =' + EngFlag ;
+        //}else if(ETFlag){
+        //   sql += ' AND Pro2_Dealer_Object__c = ' + ETFlag; 
+        //}
+        //system.debug('sqlZZZZZZ' + 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(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(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] + ' 鐨勪骇鍝佷笂闄愯瀹氭潈闄愶紝鎴栦骇鍝佷笉瀛樺湪锛�', '');
+            }
+        }
+        String  productLimitDa = '';
+        for(String str : productLimit.split(',')){
+            
+            if(str != null && str != ''){
+                productLimitDa += ',' + str;
+            }
+        } 
+        Savepoint sp = Database.setSavepoint();
+        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);
+            }
+            
+            UPDATE accinfo;
+            res.status = 'Success';
+            res.code = 200;
+            System.debug('res = ' + res);
+            return res;
+            // return '';
+        }catch(DmlException de){ 
+            Database.rollback(sp);
+            throw de;
+        } 
     }
-    if (userPro_Type == 'ENG') {
-      EngFlag = true;
-    } 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-------------
-    system.debug('userPro_Type' + userPro_Type);
-    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 List<String>{};
-    String[] pro_List = new List<String>{};
-    List<Account> acc = [
-      SELECT Id, Name, Product_Limit_Date__c
-      FROM Account
-      WHERE Id = :accountId
-      FOR UPDATE
-    ];
-    if (null == acc || acc.size() == 0) {
-      // return '娌℃湁缁忛攢鍟嗭細' + accountId + '鐨勬暟鎹��';
-      return new ResponseBodyLWC(
-        'Error',
-        500,
-        '娌℃湁缁忛攢鍟嗭細' + accountId + '鐨勬暟鎹��',
-        ''
-      );
-    }
-    //proidList = acc[0].view_product__c.split(',');
-    //--------UpdateStart-----XHL--------------20180929-------------
-    String sql = '';
+    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>();
+        List<String> asstModelNoCount = new List<String>();
+        for(Integer i = 0; i < proLimit.size(); i++){
+            nowName = proLimit[i];
+            if( nowName.indexOf( '|') >= 0) {
+                nowRightAsstModelNo = nowName.subString( 0, nowName.indexOf( '|'));
+            }
+            asstModelNo.add(nowRightAsstModelNo);
+        }
 
-    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 '
-    //    + ' WHERE Pro2_Dealer_Object__c = true';
-    //if(EngFlag){
-    //   sql += ' AND Pro2_Dealer_ENG__c =' + EngFlag ;
-    //}else if(ETFlag){
-    //   sql += ' AND Pro2_Dealer_Object__c = ' + ETFlag;
-    //}
-    //system.debug('sqlZZZZZZ' + 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('|')));
-      }
+        for(Integer i = 0; i < asstModelNo.size(); i++){
+            if(asstModelNoMap.containsKey(asstModelNo[i])){
+                asstModelNoCount.add(asstModelNo[i]);
+            }else{
+                asstModelNoMap.put(asstModelNo[i], asstModelNo[i]);
+            }
+        }
+        if(asstModelNoCount.size() > 0){
+            return '浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��';
+            // return new ResponseBodyLWC('Error',500,'浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��', '');
+        }else{
+            return '';
+        }
     }
-    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 (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] + ' 鐨勪骇鍝佷笂闄愯瀹氭潈闄愶紝鎴栦骇鍝佷笉瀛樺湪锛�',
-          ''
-        );
-      }
-    }
-    String productLimitDa = '';
-    for (String str : productLimit.split(',')) {
-      if (str != null && str != '') {
-        productLimitDa += ',' + str;
-      }
-    }
-    Savepoint sp = Database.setSavepoint();
-    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);
-      }
-
-      update accinfo;
-      res.status = 'Success';
-      res.code = 200;
-      System.debug('res = ' + res);
-      return res;
-      // return '';
-    } catch (DmlException de) {
-      Database.rollback(sp);
-      throw de;
-    }
-  }
-  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>();
-    List<String> asstModelNoCount = new List<String>();
-    for (Integer i = 0; i < proLimit.size(); i++) {
-      nowName = proLimit[i];
-      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])) {
-        asstModelNoCount.add(asstModelNo[i]);
-      } else {
-        asstModelNoMap.put(asstModelNo[i], asstModelNo[i]);
-      }
-    }
-    if (asstModelNoCount.size() > 0) {
-      return '浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��';
-      // return new ResponseBodyLWC('Error',500,'浜у搧锛�' + asstModelNoCount + '鐨勬暟鎹噸澶嶃��', '');
-    } else {
-      return '';
-    }
-  }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.1