public without sharing class LexSearchContractController {
|
@AuraEnabled
|
public static Results init(String ctype){
|
Results results = new Results();
|
try {
|
User useracc = [SELECT accountid FROM user WHERE id = :UserInfo.getUserId() ];
|
String accountId = Useracc.accountid;
|
List<Account> attList = [SELECT id,Name,State_Master__c,State_Master__r.Name,Sales_Section__c,
|
Contract_Decide_Start_Date__c,Contract_Decide_End_Date__c
|
FROM Account
|
WHERE ParentId = :accountId
|
AND Contact_Type__c like :ctype
|
AND Contract_Decide_Start_Date__c <= :Date.Today()
|
AND Contract_Decide_End_Date__c >= :Date.Today()
|
AND Secondary_contract__c = false];
|
results.attList = attList;
|
results.result = 'Success';
|
} catch (Exception e) {
|
results.result = 'Fail';
|
results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
|
}
|
return results;
|
}
|
|
@AuraEnabled
|
public static Results searchContract(String searchName, String accountId, String ctype){
|
Results results = new Results();
|
try {
|
results.attList = Database.query(makeSoql(searchName,Date.today(),accountId,ctype));
|
results.result = 'Success';
|
} catch (Exception e) {
|
results.result = 'Fail';
|
results.errorMsg = e.getLineNumber() + '---' + e.getMessage();
|
}
|
return results;
|
}
|
|
private static String makeSoql(String CateName,Date timetest,String accountId, String ctype){
|
|
String soql = 'SELECT id,Name,State_Master__c,State_Master__r.Name,Sales_Section__c,';
|
soql += ' Contract_Decide_Start_Date__c,Contract_Decide_End_Date__c FROM Account';
|
soql += ' where ParentId = \'' + accountId + '\'' ;
|
soql += ' AND Secondary_contract__c = false' ;
|
soql += ' AND Contact_Type__c like \'%' + String.escapeSingleQuotes(ctype.replaceAll('%', '\\%')) + '%\'';
|
soql += ' AND Contract_Decide_Start_Date__c <=' + String.valueOf(timetest).substring(0, 10);
|
soql += ' AND Contract_Decide_End_Date__c >= ' + String.valueOf(timetest).substring(0, 10);
|
if(!String.isBlank(CateName)){
|
soql += ' AND Name like \'%' + String.escapeSingleQuotes(CateName.replaceAll('%', '\\%')) + '%\'';
|
}
|
return soql;
|
}
|
|
public class Results {
|
@AuraEnabled
|
public String result;
|
@AuraEnabled
|
public String errorMsg;
|
@AuraEnabled
|
public List<Account> attList;
|
}
|
}
|