GWY
2022-04-15 b823c7f3569cf9368e2245846e918f78f32e903a
force-app/main/default/classes/AWSServiceTool.cls
@@ -8,6 +8,21 @@
 * 
 * */
public without sharing class AWSServiceTool {
    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)){
                noPISQL += ' and AccountId=\''+accountId+'\'';
            }
            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) {
@@ -21,9 +36,35 @@
        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('成功删除');
            }
        }
    }
}