李金换
2022-11-30 dbddbfecbf28fa97a5fcc73cfb8526d7490f62c9
DB202211258553 SFDC服务相关Batch批处理优化
3个文件已修改
38 ■■■■ 已修改文件
force-app/main/default/classes/AssetUpdateLastContractbatch.cls 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/RollupToMaintenanceContractBatch.cls 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/rollupToRepairBatch.cls 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
force-app/main/default/classes/AssetUpdateLastContractbatch.cls
@@ -35,7 +35,10 @@
        if (TestIDList != null && TestIDList.size() > 0) {
            return Database.getQueryLocator([select id from asset where Id in : TestIDList]);
        }else{
            return Database.getQueryLocator([select id from asset]);
            // 20221117 ljh DB202211258553 start
            // return Database.getQueryLocator([select id from asset]);
            return Database.getQueryLocator([select id from asset where IsCompetitorProduct = false AND ( AssetMark__c != '耗材' OR Product2.Family != 'ET')]);
            // 20221117 ljh DB202211258553 end
            // return Database.getQueryLocator([select id from asset where Id in : assetList]);
        }
    }
force-app/main/default/classes/RollupToMaintenanceContractBatch.cls
@@ -40,7 +40,10 @@
            if(ConId != null && ConId.size() > 0) {
                return Database.getQueryLocator([select Id from Maintenance_Contract__c where Id in :ConId]);
            } else {
                return Database.getQueryLocator([select Id from Maintenance_Contract__c]);
                // 20221117 ljh DB202211258553 start
                // return Database.getQueryLocator([select Id from Maintenance_Contract__c]);
                return Database.getQueryLocator([select Id from Maintenance_Contract__c where Status__c = '契約' OR (Status__c = '契約満了' and Contract_End_Date__c >= :Date.today().addMonths(-6))]);
                // 20221117 ljh DB202211258553 end
            }
            
force-app/main/default/classes/rollupToRepairBatch.cls
@@ -25,7 +25,10 @@
    global Database.QueryLocator start(Database.BatchableContext bc) {
        // 20221110 ljh 优化 start
        Date st = Date.today().addMonths(-36);
        Datetime startDatetime = Datetime.newInstance(st.year(), st.month(), st.day(), 8, 0, 0);
        // 20221110 ljh 优化 end
        if (repairId != null && repairId.size() > 0) {
            return Database.getQueryLocator(
                       [select Id,
@@ -45,6 +48,18 @@
                        from repair__c
                       ]);
        } else {
            // 20221110 ljh 优化 start
            // return Database.getQueryLocator(
            //            [select Id ,
            //             if_Rental_Apply__c ,
            //             Offer_Rental_New__c,
            //             Request_approval_day__c,
            //             Bollow_Date__c
            //             from repair__c
            //             where Repair_Completed_Date__c = null Or
            //                     Repair_Completed_Date__c >= :
            //                     Date.today().addMonths(-12)
            //            ]);
            return Database.getQueryLocator(
                       [select Id ,
                        if_Rental_Apply__c ,
@@ -52,10 +67,15 @@
                        Request_approval_day__c,
                        Bollow_Date__c
                        from repair__c
                        where Repair_Completed_Date__c = null Or
                                Repair_Completed_Date__c >= :
                                Date.today().addMonths(-12)
                        where Status1__c  != '0.取消'
                        and Status1__c   != '0.删除'
                        and Status1__c != '5.完毕'
                        and (
                        (Repair_Completed_Date__c = null and CreatedDate > :startDatetime)
                         Or Repair_Completed_Date__c >= :Date.today().addMonths(-12)
                        )
                       ]);
            // 20221110 ljh 优化 end
        }
    }