From 8badb57ea2c82557850ad5b39281c3e8714eb119 Mon Sep 17 00:00:00 2001
From: liuyan <liuyan@prec-tech.com>
Date: 星期四, 24 十一月 2022 10:08:31 +0800
Subject: [PATCH] 科室信息漏传SPO问题
---
force-app/main/default/classes/StraightBackAddressController.cls | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++-----
1 files changed, 104 insertions(+), 10 deletions(-)
diff --git a/force-app/main/default/classes/StraightBackAddressController.cls b/force-app/main/default/classes/StraightBackAddressController.cls
index e63368a..2564baa 100644
--- a/force-app/main/default/classes/StraightBackAddressController.cls
+++ b/force-app/main/default/classes/StraightBackAddressController.cls
@@ -1,4 +1,4 @@
-public without sharing class StraightBackAddressController {
+global without sharing class StraightBackAddressController {
/**
* 椤甸潰椤堕儴妫�绱㈡暟鎹�
*/
@@ -12,6 +12,7 @@
public String tableDataStr{ get; set; }
public String staticResource {get; set;}
public String staticResourceContact {get; set;}
+ public String staticResourceRepair {get; set;}
public Contact newCon{get; set;}
/***************搴曢儴 缂栬緫鍜屾柊澧炵殑 瀵硅薄*******************/
@@ -66,7 +67,14 @@
public String contactNameValue{set;get;}
public String contactIdValue{set;get;}
public String addressDataIds{set;get;}
+ public String sfRecordId{set;get;}
// Add by Li Jun for PIPL 20220308 End
+
+ public String accRecordTypeId {set;get;}//褰撳墠 璁板綍绫诲瀷id
+
+ public String accOfficeTypeId {set;get;}//璁板綍绫诲瀷id 鍔炰簨澶�
+ public String accAgencyTypeId {set;get;}//璁板綍绫诲瀷id 璨╁2搴�
+ public String accAgencyContactTypeId {set;get;}//璁板綍绫诲瀷id 缁忛攢鍟嗚仈绯讳汉
public StraightBackAddressController() {
//鑾峰彇url鏁版嵁
@@ -94,12 +102,20 @@
staticResource = JSON.serialize(PIHelper.getPIIntegrationInfo('Address__c'));
staticResourceContact = JSON.serialize(PIHelper.getPIIntegrationInfo('Contact'));
+ staticResourceRepair = JSON.serialize(PIHelper.getPIIntegrationInfo('Repair__c'));
}
/**
* 寮�濮嬫柟娉�
*/
public PageReference init(){
+ Schema.RecordTypeInfo recordTypeValue = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Office');
+ if(recordTypeValue == null){
+ recordTypeValue = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('office');
+ }
+ accOfficeTypeId = recordTypeValue.getRecordTypeId();
+ accAgencyTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('Agency').getRecordTypeId();
+ accAgencyContactTypeId = Schema.SObjectType.Account.getRecordTypeInfosByDeveloperName().get('AgencyContact').getRecordTypeId();
String RepairSql = makeTextRepairSql(RepairId);
try{
pc = Database.query(RepairSql);
@@ -147,7 +163,20 @@
newCon = new Contact();
return null;
}
-
+
+ //鏌ヨ瀹㈡埛璁板綍绫诲瀷
+ public PageReference queryRecordType(){
+ if(insUpdData.Customer__c!=null){
+ String accid = insUpdData.Customer__c;
+ Account acc = [SELECT id,name,RecordTypeId FROM Account WHERE id =: accid];
+ System.debug('acc---'+acc);
+ System.debug('insUpdData---'+insUpdData);
+ if(acc!=null&&acc.RecordTypeId!=null&&insUpdData.Customer__c!=null){
+ accRecordTypeId = acc.RecordTypeId;
+ }
+ }
+ return null;
+ }
//缂栬緫鑾峰彇鏁版嵁
public PageReference onEditor(){
if(!String.isBlank(UpdId)){
@@ -188,6 +217,7 @@
}
return null;
}
+ /*
//閲囩敤鎸夐挳
public PageReference adoptSave(){
//adoptId 瑕侀噰鐢ㄧ殑鍦板潃鏁版嵁id
@@ -232,7 +262,7 @@
try{
//淇濆瓨鏁版嵁鍒颁慨鐞嗚〃涓�
Repair__c rc = new Repair__c();
- rc.id=RepairId;
+ rc.id = RepairId;
rc.Address_AWS_Data_Id__c = tableData[i].address.AWS_Data_Id__c;
rc.Contact_AWS_Data_Id__c = contactawsDataId;
rc.address_Contacts__c = contactsName;
@@ -252,7 +282,9 @@
}
rc.address_Telephone__c=tableData[i].address.Telephone__c;
rc.Detailed_Address__c=address;
- update rc;
+ if(!Test.isRunningTest()){
+ update rc;
+ }
//淇濆瓨鏁版嵁鍒颁繚鏈夎澶囪〃涓�
Asset ast = new Asset(
@@ -281,13 +313,14 @@
}
return null;
}
-
+*/
//閲嶅畾鍚戝埌 淇悊椤甸潰
public PageReference redirectPag(){
PageReference ref = new Pagereference('/' + RepairId);
ref.setRedirect(true);
return ref;
}
+
/**
* 妫�绱㈡暟鎹煡璇�
@@ -350,12 +383,14 @@
List<Address__c> dataList = Database.query(AddressSql);
if(dataList != null && dataList.size()> 0){
indexCou += dataList.size();
+ System.debug('dataList-----'+dataList);
for(Integer i = 0;i<dataList.size();i++){
String createID = dataList[i].CreatedByid;
createId = createId.substring(0,15);
//鍔炰簨澶勭殑鍦板潃涓嶅彲淇敼
+
if(dataList[i].Address_Classification__c == '鍔炰簨澶�'){
- tableData.add(new AddressData(dataList[i],'none','none','inline'));
+ tableData.add(new AddressData(dataList[i],'none','none','inline'));
}else{
//鍙兘鏀硅嚜宸卞垱寤虹殑鍦板潃鏁版嵁锛岀郴缁熺鐞嗗憳銆丟PI_绯荤粺绠$悊鍛楴ew 娌¢檺鍒�
if(loginPerson == createId ||loginPerson == '00e10000000dzzG' ||loginPerson == '00e10000000Y3o5'){
@@ -470,7 +505,6 @@
}
}
//鍒ゆ柇鑱旂郴浜烘槸鍚﹂兘涓虹┖
-
if(insUpdData.Contacts__c == null || String.isBlank(insUpdData.Contacts__c)){
//鍒ゆ柇鏂板缓鑱旂郴浜烘槸鍚︿负绌�
if(insUpdData.Create_Contacts__c == null || String.isBlank(insUpdData.Create_Contacts__c)){
@@ -493,10 +527,16 @@
surname = surname.substring(0,1);
}
System.debug('newCon = '+newCon);
- addContact = new Contact(LastName=surname,FirstName=monicker,AccountId=insUpdData.Customer__c,RecordTypeId=typeL,AWS_Data_Id__c = newCon.AWS_Data_Id__c,LastName_Encrypted__c=newCon.LastName_Encrypted__c);
+ addContact = new Contact(LastName = surname,
+ FirstName = monicker,
+ AccountId = insUpdData.Customer__c,
+ RecordTypeId = typeL,
+ AWS_Data_Id__c = newCon.AWS_Data_Id__c,
+ LastName_Encrypted__c = newCon.LastName_Encrypted__c);
try{
//鏂板涓�鏉¤仈绯讳汉鏁版嵁
insert addContact;
+ sfRecordId = addContact.id;
insUpdData.Create_Contacts__c = '';
}catch(Exception e){
//ApexPages.addMessages(e);
@@ -527,6 +567,7 @@
try{
//鏂板鎴栦慨鏀规暟鎹�
upsert insUpdData;
+
ApexPages.addmessage(new ApexPages.message(ApexPages.severity.INFO, '淇濆瓨鎴愬姛锛�'));
isSearchBtn = true;
//淇濆瓨鎴愬姛锛岄渶瑕佸垵濮嬪寲涓�涓嬫瀵硅薄锛岄槻姝㈠啀娆$偣鍑绘鎸夐挳淇濆瓨涓�涓潯鍚屾牱鐨勬暟鎹�
@@ -552,12 +593,12 @@
//鏌ヨ淇悊琛ㄦ暟鎹�
private String makeTextRepairSql(String uuid){
- String RepairSql = 'SELECT ID,NAME,HP_ID__c,HP_Name__c,Delivered_Product__c,FSE_ApplyForRepair_time__c,SAP_Transfer_time__c,Dealer__c,Dealer__r.Name,Returns_Product_way__c,Address_Type_Index__c FROM Repair__c where id = \''+RepairId+'\'';
+ String RepairSql = 'SELECT ID,NAME,HP_ID__c,HP_Name__c,Delivered_Product__c,FSE_ApplyForRepair_time__c,SAP_Transfer_time__c,Dealer__c,Dealer__r.Name,Returns_Product_way__c,Address_Type_Index__c,AWS_Data_Id__c FROM Repair__c where id = \''+RepairId+'\'';
return RepairSql;
}
//鏌ヨ鍦板潃琛ㄦ暟鎹�
private String makeTextAddressSql(String typeSearchId) {
- String AddressSql = 'SELECT AWS_Data_Id__c,ID,Address_Classification__c,Customer__c,Customer__r.Name,Contacts__c,Contacts__r.Name,Contacts__r.AWS_Data_Id__c,Telephone__c'
+ String AddressSql = 'SELECT AWS_Data_Id__c,ID,Address_Classification__c,Customer__c,Customer__r.Name,Customer__r.Type,Customer__r.RecordTypeId,Contacts__c,Contacts__r.Name,Contacts__r.AWS_Data_Id__c,Telephone__c'
+',Province__c,Province__r.Name,City__c,City__r.name,Detailed_Address__c,Create_Contacts__c,ZipCode__c,CreatedByid,Detailed_Address_Encrypted__c,Telephone_Encrypted__c,ZipCode_Encrypted__c,Contacts__r.LastName_Encrypted__c'
+ ' FROM Address__c where id != null';
//绫诲瀷绛涢��
@@ -641,6 +682,51 @@
+ ' RecordType.name,Parent.Parent.Id FROM Account WHERE ID = \'' + accId + '\'';
return AccountSql;
}
+
+ @RemoteAction
+ global static string SaveEx(string repaire_json,string asset_json, string address_id){
+ return SaveExCore(repaire_json,asset_json,address_id);
+ }
+
+ public static string SaveExCore(string repaire_json,string asset_json, string address_id){
+ string message = null;
+ string savemessage = null;
+ savepoint sp = Database.setsavepoint();
+ try {
+ Repair__c r = (Repair__c)JSON.deserialize(repaire_json,Repair__c.class);
+ Asset ast = (Asset)JSON.deserialize(asset_json,Asset.class);
+ Address__c add = new Address__c(Id=address_id,Using_Datetime__c = Datetime.now());
+ update r;
+ update ast;
+ update add;
+ }catch(DmlException e) {
+ Integer index = 0;
+ System.debug(e.getNumDml());
+ System.debug(e.getDmlFields(index));
+ System.debug(e.getDmlId(index));
+ System.debug(e.getDmlIndex(index));
+ System.debug(e.getDmlMessage(index));
+ System.debug(e.getDmlStatusCode(index));
+ System.debug(e.getDmlType(index));
+ system.debug(e.getMessage());
+ system.debug(e.getStackTraceString());
+
+ System.debug('into catch'+e.getMessage());
+ Database.rollback(sp);
+
+ message ='淇濆瓨澶辫触锛屽師鍥�:'+ e.getDmlMessage(index);
+ savemessage = e.getMessage()+e.getStackTraceString();
+ } catch (Exception e) {
+ System.debug('into catch'+e.getMessage());
+ Database.rollback(sp);
+
+ savemessage = e.getMessage()+e.getStackTraceString();
+ message = '淇濆瓨澶辫触';
+ } finally {
+ PIHelper.saveTransLog('StraightBackAddressController',address_id,address_id,address_id, repaire_json ,'success',message);
+ }
+ return message;
+ }
/**
* 涓轰簡鏂逛究鍓嶆table鑾峰彇鍊�
@@ -648,6 +734,14 @@
class AddressData {
//鏁版嵁
public Address__c address { get; set; }
+
+ public string addressJson { get{
+ if (address == null) {
+ return null;
+ }
+ return JSON.serialize(address);
+ } }
+
//缂栬緫鎸夐挳鏄惁灞曠ず
public String canEdit { get; private set; }
//缂栬緫鎸夐挳鏄惁灞曠ず
--
Gitblit v1.9.1