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/LexConsumableAccountController.cls |   47 ++++++++++++++++++++++++++++-------------------
 1 files changed, 28 insertions(+), 19 deletions(-)

diff --git a/force-app/main/default/classes/LexConsumableAccountController.cls b/force-app/main/default/classes/LexConsumableAccountController.cls
index 781fa20..19c44c7 100644
--- a/force-app/main/default/classes/LexConsumableAccountController.cls
+++ b/force-app/main/default/classes/LexConsumableAccountController.cls
@@ -43,11 +43,7 @@
             pageSize = pageSizeLWC;
             pageToken = pageTokenLWC > 2000 ? 2000 : pageTokenLWC;
 
-            User Useracc = [
-                SELECT accountid, UserPro_Type__c
-                FROM user
-                WHERE id = :UserInfo.getUserId()
-            ];
+            User Useracc = [SELECT accountid, UserPro_Type__c FROM user WHERE id = :UserInfo.getUserId()];
             accountId = [SELECT id, Name FROM account WHERE id = :Useracc.accountid].id;
             agencyProType = Useracc.UserPro_Type__c;
             if (String.isBlank(Useracc.UserPro_Type__c)) {
@@ -148,22 +144,28 @@
             Date thisDatetime2 = Date.newInstance(thisYear, 4, 1);
             Date nextDatetime = Date.newInstance(nextYear, 4, 1);
 
-            AggregateResult[] arList = null;
-
+            //AggregateResult[] arList = null;
+            AggregateResult[] arList = new List<AggregateResult>();
             System.debug('fiscalYear = ' + fiscalYear);
             if (fiscalYear == 'thisYear') {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(thisDatetime, nextDatetime);
-                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
+                //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
                 System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 arList = LexConsumableAccountSOQL.getAccountBySales(thisDatetime, nextDatetime);
             } else if (fiscalYear == 'lastYear') {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, thisDatetime2);
-                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
                 System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, thisDatetime2);
             } else {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, nextDatetime);
-                topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
                 System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, nextDatetime);
             }
@@ -186,7 +188,7 @@
             // for (String key : mapTemp.keySet()) {
             //     sortedMap.put(key, mapTemp.get(key));
             // }
-
+            
             // System.debug('Sorted Map: ' + sortedMap);
 
             //鏌ヨ瀹㈡埛淇℃伅锛堝悕绉帮紝鐪侊紝鍘匡級
@@ -194,9 +196,9 @@
             List<String> accountList = new List<String>();
             for (AggregateResult ar : arList) {
                 System.debug('thisAmount = ' + String.valueOf(ar.get('thisAmount')));
-                if (String.valueOf(ar.get('thisAmount')) != '0.0') {
+                if(String.valueOf(ar.get('thisAmount')) != '0.0'){
                     accountList.add(String.valueOf(ar.get('Order_ForHospital__c')));
-                    topInfo.deList.add(Decimal.valueOf(String.valueOf(ar.get('thisAmount'))));
+                    topInfo.deList.add(Decimal.valueOf(String.valueOf(ar.get('thisAmount'))));  
                 }
             }
 
@@ -267,7 +269,8 @@
             Date thisDatetime2 = Date.newInstance(thisYear, 4, 1);
             Date nextDatetime = Date.newInstance(nextYear, 4, 1);
 
-            AggregateResult[] arList = null;
+            //AggregateResult[] arList = null;
+            AggregateResult[] arList = new List<AggregateResult>();
 
             System.debug('fiscalYear = ' + fiscalYear);
             System.debug('thisYear = ' + thisYear);
@@ -276,21 +279,27 @@
             if (fiscalYear == 'thisYear') {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(thisDatetime, nextDatetime);
                 if (saleAmountList[0].get('saleAmount') != null) {
-                    topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                    topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
                     System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 }
                 arList = LexConsumableAccountSOQL.getAccountBySales(thisDatetime, nextDatetime);
             } else if (fiscalYear == 'lastYear') {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, thisDatetime2);
                 if (saleAmountList[0].get('saleAmount') != null) {
-                    topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                    topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
                     System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 }
                 arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, thisDatetime2);
             } else {
                 AggregateResult[] saleAmountList = LexConsumableAccountSOQL.getAccountTotalSales(lastDatetime, nextDatetime);
                 if (saleAmountList[0].get('saleAmount') != null) {
-                    topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    //topInfo.saleAmount = Decimal.valueOf(String.valueOf(saleAmountList[0].get('saleAmount')));
+                    Object saleAmountObject = saleAmountList[0].get('saleAmount');
+                    topInfo.saleAmount = saleAmountObject != null ? Decimal.valueOf(String.valueOf(saleAmountObject)) : Decimal.valueOf('0');
                     System.debug('topInfo.saleAmount = ' + topInfo.saleAmount);
                 }
                 arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, nextDatetime);
@@ -372,7 +381,7 @@
             List<Account> allSelectAccount = Database.query(soql);
 
             totalCount = allSelectAccount.size();
-            String nullFL = sortOrder.toLowerCase() == 'asc' ? 'NULLS FIRST' : 'NULLS LAST';
+            String nullFL = sortOrder.toLowerCase() == 'asc' ? 'NULLS FIRST': 'NULLS LAST';
             if (String.isNotBlank(sortField)) {
                 soql += ' order by ' + sortField + ' ' + sortOrder + ' ' + nullFL;
             }
@@ -454,4 +463,4 @@
             deList = new List<Decimal>();
         }
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.1