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