buli
2022-05-13 08a21f49f2eaf9cfc19ceb67b196cc36ba689305
force-app/main/default/classes/LogAutoSendBatch.cls
@@ -1,339 +1,102 @@
global class LogAutoSendBatch implements Database.Batchable<sObject>, Database.AllowsCallouts, Database.Stateful {
    private String typeNFM;
    private String messageGroupNumber;
    private Datetime times;
    /**
global class LogAutoSendBatch implements Database.Batchable<sObject> {
   /**
     * コンスタント
     */
    global LogAutoSendBatch() {
    }
    private String typeNFM;
    private String  messageGroupNumber;
    private Datetime times;
    //20191224 HWAG-BK65E8 add start
    global LogAutoSendBatch() {}
    global LogAutoSendBatch(String type, String message, Datetime times) {
        this.typeNFM = type;
        this.messageGroupNumber = message;
        this.times = times;
    }
    //20191224 HWAG-BK65E8 add end
    /**
     * startには、queryを実行、备品申请借出历史を検索
     */
    public Integer max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
    global Database.QueryLocator start(Database.BatchableContext BC) {
        String profileId = UserInfo.getProfileId();
        //20191224 HWAG-BK65E8 add start
    global Database.QueryLocator start(Database.BatchableContext BC) {
        Integer max_cnt = Integer.valueOf(System.Label.batch_retry_max_cnt);
        String new_profileId = calendarUtil.getMemberProfileID(UserInfo.getUserId().subString(0,15));
        if (String.isNotBlank(typeNFM) && String.isNotBlank(messageGroupNumber) && times != null) {
            return Database.getQueryLocator(
                [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
                 Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
                 retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
                 FROM BatchIF_Log__c
                 WHERE RowDataFlg__c = true
                                       AND Type__c = : typeNFM AND CreatedDate >= : times AND MessageGroupNumber__c >= : messageGroupNumber
                                                     order by MessageGroupNumber__c asc ]
                );
            //20191224 HWAG-BK65E8 add end
        } else if (profileId.left(15).equals('00e10000000dzzG') || profileId.left(15).equals('00e10000000Y3o5')) {
                        Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,Type__c,
                        retry_cnt__c
                   FROM BatchIF_Log__c
                  WHERE RowDataFlg__c = true
                    AND Type__c = :typeNFM AND CreatedDate >= :times  AND MessageGroupNumber__c >= :messageGroupNumber
                    order by MessageGroupNumber__c asc  ]
            );
        } else if (new_profileId == System.Label.SystemAdmin || new_profileId == System.Label.SystemAdmin2) {
            return Database.getQueryLocator(
                [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
                 Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
                 retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
                 FROM BatchIF_Log__c
                 WHERE RowDataFlg__c = true
                                       AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
                                            OR (NFM501Future_Count__c != null
                                                AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
                                            OR(NFM501_Web_Annex_Count__c != null
                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))]
                );
                        Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,Type__c,
                        retry_cnt__c
                   FROM BatchIF_Log__c
                  WHERE RowDataFlg__c = true
                    AND (Type__c = 'SBGITMRestNew'  OR Type__c = 'SBG010' OR Type__c = 'SBG017' OR Type__c = 'SBG027' OR
                        Type__c = 'SBG004'  OR Type__c = 'SBG005' OR Type__c = 'SBG203' OR Type__c = 'SBG204' OR Type__c = 'SBG018' OR Type__c = 'SBG001' OR Type__c = 'SBG007')
                    AND retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < :max_cnt
                ]
            );
        } else {
            return Database.getQueryLocator(
                [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
                 Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c, Type__c,
                 retry_cnt__c, NFM501Future_Count__c, NFM501_Web_Annex_Count__c
                 FROM BatchIF_Log__c
                 WHERE RowDataFlg__c = true
                                       AND ((retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < : max_cnt)
                                            OR (NFM501Future_Count__c != null
                                                AND NFM501Future_Count__c > 0 AND NFM501Future_Count__c < : max_cnt)
                                            OR(NFM501_Web_Annex_Count__c != null
                                               AND NFM501_Web_Annex_Count__c > 0 AND NFM501_Web_Annex_Count__c < : max_cnt))
                                       AND ownerId = : UserInfo.getUserId()]
                );
                        Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,Type__c,
                        retry_cnt__c
                   FROM BatchIF_Log__c
                  WHERE RowDataFlg__c = true
                    AND retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < :max_cnt
                    AND (Type__c = 'SBGITMRestNew'  OR Type__c = 'SBG010' OR Type__c = 'SBG017' OR Type__c = 'SBG027' OR
                        Type__c = 'SBG004'  OR Type__c = 'SBG005' OR Type__c = 'SBG203' OR Type__c = 'SBG204' OR Type__c = 'SBG018' OR Type__c = 'SBG001' OR Type__c = 'SBG007')  AND ownerId = : UserInfo.getUserId()]
            );
        }
        /*
        return Database.getQueryLocator(
            [SELECT Id, Name, Log__c, ErrorLog__c, Log2__c, Log3__c, Log4__c, Log5__c, Log6__c,
                    Log7__c, Log8__c, Log9__c, Log10__c, Log11__c, Log12__c, MessageGroupNumber__c,Type__c,
                    retry_cnt__c
               FROM BatchIF_Log__c
              WHERE RowDataFlg__c = true
                AND retry_cnt__c != null AND retry_cnt__c > 0 AND retry_cnt__c < :max_cnt
                AND (Type__c = 'SBGITMRestNew'  OR Type__c = 'SBG010' OR Type__c = 'SBG017' OR Type__c = 'SBG027' OR
                    Type__c = 'SBG004'  OR Type__c = 'SBG005' OR Type__c = 'SBG203' OR Type__c = 'SBG204' OR Type__c = 'SBG018' OR Type__c = 'SBG001' OR Type__c = 'SBG007') ]
        );
        */
    }
    global void execute(Database.BatchableContext BC, List<BatchIF_Log__c> rowDataList) {
        String strType_c = null;
        Integer NFM501Future_Count = null;
        Integer NFM501_Web_Annex_Count = null;
        Integer NFM501_Other_Annex_Count = null;
        for (BatchIF_Log__c rowData : rowDataList) {
            strType_c = String.valueOf(rowData.get('Type__c'));
            NFM501Future_Count = Integer.valueOf(rowData.get('NFM501Future_Count__c'));
            NFM501_Web_Annex_Count = Integer.valueOf(rowData.get('NFM501_Web_Annex_Count__c'));
            if (strType_c == 'MDMITM') {
                // CHAN-BH72Y9 start
                // 原代码
                //MDMITMWebService.execute(rowData.Id);
                MDMITMRest.execute(rowData.Id);
                // CHAN-BH72Y9 end
        for (BatchIF_Log__c rowData:rowDataList){
            strType_c= String.valueOf(rowData.get('Type__c'));
            if (strType_c == 'SBGITMRestNew'){
                // SBGITMWebService.execute(rowData.Id);
                SBGITMRestNew.main(rowData.Id);
            }
            if (strType_c == 'NFM001') {
                NFM001Controller.execute(rowData, null);
            else if(strType_c == 'SBG010'){
                SBG010Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM002') {
                NFM002WebService.execute(rowData.Id);
            }
            if (strType_c == 'NFM006') {
                NFM006WebService.execute(rowData.Id);
            }
            if (strType_c == 'NFM007') {
                NFM007Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM008') {
                // CHAN-BB9CX4 20190419 LHJ Start
                //NFM008WebService.execute(rowData.Id);
                NFM008Rest.main(rowData.Id);
                // CHAN-BB9CX4 20190419 LHJ End
            }
            if (strType_c == 'NFM010') {
                // CHAN-BBC75D 20190424 LHJ Start
                //NFM010WebService.execute(rowData.Id);
                NFM010Rest.main(rowData.Id);
                // CHAN-BBC75D 20190424 LHJ Start
            }
            if (strType_c == 'NFM012') {
                // CHAN-BH72Y9 start
                // 原代码
                //NFM012WebService.execute(rowData.Id);
                NFM012Rest.main(rowData.Id);
                // CHAN-BH72Y9 end
            }
            if (strType_c == 'NFM103') {
                NFM103Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM104') {
                // CHAN-BAF2VC 20190327 LHJ Start
                //NFM104WebService.execute(rowData.Id);
                NFM104Rest.main(rowData.Id);
                // CHAN-BAF2VC 20190327 LHJ Start
            }
            if (strType_c == 'NFM105') {
                // CHAN-BAW99B 20190408 LHJ Start
                //NFM105WebService.execute(rowData.Id);
                NFM105Rest.main(rowData.Id);
                // CHAN-BAW99B 20190408 LHJ End
            }
            if (strType_c == 'NFM106') {
                NFM106Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM107') {
                NFM107Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM108') {
                NFM108Rest.main(rowData.Id);
            }
            // 20200923 Gzw start
            if (strType_c == 'NFM109') {
                NFM109Rest.main(rowData.Id);
            }
            // 20200923 Gzw end
            if (strType_c == 'NFM110') {
                NFM110Rest.main(rowData.Id);
            }
            // 2021/12/1 fxk add Star
            if (strType_c == 'NFM115') {
                NFM115Controller.execute(rowData,null);
            }
            if (strType_c == 'NFM114') {
                NFM114Rest.main(rowData.Id);
            }
            // 2021/12/1 fxk add End
            // 三方接口
            if (strType_c == 'NFM201') {
                NFM201Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM202') {
                NFM202Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM203') {
                NFM203Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM204') {
                NFM204Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM205') {
                NFM205Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM206') {
                NFM206Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM207') {
                NFM207Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM009') {
                NFM009Controller.execute(rowData, null);
            }
            if (strType_c == 'CPL003') {
                CPL003Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM301') {
                NFM301Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM401') {
                NFM401Controller.executeAuto(rowData);
            }
            // add tcm 20211207 start
            if (strType_c == 'NFM403') {
                NFM403Rest.main(rowData.Id);
            }
            // add tcm 20211207 end
            if (strType_c == 'NFM501' && NFM501Future_Count > 0 && NFM501Future_Count < max_cnt) {
                System.enqueueJob(new NFM501FutureController(rowData.id));
            }
            if (strType_c == 'NFM501' && NFM501_Web_Annex_Count > 0 && NFM501_Web_Annex_Count < max_cnt) {
                System.enqueueJob(new NFM502Controller(rowData.id));
            else if(strType_c == 'SBG017'){
                SBG017Rest.main(rowData.Id);
            }else if(strType_c == 'SBG027'){
                SBG027Controller.execute2(rowData.Id);
            }else if(strType_c == 'SBG004'){
                SBG004Rest.main(rowData.Id);
            }else if(strType_c == 'SBG005'){
                SBG005Rest.main(rowData.Id);
            }else if(strType_c == 'SBG203'){
                SBG203Rest.main(rowData.Id);
            }else if(strType_c == 'SBG204'){
                SBG204Rest.main(rowData.Id);
            }else if(strType_c == 'SBG018'){
                SBG018Rest.main(rowData.Id);
            }else if(strType_c == 'SBG001'){
                SBG001TriggerHandler.execute2(rowData.Id);
            }
            if (strType_c == 'NFM601') {
                NFM601Controller.ManualExecute(rowData.Id);
            }
            if (strType_c == 'NFM606') {
                NFM606Controller.ManualExecute(rowData.Id);
            }
            if (strType_c == 'NFM603') {
                NFM603Controller.ManualExecute(rowData.Id);
            }
            if (strType_c == 'NFM605') {
                NFM605Controller.ManualExecute(rowData.Id);
            }
            if (strType_c == 'NFM620') {
                NFM620Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM623') {
                NFM623Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM621') {
                NFM621Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM624') {
                NFM624Rest.main(rowData.Id);
            }
            if (strType_c == 'NFM622') {
                NFM622Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM112') {
                NFM112Controller.execute(rowData, null);
            }
            if (strType_c == 'NFM703') {
                NFM703Controller.execute(rowData, null);
            }
        }
        if (System.Test.isRunningTest()) {
            Integer i = 0;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
            i++;
        }
    }