From fd2184ee47221684ceccf93b7a65428835055253 Mon Sep 17 00:00:00 2001
From: buli <137736985@qq.com>
Date: 星期三, 06 四月 2022 11:55:06 +0800
Subject: [PATCH] Merge branch 'PIPLDeploy0405'
---
force-app/main/default/classes/NFM503InfoFileBatch.cls | 210 ++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 160 insertions(+), 50 deletions(-)
diff --git a/force-app/main/default/classes/NFM503InfoFileBatch.cls b/force-app/main/default/classes/NFM503InfoFileBatch.cls
index 4ffb76d..25c2b6b 100644
--- a/force-app/main/default/classes/NFM503InfoFileBatch.cls
+++ b/force-app/main/default/classes/NFM503InfoFileBatch.cls
@@ -1,8 +1,20 @@
global class NFM503InfoFileBatch implements Database.Batchable<sObject>, Database.AllowsCallouts, Database.Stateful {
public String TenId;
public String bidInfoFileID;
+ //add staic sushanhu 20220302 start
+ public static String transUrl;
+ public static String transId;
+ public static String token;
+ public static integer isSuccess=0;
+ public static List<String> sfRecordIds =new List<String>();
+ //add staic sushanhu 20220302 end
Boolean IsNeedExecute = false; //2021-06-28 mzy WLIG-BYHD79 SFDC鐜batch鍚堝苟璋冩煡 鏄惁绗﹀悎鎵ц鏉′欢
-
+ //add nfm 503 aws response start sushanhu 20220301
+ global class File{
+ public String key;
+ public String name;
+ }
+ //add nfm 503 aws response sushanhu 20220301 end
//2021-06-28 mzy update 鍗冮噷椹�-Batch start
global NFM503InfoFileBatch() {
this.IsNeedExecute = true;
@@ -18,8 +30,8 @@
global Database.QueryLocator start(Database.BatchableContext bc) {
String query = 'select Id, Tender_information__c, infoAddress__c, ' +
- 'Tender_information__r.InfoType__c, isProcessed__c, ' +
- ' ErrorMessage__c from bidInfoFile__c where isProcessed__c = false ';
+ 'Tender_information__r.InfoType__c, isProcessed__c, ' +
+ ' ErrorMessage__c from bidInfoFile__c where isProcessed__c = false ';
if (String.isNotBlank(TenId)) {
query += 'and Tender_information__r.Id =: TenId';
}
@@ -33,9 +45,12 @@
global void execute(Database.BatchableContext BC, list<bidInfoFile__c> bidInfoFileList) {
Savepoint sp;
bidInfoFile__c bidInfoFile = bidInfoFileList[0];
-
+ List<String> queryfileList = new List<String>();
+ queryfileList.add(bidInfoFile.infoAddress__c);
try {
- String token;
+ //update 鍚宻taic 20220302 satrt
+ // String token;
+ //update 鍚宻taic 20220302 end
Datetime oldTime;
// 浠庤浆鎹㈣〃涓幏鍙杢oken
BatchIF_Transfer__c token503 = [Select ID, NFM501_Token__c
@@ -55,77 +70,172 @@
timeslot = newTime.getTime() - oldTime.getTime();
}
// System.debug('++++1++++' + token + ' : ' + timeslot);
+ PIHelper.piIntegration pi =PIHelper.getPIIntegrationInfo('NFM503');
if (string.isblank(token) || timeslot > 1800000) {
- NFMUtil.response response = NFMUtil.receiveToken();
- if (String.isBlank(response.responseBody)) {
- bidInfoFile.ErrorMessage__c = '503token:' + response.status;
- }
- token = response.responseBody;
+ //UP TO AWAS TOKEN 20220225 SUSHANHU START
+ // NFMUtil.response response = NFMUtil.getAWSToken();
+ // //UP TO AWAS TOKEN 20220225 SUSHANHU END
+ // if (String.isBlank(response.responseBody)) {
+ // bidInfoFile.ErrorMessage__c = '503token:' + response.status;
+ // }
+ token = pi.token;
oldTime = Datetime.now();
token503.NFM501_Token__c = token;
oldTime503.NFM501_Gain_End_Time__c = oldTime;
}
- // 瀛樻斁瓒呰繃12M鐨勯檮浠�
- List<Attachment> TenOtherAttList = new List<Attachment>();
- // 瀛樻斁鎵�鏈夐檮浠�
- List<String> FileList = new List<String>();
- // 濡傛灉鏂囦欢澶у皬瓒呰繃12M鏇存柊
- List< Tender_information__c> updateTenderList = new List< Tender_information__c>();
- // 鑾峰彇鎺ュ彛3涓暟鎹�
- NFMUtil.response503 response = NFMUtil.getFileData(token, bidInfoFile.infoAddress__c);
- // 鏂囦欢澶у皬瓒呰繃12M
- if (response.Name.equals('鏂囦欢澶у皬瓒呰繃12M')) {
- id tendID = bidInfoFile.Tender_information__c;
- Tender_information__c tempTender = new Tender_information__c();
- tempTender.id = tendID;
- tempTender.File_Surpass_12M__c = true;
- if (String.isBlank(tempTender.Overstep_12M_infofile__c)) {
- tempTender.Overstep_12M_infofile__c = bidInfoFile.infoAddress__c;
- } else {
- if (!tempTender.Overstep_12M_infofile__c.contains(bidInfoFile.infoAddress__c)) {
- // List<String> urlList = singleFile.split(',');
- tempTender.Overstep_12M_infofile__c += bidInfoFile.infoAddress__c + ',';
- }
- }
- updateTenderList.add(tempTender);
+ // // 瀛樻斁瓒呰繃12M鐨勯檮浠�
+ // List<Attachment> TenOtherAttList = new List<Attachment>();
+ // // 瀛樻斁鎵�鏈夐檮浠�
+ // List<String> FileList = new List<String>();
+ // // 濡傛灉鏂囦欢澶у皬瓒呰繃12M鏇存柊
+ // List< Tender_information__c> updateTenderList = new List< Tender_information__c>();
+ // // 鑾峰彇鎺ュ彛3涓暟鎹�
+ // NFMUtil.response503 response = NFMUtil.getFileData(token, bidInfoFile.infoAddress__c);
+ //UP TO NEW AWS method sushanhu start 20220301
+ // List< Tender_information__c> updateTenderList = new List< Tender_information__c>();
+ List<FileAddress__c> fileList = new List<FileAddress__c>();
+ transUrl =pi.searchUrl;
+ NFMUtil.response response = NFMUtil.getAWSQLMData(pi.newUrl ,JSON.serialize(queryfileList), token);
+ system.debug('aws result'+response.responseBody);
+ Map<String, Object> result = (Map<String, Object>)JSON.deserializeUntyped(response.responseBody);
+ system.debug('NFM503 aws result--'+response.responseBody+'status'+response.status);
+ transId =(String)result.get('txId');
+ //UP TO NEW AWS method sushanhu start 20220301
+ // 鏂板緱瀛樺偍 涓嶉渶瑕佸垽鏂枃浠惰秴杩�12m
+ // // 鏂囦欢澶у皬瓒呰繃12M
+ // if (response.Name.equals('鏂囦欢澶у皬瓒呰繃12M')) {
+ // id tendID = bidInfoFile.Tender_information__c;
+ // Tender_information__c tempTender = new Tender_information__c();
+ // tempTender.id = tendID;
+ // tempTender.File_Surpass_12M__c = true;
+ // if (String.isBlank(tempTender.Overstep_12M_infofile__c)) {
+ // tempTender.Overstep_12M_infofile__c = bidInfoFile.infoAddress__c;
+ // } else {
+ // if (!tempTender.Overstep_12M_infofile__c.contains(bidInfoFile.infoAddress__c)) {
+ // // List<String> urlList = singleFile.split(',');
+ // tempTender.Overstep_12M_infofile__c += bidInfoFile.infoAddress__c + ',';
+ // }
+ // }
+ // updateTenderList.add(tempTender);
+ // }
+ // // 灏嗚幏鍙栧埌鐨勬暟鎹瓨鎴愰檮浠�
+ // Attachment WebAtt = new Attachment();
+ // WebAtt.ParentId = bidInfoFile.Tender_information__c;
+ // WebAtt.Body = response.responseBody;
+ // WebAtt.Name = bidInfoFile.Tender_information__r.InfoType__c + ':' + response.Name;
+ // if (!response.Name.equals('鏂囦欢澶у皬瓒呰繃12M')) {
+ // TenOtherAttList.add(WebAtt);
+ // }
+ // sp = Database.setSavepoint();
+
+ // if (updateTenderList.size() > 0) {
+ // update updateTenderList;
+ // }
+
+ // System.debug('----1----' + TenOtherAttList);
+ // if (TenOtherAttList.size() > 0 ) {
+ // upsert TenOtherAttList;
+ // }
+
+ // bidInfoFileList[0].isProcessed__c = true;
+ // bidInfoFileList[0].ErrorMessage__c = '';
+
+ // update bidInfoFileList;
+ // if (System.Test.isRunningTest()) {
+ // throw new ControllerUtil.myException('aaa');
+ // }
+ // return;
+ String statusCode =String.valueOf(result.get('status')) ;
+ system.debug('statuscode aws-- '+statusCode);
+ if (!'0'.equals(statusCode)) {
+ System.debug('response.responseBody:' + response.responseBody);
+ return;
}
- // 灏嗚幏鍙栧埌鐨勬暟鎹瓨鎴愰檮浠�
- Attachment WebAtt = new Attachment();
- WebAtt.ParentId = bidInfoFile.Tender_information__c;
- WebAtt.Body = response.responseBody;
- WebAtt.Name = bidInfoFile.Tender_information__r.InfoType__c + ':' + response.Name;
- if (!response.Name.equals('鏂囦欢澶у皬瓒呰繃12M')) {
- TenOtherAttList.add(WebAtt);
- }
+ Map<String, Object> fileMap = (Map<String, Object >)result.get('object');
+ system.debug('fileMap'+fileMap.toString());
+ Map<String, Object> fileVO =(Map<String, Object>)fileMap.get(bidInfoFile.infoAddress__c);
+
+ String Name =(String)fileVO.get('name');
+ // if (Name.equals('鏂囦欢澶у皬瓒呰繃12M')) {
+ // id tendID = bidInfoFile.Tender_information__c;
+ // Tender_information__c tempTender = new Tender_information__c();
+ // tempTender.id = tendID;
+ // tempTender.File_Surpass_12M__c = true;
+ // if (String.isBlank(tempTender.Overstep_12M_infofile__c)) {
+ // tempTender.Overstep_12M_infofile__c = bidInfoFile.infoAddress__c;
+ // } else {
+ // if (!tempTender.Overstep_12M_infofile__c.contains(bidInfoFile.infoAddress__c)) {
+ // // List<String> urlList = singleFile.split(',');
+ // tempTender.Overstep_12M_infofile__c += bidInfoFile.infoAddress__c + ',';
+ // }
+ // }
+ // updateTenderList.add(tempTender);
+ // }
+
+ //灏嗚幏鍙栫殑AWS鏂囦欢鍦板潃瀛樺偍
+ FileAddress__c file = new FileAddress__c();
+ file.ParentRecordId__c = bidInfoFile.Tender_information__c;
+ file.FileName__c = bidInfoFile.Tender_information__r.InfoType__c + ':' + Name;
+ file.DownloadLink__c =pi.undeleteUrl+(String)fileVO.get('key')+'&fileName='+file.FileName__c;
+ file.ViewLink__c = pi.queryUrl+(String)fileVO.get('key');
+ file.AWS_File_Key__c =(String)fileVO.get('key');
+ fileList.add(file);
sp = Database.setSavepoint();
- if (updateTenderList.size() > 0) {
- update updateTenderList;
- }
-
- System.debug('----1----' + TenOtherAttList);
- if (TenOtherAttList.size() > 0 ) {
- upsert TenOtherAttList;
+ System.debug('----1----' + fileList);
+ if (fileList.size() > 0 ) {
+ upsert fileList;
}
bidInfoFileList[0].isProcessed__c = true;
bidInfoFileList[0].ErrorMessage__c = '';
update bidInfoFileList;
+ // add 纭浜嬪姟 sushanhu 20220302 start
+
+ if (fileList.size() > 0 ) {
+ for (FileAddress__c fileAddress : fileList) {
+ system.debug('fileAddress.Id---'+json.serialize(fileAddress));
+ sfRecordIds.add(fileAddress.Id);
+ system.debug('fileAddress.Id---'+fileAddress.Id);
+ }
+ }
+ system.debug('鎴愬姛鐨則oken'+token);
+ isSuccess =1;
+
+ // if (!confirm) {
+ // //鍥炴粴
+ // if (sp != null) {
+ // Database.rollback(sp);
+ // }
+ // }
+ // add 纭浜嬪姟 sushanhu 20220302 end
if (System.Test.isRunningTest()) {
throw new ControllerUtil.myException('aaa');
}
- return;
+ // return;
} catch (Exception ex) {
if (sp != null) {
Database.rollback(sp);
}
+ // //add 纭浜嬪姟 20220302 sushanhu start
+ // system.debug('澶辫触鐨則oken'+token);
+ // PIHelper.confirmFileTrans('NFM503',0,'',transId,token,transUrl);
+ //add 纭浜嬪姟 20220302 sushanhu end
bidInfoFile.ErrorMessage__c = '503鎶涘嚭寮傚父锛�' + ex.getMessage() + '\n' + ex.getStackTraceString();
+ system.debug('ErrorMessage'+bidInfoFile.ErrorMessage__c);
}
update bidInfoFile;
}
global void finish(Database.BatchableContext BC) {
-
+ // add confirm transaction for pipl sushanhu 20220314 start
+ if (isSuccess==0) {
+ PIHelper.confirmFileTrans('NFM503',isSuccess,'',transId,token,transUrl);
+ }else {
+ PIHelper.confirmFileTrans('NFM503',isSuccess,JSON.serialize(sfRecordIds),transId,token,transUrl);
+ }
+
+ // add confirm transaction for pipl sushanhu 20220314 end
}
}
\ No newline at end of file
--
Gitblit v1.9.1