From d3e4451e36fbe25da4427bccd4e6b41aefd473c8 Mon Sep 17 00:00:00 2001
From: binxie <137736985@qq.com>
Date: 星期一, 26 六月 2023 14:53:16 +0800
Subject: [PATCH] newclass0626formate
---
force-app/main/default/pages/NewAndEditAddress.page | 145 +++++++++++++++++++++++++++++++++++------------
1 files changed, 107 insertions(+), 38 deletions(-)
diff --git a/force-app/main/default/pages/NewAndEditAddress.page b/force-app/main/default/pages/NewAndEditAddress.page
index 773d6fe..7d6df80 100644
--- a/force-app/main/default/pages/NewAndEditAddress.page
+++ b/force-app/main/default/pages/NewAndEditAddress.page
@@ -1,16 +1,9 @@
-<!--
- @description :
- @author : ChangeMeIn@UserSettingsUnder.SFDoc
- @group :
- @last modified on : 03-23-2022
- @last modified by : ChangeMeIn@UserSettingsUnder.SFDoc
--->
<apex:page standardController="Address__c" extensions="NewAndEditAddressController" id="page">
<apex:stylesheet value="{!URLFOR($Resource.blockUIcss)}"/>
<apex:includeScript value="{! URLFOR($Resource.AWSService, 'AWSService.js') }" />
<apex:includeScript value="{!URLFOR($Resource.jquery183minjs)}"/>
<apex:includeScript value="{!URLFOR($Resource.PleaseWaitDialog)}"/>
- <script src="../../soap/ajax/53.0/connection.js" type="text/javascript"></script>
+ <apex:includeScript value="{!URLFOR($Resource.connection20)}"/>
<style>
.disabledbutton {
pointer-events: none;
@@ -20,6 +13,9 @@
<script>
AWSService.sfSessionId = '{!GETSESSIONID()}';
var staticResources = JSON.parse('{!staticResource}');
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ var staticResourcesV2 = JSON.parse('{!staticResourceV2}');
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
var staticResourcesContact = JSON.parse('{!staticResourceContact}');
var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}');
var fieldAPIToLabelMap = JSON.parse('{!fieldAPIToLabelMapStr}');
@@ -27,10 +23,11 @@
var requiredAPIToChangedLabelMap = new Map();
requiredAPIToChangedLabelMap.set('LastName', '{!PIPL_Name_Label}');
console.log('{!contactsInfo}');
- var VLookUpFields = new Set(['Contacts__c', 'Province__c', 'City__c', 'Customer__c']);
+ //var VLookUpFields = new Set(['Contacts__c', 'Province__c', 'City__c', 'Customer__c']);
+ var VLookUpFields = {! VLookUpFieldsJson};
function ProcessPI(addressJson, payloadForNewPI) {
blockme();
- if ({!isNewMode}) {
+ if ({!isNewMode} || {!isCloneMode}) {
NewPIToAWS(addressJson, payloadForNewPI)
}else {
UpdatePIToAWS(addressJson, payloadForNewPI)
@@ -64,7 +61,11 @@
let Telephone = addressJson.Telephone__c;
let ZipCode = addressJson.ZipCode__c;
let DetailedAddress = addressJson.Detailed_Address__c;
+ //zhj PIPL 2022-06-08 start
+ let ContactName = addressJson.ContactName__c
let addressPIData = new Object();
+ addressPIData.contactName = ContactName;
+ //zhj PIPL 2022-06-08 end
addressPIData.telephone = Telephone;
addressPIData.zipCode = ZipCode;
addressPIData.detailedAddress = DetailedAddress;
@@ -88,7 +89,7 @@
if(phone ){
if(phone.value){
if(!/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone.value)){
- error_msg += ';鐢佃瘽鍙风爜閿欒';
+ error_msg += ';鐢佃瘽鍙风爜閿欒';
}
}else{
if(phone.previousSibling && phone.previousSibling.className.indexOf('requiredBlock')>-1){
@@ -120,14 +121,27 @@
let nodelist = document.querySelectorAll("[data-id]");
let result = {}
- result.RecordTypeId = '{!rtTypeId}';
+ //result.RecordTypeId = '{!rtTypeId}';
for (let index = 0; index < nodelist.length; index++) {
- if (VLookUpFields.has(nodelist[index].getAttribute("data-id"))) {
+ let tag_name = nodelist[index].tagName.toLowerCase();
+ if(tag_name == 'div'){
+ console.log(nodelist[index])
+ }
+ if (VLookUpFields.indexOf(nodelist[index].getAttribute("data-id")) >= 0) {
console.log(nodelist[index].id.indexOf('lkwgt'));
if (nodelist[index].id.indexOf('lkwgt') == -1) {
let vlookUpNodeId = nodelist[index].id + '_lkid';
- let vlookUpNodeValue = document.getElementById(vlookUpNodeId).value;
- result[nodelist[index].getAttribute("data-id")] = vlookUpNodeValue;
+ if (tag_name == 'div') {
+ vlookUpNodeId = nodelist[index].id.substring(0,nodelist[index].id.length-4) + '_lkid';
+ }
+ let vlookUpNodeValue = document.getElementById(vlookUpNodeId);
+ let v = '';
+ if(vlookUpNodeValue){
+ v = vlookUpNodeValue.value;
+ }else{
+ v = nodelist[index].value;
+ }
+ result[nodelist[index].getAttribute("data-id")] = v;
}
} else if (nodelist[index].type == 'checkbox') {
result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked;
@@ -148,14 +162,32 @@
}
return result;
}
+
+ function EditButton(isDisabled){
+ var topele = document.getElementById('topButtonRow');
+ var bottomele = document.getElementById('bottomButtonRow');
+
+ if (isDisabled) {
+ topele.classList.add("disabledbutton");
+ bottomele.classList.add("disabledbutton");
+ }else {
+ topele.classList.remove("disabledbutton");
+ bottomele.classList.remove("disabledbutton");
+ }
+ }
function QueryAddressFromAWS() {
AWSService.query(staticResources.queryUrl, '{!AWSDataId}', queryBack, staticResources.token);
}
var queryBack = function queryBack(data) {
console.log('data = ' + data);
- document.querySelector("[data-id='Telephone__c']").value = data.object.telephone;
- document.querySelector("[data-id='ZipCode__c']").value = data.object.zipCode;
- document.querySelector("[data-id='Detailed_Address__c']").value = data.object.detailedAddress;
+ if(document.querySelector("[data-id='Telephone__c']"))
+ document.querySelector("[data-id='Telephone__c']").value = data.object.telephone;
+ if(document.querySelector("[data-id='ZipCode__c']"))
+ document.querySelector("[data-id='ZipCode__c']").value = data.object.zipCode;
+ if(document.querySelector("[data-id='Detailed_Address__c']"))
+ document.querySelector("[data-id='Detailed_Address__c']").value = data.object.detailedAddress;
+ if(document.querySelector("[data-id='ContactName__c']"))
+ document.querySelector("[data-id='ContactName__c']").value = data.object.contactName;
unblockUI();
};
@@ -164,18 +196,28 @@
let r = result;
console.log('Result from AWS' + r);
console.log('payloadJson=' + payloadJson);
+ //zhj PIPL 2022-06-08 start
+ payloadJson.ContactName__c = r.object[0].contactName;
payloadJson.Telephone__c = r.object[0].telephone;
payloadJson.ZipCode__c = r.object[0].zipCode;
payloadJson.Detailed_Address__c = r.object[0].detailedAddress;
- payloadJson.Telephone_Encrypted__c = r.object[0].telephoneEncrypt;
- payloadJson.ZipCode_Encrypted__c = r.object[0].zipCodeEncrypt;
- payloadJson.Detailed_Address_Encrypted__c = r.object[0].detailedAddressEncrypt;
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ // payloadJson.ContactName_Encrypted__c = r.object[0].contactNameEncrypt;
+ // payloadJson.Telephone_Encrypted__c = r.object[0].telephoneEncrypt;
+ // payloadJson.ZipCode_Encrypted__c = r.object[0].zipCodeEncrypt;
+ // payloadJson.Detailed_Address_Encrypted__c = r.object[0].detailedAddressEncrypt;
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
+ //zhj PIPL 2022-06-08 end
//payloadJson.AWS_Data_Id__c = r.object[0].dataId;
payloadJson.AWS_Data_Id__c = '{!AWSDataId}';
- if (isNewMode) {
+ if (isNewMode || {!isCloneMode}) {
payloadJson.AWS_Data_Id__c = r.object[0].dataId;
+ delete payloadJson.OwnerId;
} else {
payloadJson.AWS_Data_Id__c = '{!AWSDataId}';
+ }
+ if('{!rtTypeId}'){
+ payloadJson.RecordTypeId = '{!rtTypeId}';//Add by zhj for Record Type Issue 20220421
}
return payloadJson;
}
@@ -199,18 +241,26 @@
let obj = JSON.parse(payloadForNewPI);
obj[0].dataId = '{!AWSDataId}';
let payloadForNewPIJson = JSON.stringify(obj);
- AWSService.update(staticResources.updateUrl, addressJson, payloadForNewPIJson, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, false, insertOrUpdateBack,redirectCallBack);
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ //AWSService.update(staticResources.updateUrl, addressJson, payloadForNewPIJson, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, false, insertOrUpdateBack,redirectCallBack);
+ AWSService.update(staticResourcesV2.updateUrl, addressJson, payloadForNewPIJson, controllerSaveMethod, staticResourcesV2.token, staticResources.transactionUrl, false, insertOrUpdateBack,redirectCallBack);
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
}
function NewPIToAWS(addressJson, payloadForNewPI) {
let controllerSaveMethod = '{!$RemoteAction.NewAndEditAddressController.saveAddress}';
- AWSService.insert(staticResources.newUrl, addressJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, true, insertOrUpdateBack,redirectCallBack);
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 start
+ //AWSService.insert(staticResources.newUrl, addressJson, payloadForNewPI, controllerSaveMethod, staticResources.token, staticResources.transactionUrl, true, insertOrUpdateBack,redirectCallBack);
+ AWSService.insert(staticResourcesV2.newUrl, addressJson, payloadForNewPI, controllerSaveMethod, staticResourcesV2.token, staticResources.transactionUrl, true, insertOrUpdateBack,redirectCallBack);
+ //zhj MEBG鏂版柟妗堟敼閫� 2022-11-29 end
}
function checkRequiredFieldMsg(formData) {
let blankRequiredFields = '';
for(i = 0;i<requiredFieldAPIList.length;i++){
- if(formData[requiredFieldAPIList[i]]){
+ if (formData[requiredFieldAPIList[i]] && (VLookUpFields.indexOf(requiredFieldAPIList[i]) == -1)) {
+ continue;
+ }else if((VLookUpFields.indexOf(requiredFieldAPIList[i]) != -1) && formData[requiredFieldAPIList[i]] != '000000000000000'){
continue;
}else{
let fieldAPIValue = requiredFieldAPIList[i]
@@ -229,6 +279,7 @@
return blankRequiredFields;
}
function saveAddressProcess(saveMode) {
+ EditButton(true);
disableButtonStatus();
redirectMode = saveMode;
@@ -264,6 +315,7 @@
errorMsgNode.innerText = errorMsg;
errorMsgNode.className = 'pbError';
unblockUI();
+ EditButton(false);
}
function hiddenErrorMsgNode() {
let errorMsgNode = document.getElementById("page:form:block:msgContent");
@@ -282,7 +334,7 @@
//1. Check account value
let accountNodeId = document.querySelector("[data-id='Customer__c']").id + '_lkid';
let accountValue = document.getElementById(accountNodeId).value;
- let searchContactKeyWord = document.querySelector("[data-id='Customer__c']").value;
+ let searchContactKeyWord = document.querySelector("[data-id='Contacts__c']").value;
console.log(accountValue);
if (accountValue != '000000000000000') {
let baseUrl = "/apex/SearchContactPage";
@@ -325,15 +377,17 @@
function queryContactName() {
let sfId = document.getElementById(document.querySelector("[data-id='Contacts__c']").id + '_lkid').value;
- let contactsInfo = JSON.parse('{!contactsInfo}');
- let dataId = contactsInfo[sfId];
- let queryContactBack = function(data){
- //To Do later
- console.log('ContactData = ' + data.object);
+ if(sfId && sfId != '000000000000000'){
+ let contactsInfo = JSON.parse('{!contactsInfo}');
+ let dataId = contactsInfo[sfId];
+ let queryContactBack = function(data){
+ //To Do later
+ console.log('ContactData = ' + data.object);
- document.querySelector("[data-id='Contacts__c']").value = data.object.lastName;
+ document.querySelector("[data-id='Contacts__c']").value = data.object.lastName;
+ }
+ AWSService.query(staticResourcesContact.queryUrl, dataId, queryContactBack, staticResources.token);
}
- AWSService.query(staticResourcesContact.queryUrl, dataId, queryContactBack, staticResources.token);
// let url = staticResourcesContact.queryUrl + '?dataId=' + dataId;
// fetch(url, {
// method: 'GET',
@@ -379,7 +433,7 @@
<img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" />
<h2 class="mainTitle">鏀惰揣鍦板潃缂栬緫</h2>
</td>
- <td class="pbButton" id="topButtonRow">
+ <td class="pbButton" id="topButtonRow" style="pointer-events: none; opacity: 0.4;">
<input class="btn" type="Button" value="淇濆瓨" onclick="saveAddressProcess('Save')" />
<input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveAddressProcess('SaveAndNew')" />
<apex:commandButton action="{!cancel}" value="鍙栨秷" />
@@ -402,8 +456,12 @@
<!--Each section has layoutFields, let's iterate them as well-->
<apex:repeat value="{!layoutSection.layoutFields}" var="layoutField">
- <apex:inputField html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}"
+ <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}"
required="{!layoutField.isRequired}" />
+ <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI!='RecordTypeId'}"
+ required="{!layoutField.isRequired}" />
+ <apex:outputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Address__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}"
+ />
<apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}">
</apex:pageblocksectionitem>
</apex:repeat>
@@ -418,7 +476,16 @@
for (let n = 0; n < layoutSection.length; n++) {
let layoutField = layoutSection[n];
if (layoutField.fieldAPI != '' && document.querySelector("[data-id='"+layoutField.fieldAPI+"']") != null) {
- document.querySelector("[data-id='"+layoutField.fieldAPI+"']").disabled = !(layoutField.editableField);
+ let e = document.querySelector("[data-id='"+layoutField.fieldAPI+"']");
+ e.disabled = !(layoutField.editableField);
+ if (!(layoutField.editableField)) {
+ if (e.getAttribute("multiple") && e.getAttribute("multiple") == 'multiple') {
+ e.parentNode.classList.add("disabledbutton");
+ }
+ if (e.tagName == 'DIV') {
+ e.classList.add("disabledbutton");
+ }
+ }
}
}
}
@@ -431,9 +498,11 @@
QueryAddressFromAWS();
}
//Replace Vlookup Field
- replaceSearchContactLookup();
+ // replaceSearchContactLookup();
//3. Set Readonly Attribute
// document.querySelector("[data-id='OwnerId']").classList.add("disabledbutton");
+ document.getElementById('topButtonRow').style = '';
+聽 聽 聽 聽 聽 聽 聽document.getElementById('bottomButtonRow').style = '';
/*
jQuery(".lookupInput").each(function(i,e){
let je =jQuery(e).find('input');
@@ -492,7 +561,7 @@
<tr>
<td class="pbTitle">
<img src="/img/s.gif" alt="" class="minWidth" title="" width="1" height="1" /> </td>
- <td class="pbButtonb" id="bottomButtonRow">
+ <td class="pbButtonb" id="bottomButtonRow" style="pointer-events: none; opacity: 0.4;">
<input class="btn" type="Button" value="淇濆瓨" onclick="saveAddressProcess('Save')" />
<input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveAddressProcess('SaveAndNew')" />
<apex:commandButton action="{!cancel}" value="鍙栨秷" />
--
Gitblit v1.9.1