buli
2023-07-11 80a3f59e2d3df07805bc67e329300b8de90a5b3a
force-app/main/default/classes/LexConsumableAccountController.cls
@@ -43,7 +43,11 @@
            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)) {
@@ -164,12 +168,34 @@
                arList = LexConsumableAccountSOQL.getAccountBySales(lastDatetime, nextDatetime);
            }
            // Map<String,Decimal> mapTemp = new Map<String,Decimal>();
            // for (AggregateResult ar : arList) {
            //     if(!mapTemp.get(String.valueOf(ar.get('hospitalName')))){
            //         mapTemp.put(String.valueOf(ar.get('hospitalName'),Decimal.valueOf(String.valueOf(ar.get('thisAmount')))));
            //     }else {
            //         Decimal decimal = mapTemp.get(String.valueOf(ar.get('hospitalName')));
            //         decimal += Decimal.valueOf(String.valueOf(ar.get('thisAmount')));
            //         mapTemp.put(String.valueOf(ar.get('hospitalName'),decimal));
            //     }
            // }
            // System.debug('mapTemp = ' + mapTemp);
            // //排序Decimal从大到小
            // List<Decimal> decimalList = new List<Decimal>(mapTemp.values());
            // decimalList.sort((a, b) => b.compareTo(a));
            // Map<String, Decimal> sortedMap = new Map<String, Decimal>();
            // for (String key : mapTemp.keySet()) {
            //     sortedMap.put(key, mapTemp.get(key));
            // }
            // System.debug('Sorted Map: ' + sortedMap);
            //查询客户信息(名称,省,县)
            System.debug('arList = ' + arList);
            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') {
                    accountList.add(String.valueOf(ar.get('hospitalName')));
                    accountList.add(String.valueOf(ar.get('Order_ForHospital__c')));
                    topInfo.deList.add(Decimal.valueOf(String.valueOf(ar.get('thisAmount'))));
                }
            }
@@ -194,14 +220,14 @@
                    Town__c,
                    Phone
                FROM Account
                WHERE Name = :accountList
                WHERE Id = :accountList
            ];
            List<Account> acListTemp = new List<Account>();
            for (String s : accountList) {
                for (Account a : acList) {
                    if (s == a.Name) {
                    if (s == a.id) {
                        acListTemp.add(a);
                    }
                }
@@ -274,7 +300,7 @@
            for (AggregateResult ar : arList) {
                System.debug('thisAmount = ' + String.valueOf(ar.get('thisAmount')));
                if (String.valueOf(ar.get('thisAmount')) != '0.0') {
                    accountList.add(String.valueOf(ar.get('hospitalName')));
                    accountList.add(String.valueOf(ar.get('Order_ForHospital__c')));
                    topInfo.deList.add(Decimal.valueOf(String.valueOf(ar.get('thisAmount'))));
                }
            }
@@ -297,12 +323,12 @@
                    Town__c,
                    Phone
                FROM Account
                WHERE Name = :accountList
                WHERE Id = :accountList
            ];
            List<Account> acListTemp = new List<Account>();
            for (String s : accountList) {
                for (Account a : acList) {
                    if (s == a.Name) {
                    if (s == a.id) {
                        acListTemp.add(a);
                    }
                }
@@ -346,8 +372,9 @@
            List<Account> allSelectAccount = Database.query(soql);
            totalCount = allSelectAccount.size();
            String nullFL = sortOrder.toLowerCase() == 'asc' ? 'NULLS FIRST' : 'NULLS LAST';
            if (String.isNotBlank(sortField)) {
                soql += ' order by ' + sortField + ' ' + sortOrder;
                soql += ' order by ' + sortField + ' ' + sortOrder + ' ' + nullFL;
            }
            soql += ' limit ' + pagesize + ' offset ' + pageToken;
            System.debug('soql2+++++++ ' + soql);
@@ -427,4 +454,4 @@
            deList = new List<Decimal>();
        }
    }
}
}