From 08a21f49f2eaf9cfc19ceb67b196cc36ba689305 Mon Sep 17 00:00:00 2001 From: buli <137736985@qq.com> Date: 星期五, 13 五月 2022 20:52:25 +0800 Subject: [PATCH] FIxSWOPageIssue --- force-app/main/default/classes/AWSServiceTool.cls | 135 +++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 125 insertions(+), 10 deletions(-) diff --git a/force-app/main/default/classes/AWSServiceTool.cls b/force-app/main/default/classes/AWSServiceTool.cls index 85eaf80..190c925 100644 --- a/force-app/main/default/classes/AWSServiceTool.cls +++ b/force-app/main/default/classes/AWSServiceTool.cls @@ -8,15 +8,130 @@ * * */ public without sharing class AWSServiceTool { - public static String getAWSToken(){ - String app_id = '6LzizcRf7h8yLx28'; - String app_secret = 'UkLohQcHNjg164SdRc7gnS4rgu4d7FjINM3mtzRbyTS6IrUP5V'; - String url = 'https://52.83.101.205/api/token/getToken?app_id=' + app_id + '&app_secret=' + app_secret; - HttpRequest req = new HttpRequest(); - req.setEndpoint(url); - req.setMethod('GET'); - Http h = new Http(); - HttpResponse res = h.send(req); - return res.getBody(); + public static Boolean getAWSServiceStatus(){ + AWS_Integration_Info__mdt awsConfiguration = [SELECT Enable_AWS_Service__c FROM AWS_Integration_Info__mdt WHERE DeveloperName = 'AWS_Default_Configuration']; + if (awsConfiguration == null) { + System.debug('AWS_Integration_Info__mdt娌¢厤缃�'); + return false; + } + return awsConfiguration.Enable_AWS_Service__c; } + public static List<Contact> getNoPIContact(String searchContactName,String accountId){ + if(searchContactName!='' || accountId!=''){ + String noPISQL = 'select Id,Name,Email,Phone,Account.Name,MobilePhone from Contact where Account_Record_Type_DeveloperName__c in('+'\'Agency\''+','+'\'Dealer\''+')'; + if(String.isNotEmpty(accountId)){ + String[] accountIds = accountId.split(','); + String accounts = ''; + for(String s : accountIds){ + accounts += ',\''+s+'\''; + } + accounts = accounts.substring(1); + System.debug('accounts = ' + accounts); + noPISQL += ' and AccountId in ('+accounts+')'; + } + if(String.isNotEmpty(searchContactName)){ + noPISQL += ' and Name like \'%'+searchContactName+'%\''; + } + system.debug('noPISQL = ' + noPISQL); + List<Contact> partnerContactList = Database.query(noPISQL); + return partnerContactList; + } + return new List<Contact>(); + } + public static String getAWSToken(){ + AWS_Integration_Info__mdt awsConfiguration = [SELECT App_Id__c,Token_URL__c,App_Secret__c,Host_URL__c FROM AWS_Integration_Info__mdt WHERE DeveloperName = 'AWS_Default_Configuration']; + if (awsConfiguration == null) { + System.debug('AWS_Integration_Info__mdt娌¢厤缃�'); + return null; + } + String awsAppId = awsConfiguration.App_Id__c; + String awsAppSecret = awsConfiguration.App_Secret__c; + Http http = new Http(); + HttpRequest request = new HttpRequest(); + String url = awsConfiguration.Token_URL__c; + request.setEndpoint(url); + request.setMethod('GET'); + if(Test.isRunningTest()){ + return 'UTToken'; + } + HttpResponse response = http.send(request); + Map<String, Object> results = (Map<String, Object>) JSON.deserializeUntyped(response.getBody()); + String token = (String)results.get('object'); + return token; + } + @future(callout=true) + public static void deleteFileAddress(Set<String> fileAddressIds){ + //1. Get file address id + system.debug('fileAddressId = '+ JSON.serialize(fileAddressIds)); + PIHelper.PIIntegration documentPI=PIHelper.getPIIntegrationInfo('Document'); + //2. Delete aws file doucment and post aws service + Http http = new Http(); + HttpRequest request = new HttpRequest(); + String url = documentPI.deleteUrl; + request.setEndpoint(url); + request.setMethod('POST'); + request.setHeader('pi-token',documentPI.token); + request.setHeader('Content-Type', 'application/json'); + request.setBody(JSON.serialize(fileAddressIds)); + HttpResponse response = http.send(request); + system.debug('response = ' + response); + if(response.getStatusCode() == 200){ + Map<String, Object> results = (Map<String, Object>) JSON.deserializeUntyped(response.getBody()); + if(results.get('status')=='0'){ + System.debug('鎴愬姛鍒犻櫎'); + } + } + } + //add for pipl sushanhu 20220311 start + public static response sendToPiAWS(String rowDataStr, String endpoint,String awsToken) { + + Http http = new Http(); + HttpRequest req = new HttpRequest(); + HTTPResponse res; + String resb; + req.setHeader('Content-Type', 'application/json'); + req.setTimeout(120000); + req.setEndpoint(endpoint); + req.setMethod('POST'); + req.setHeader('pi-token', awsToken); + req.setBody(rowDataStr); + res = http.send(req); + string ress = String.valueOf(res.getStatusCode()) ; + resb = res.getBody(); + system.debug('ress:' + ress); + return new response(ress, resb); +} + + public class response { + public string status; + public string responseBody; + public response(string status, string responseBody ) { + this.status = status; + this.responseBody = responseBody; + } + } +//add for pipl sushanhu 20220311 end +//add for pipl sushanhu 20220311 start + public class NFMResponse{ + public Boolean SFStatus; + public String SFMessage; + public StaticResponse staticResponse; + } + public class StaticResponse{ + public string status; + public String Message; + public StaticResponse(){ + status='0'; + Message=''; + } + } + public static NFMResponse getNFMResponse(){ + NFMResponse result=new NFMResponse(); + result.staticResponse =new StaticResponse(); + return result; + + } +//add for pipl sushanhu 20220311 en + + } \ No newline at end of file -- Gitblit v1.9.1