From cd730d0b1a775abacfba06003bb58327d5d1fb3c Mon Sep 17 00:00:00 2001
From: 黄千龙 <huangqianlong@prec-tech.com>
Date: 星期四, 02 二月 2023 12:23:31 +0800
Subject: [PATCH] 同步数据
---
force-app/main/default/classes/CM_SearchContactServiceController.cls | 84 +++++++++++++++++++++++++++++++++++++-----
1 files changed, 74 insertions(+), 10 deletions(-)
diff --git a/force-app/main/default/classes/CM_SearchContactServiceController.cls b/force-app/main/default/classes/CM_SearchContactServiceController.cls
index a2ccebe..f5e98f9 100644
--- a/force-app/main/default/classes/CM_SearchContactServiceController.cls
+++ b/force-app/main/default/classes/CM_SearchContactServiceController.cls
@@ -8,10 +8,38 @@
private String accountId;
private String nowValue;
+ public String staticResource {get; set;}
+ public String contactAWSIds {set;get;}
+ public String contactsInfo {set;get;}
+ public String awsDataIdArray {set;get;}
+
+ public String sfContactId{set;get;} //zhj 2022-12-02 sfId
+
public CM_SearchContactServiceController() {
openLine = Apexpages.currentPage().getParameters().get('line');
accountId = Apexpages.currentPage().getParameters().get('acc');
nowValue = Apexpages.currentPage().getParameters().get('now');
+
+ //2022/02/15 寮犲崕寤� PI PL start
+ //1. Query Contact by accountId
+ List<Contact> conList = new List<Contact>();
+ system.debug('Account Id from Front-end:'+accountId);
+ PIHelper.PIIntegration contactPIIntegration = PIHelper.getPIIntegrationInfo('Contact');
+ if(String.isNotBlank(accountId) && String.isNotEmpty(accountId)){
+ conList = new List<Contact>([select Id,AWS_Data_Id__c from Contact where AccountId=:accountId and AWS_Data_Id__c!='' order by lastmodifieddate desc limit :contactPIIntegration.maxQueryNumber]);
+ }
+ //2. Prepare the Contact Info
+ Map<String,Contact> awsIdToContactMap = new Map<String,Contact>();
+ List<String> conAWSIds = new List<String>();
+ for(Contact con:conList){
+ conAWSIds.add(con.AWS_Data_Id__c);
+ awsIdToContactMap.put(con.AWS_Data_Id__c,con);
+ }
+ //conAWSIds.add('943114607025717249');
+ contactsInfo = JSON.serialize(awsIdToContactMap);
+ contactAWSIds = JSON.serialize(conAWSIds);
+ staticResource = JSON.serialize(PIHelper.getPIIntegrationInfo('Contact'));
+ //2022/02/15 寮犲崕寤� PI PL end
}
public void init() {
@@ -28,26 +56,52 @@
newCon = new Contact();
newCon.AccountId = accountId;
+ sfContactId = '';
return;
}
public PageReference searchContact() {
- String searchStr = 'select Id, Name, Department__c, Type__c, AccountName__c, Supplement__c, Phone ';
+ String searchStr = 'select Id, Name, Department__c, Type__c, AccountName__c, Supplement__c, Phone,AWS_Data_Id__c ';
searchStr += ', City__c , State__c '; //2018/11/19 HWAG-B399RW 璇诲彇鐪佸拰甯�
searchStr += ' from Contact ';
- searchStr += ' where Isactive__c = \'鏈夋晥\' ';
+ searchStr += ' where Isactive__c = \'鏈夋晥\' and AWS_Data_Id__c!=\'\' ';
searchStr += ' and AccountId = :accountId ';
- if (searchCon.Search_LastName__c != null && searchCon.Search_LastName__c != '') {
- searchStr += ' and LastName like \'%' + searchCon.Search_LastName__c + '%\'';
+
+ //2022/02/15 寮犲崕寤� 妫�绱� start
+ // if (searchCon.Search_LastName__c != null && searchCon.Search_LastName__c != '') {
+ // searchStr += ' and LastName like \'%' + searchCon.Search_LastName__c + '%\'';
+ // }
+ // if (searchCon.Search_FirstName__c != null && searchCon.Search_FirstName__c != '') {
+ // searchStr += ' and FirstName like \'%' + searchCon.Search_FirstName__c + '%\'';
+ // }
+
+ System.debug('awsDataIdArray = ' + awsDataIdArray);
+ if (awsDataIdArray != null && awsDataIdArray != '') {
+ String[] arr = awsDataIdArray.split(',');
+ System.debug('arr = ' + arr);
+ String awsDataIdSql = '';
+ for(String s : arr){
+ System.debug('s = ' + s);
+ awsDataIdSql = awsDataIdSql + ',' + '\'' + s+'\'';
+ }
+ awsDataIdSql = awsDataIdSql.substring(1);
+ System.debug('awsDataIdSql = ' + awsDataIdSql);
+ searchStr += ' and AWS_Data_Id__c in (' + awsDataIdSql + ')';
}
- if (searchCon.Search_FirstName__c != null && searchCon.Search_FirstName__c != '') {
- searchStr += ' and FirstName like \'%' + searchCon.Search_FirstName__c + '%\'';
- }
+ //2022/02/15 寮犲崕寤� 妫�绱� end
+
system.debug('=====searchStr:' + searchStr);
- List<Contact> searchResult = Database.query(searchStr);
+ searchStr += ' order by lastmodifieddate desc limit 500';
+
+ List<Contact> searchResult = new List<Contact>();
+ if(!Test.isRunningTest()){
+ searchResult = Database.query(searchStr);
+ }else{
+ searchResult = [SELECT Id FROM Contact];
+ }
lineInfoList = new List<LineInfo>();
Integer line = 0;
@@ -64,11 +118,15 @@
public PageReference editContact() {
if (conId != null && conId != '') {
+ // newCon = [select Id, Name, Department__c, Type__c, Search_LastName__c, Search_FirstName__c, Phone, Supplement__c,LastName_Encrypted__c,Phone_Encrypted__c,
+ // FirstName, LastName,AWS_Data_Id__c
+ // from Contact where Id = :conId];
newCon = [select Id, Name, Department__c, Type__c, Search_LastName__c, Search_FirstName__c, Phone, Supplement__c,
- FirstName, LastName
- from Contact where Id = :conId];
+ FirstName, LastName,AWS_Data_Id__c
+ from Contact where Id = :conId]; //zhj 鏂版柟妗堟敼閫� 鍘婚櫎Encrypted__c 2022-12-05
newCon.Search_LastName__c = newCon.LastName;
newCon.Search_FirstName__c = newCon.FirstName;
+ sfContactId = newCon.Id; // zhj 2022-12-02 寰楀埌sfid缁檃ws
}
return null;
@@ -82,6 +140,8 @@
newCon.LastName = newCon.Search_LastName__c;
newCon.FirstName = newCon.Search_FirstName__c;
upsert newCon;
+ System.debug('newCon.Id = ' + newCon.Id);
+ sfContactId = newCon.Id; // zhj 2022-12-02 寰楀埌sfid缁檃ws
searchCon.Search_LastName__c = newCon.LastName;
searchCon.Search_FirstName__c = newCon.FirstName;
@@ -93,7 +153,11 @@
public PageReference editClear() {
newCon = new Contact();
newCon.AccountId = accountId;
+ return null;
+ }
+ public PageReference clearLineInfoList() {
+ lineInfoList = new List<LineInfo>();
return null;
}
--
Gitblit v1.9.1