From ddf52e1dd6e4041756854ee3ea914d568e98922e Mon Sep 17 00:00:00 2001
From: 张宇恒 <bxyun0@163.com>
Date: 星期四, 28 四月 2022 09:35:35 +0800
Subject: [PATCH] 【委托】 【新需求】询价页面增加新对象
---
force-app/main/default/pages/NewAndEditReport.page | 142 ++++++++++++++++++++++++++++++++++++----------
1 files changed, 110 insertions(+), 32 deletions(-)
diff --git a/force-app/main/default/pages/NewAndEditReport.page b/force-app/main/default/pages/NewAndEditReport.page
index 16baa76..97c0d49 100644
--- a/force-app/main/default/pages/NewAndEditReport.page
+++ b/force-app/main/default/pages/NewAndEditReport.page
@@ -19,7 +19,7 @@
var redirectMode = 'Save';//1. Save 2. SaveAndNew
var requiredFieldAPIList = JSON.parse('{!requiredFieldAPIListStr}');
var fieldAPIToLabelMap = JSON.parse('{!fieldAPIToLabelMapStr}');
- var VLookUpFields = new Set(['Hospital_Reference__c', 'Department_Class_Ref__c', 'Daily_Report__c', 'OwnerId','Hospital_Department__c',
+ var VLookUpFields = new Set(['Hospital_Reference__c','Consum_Apply__c','Department_Class_Ref__c', 'Daily_Report__c', 'OwnerId','Hospital_Department__c',
'Competition_Company_Name__c','Report_OPDPlan__c','Loaner_request_no1__c','Practitioner1__c','Practitioner2__c','Practitioner3__c','Practitioner4__c',
'Practitioner5__c','Opportunity1__c',
'Opportunity2__c','Product01__c','Product1__c','Product2__c','Product3__c','Product4__c','Product5__c','Order_No__c','Person_In_Charge__c']);
@@ -31,6 +31,18 @@
// console.log('娌℃湁CKEDITOR')
// }
+ 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 alertErrorMessage(errorMsg) {
@@ -39,6 +51,7 @@
errorMsgNode.innerText = errorMsg;
errorMsgNode.className = 'pbError';
unblockUI();
+ EditButton(false);
}
function hiddenErrorMsgNode() {
let errorMsgNode = document.getElementById("page:form:j_id5:msgContent");
@@ -72,7 +85,6 @@
result[nodelist[index].getAttribute("data-id")] = nodelist[index].checked;
} else if (nodelist[index].type == 'select-multiple') {
//nodelist[index].getAttribute("data-id")
- let multiple = nodelist[index].getAttribute("data-id");
//let targets = document.querySelector("[data-id=" + multiple + "]").nextSibling.children[0].children[1].children[2].innerText;
//Before Update By Li Jun 20220411
// let targets = document.querySelector("[data-id=" + multiple + "]").parentNode.children[2].children[0].children[1].children[2].children[0].innerText;
@@ -82,6 +94,7 @@
//Before Update By Li Jun 20220411
//After Update By Li Jun 20220411 Start
+ let multiple = nodelist[index].getAttribute("data-id");
let targets = document.querySelector("[data-id=" + multiple + "]").options;
let selValues = [];
for(i=0; i < targets.length; i++){
@@ -111,13 +124,22 @@
}
}
//鎵嬫湳鍒嗙被1
- result.Technical_Category1__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38').value:'';
- //鎵嬫湳鍒嗙被2
- result.Technical_Category2__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38').value:'';
- //鐩殑2
- if(document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38')){
- result.Purpose2__c = document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38').value;
+ if(api_id_map['Technical_Category1__c']){
+ result.Technical_Category1__c = document.getElementById(api_id_map['Technical_Category1__c']).value!='_\x01_'?document.getElementById(api_id_map['Technical_Category1__c']).value:'';
}
+ //result.Technical_Category1__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:2:j_id38').value:'';
+ //鎵嬫湳鍒嗙被2
+ if(api_id_map['Technical_Category2__c']){
+ result.Technical_Category2__c = document.getElementById(api_id_map['Technical_Category2__c']).value!='_\x01_'?document.getElementById(api_id_map['Technical_Category2__c']).value:'';
+ }
+ //result.Technical_Category2__c = document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38')!=null?document.getElementById('page:form:j_id5:j_id35:4:j_id36:j_id37:4:j_id38').value:'';
+ //鐩殑2
+ if(api_id_map['Purpose2__c']){
+ result.Purpose2__c = document.getElementById(api_id_map['Purpose2__c']).value;
+ }
+ // if(document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38')){
+ // result.Purpose2__c = document.getElementById('page:form:j_id5:j_id35:2:j_id36:j_id37:1:j_id38').value;
+ // }
//瀵屾枃鏈璧嬪��
if(getCKEinstance('Customer_sigh_photo__c')){
result.Customer_sigh_photo__c = getCKEinstance('Customer_sigh_photo__c').getData()
@@ -174,24 +196,24 @@
function validateFieldValueFormate() {
//VOC_Informer_Contact__c,Caller_phone_c__c
let error_msg = '';
- let textEmail = "[data-id=' Follow_staff_email__c']";
- let textPhone1 = "[data-id='VOC_Informer_Contact__c']";
- let textPhone2 = "[data-id='Caller_phone_c__c']";
- //Email
- let email = document.querySelector(textEmail);
- if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){
- error_msg += ';瀵瑰簲鑰�(閭)鏍煎紡閿欒';
- }
+ // let textEmail = "[data-id=' Follow_staff_email__c']";
+ // let textPhone1 = "[data-id='VOC_Informer_Contact__c']";
+ // let textPhone2 = "[data-id='Caller_phone_c__c']";
+ // //Email
+ // let email = document.querySelector(textEmail);
+ // if(email && !/^[\w-]{3,12}@[\da-zA-Z]{2,16}\.[a-zA-Z]+$/.test(email.value)){
+ // error_msg += ';瀵瑰簲鑰�(閭)鏍煎紡閿欒';
+ // }
- let phone1 = document.querySelector(textPhone1);
- if(phone1 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone1.value)){
- error_msg += ';淇℃伅鎻愪緵浜鸿仈绯绘柟寮忥紙鐢佃瘽锛夊彿鐮侀敊璇�';
- }
+ // let phone1 = document.querySelector(textPhone1);
+ // if(phone1 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone1.value)){
+ // error_msg += ';淇℃伅鎻愪緵浜鸿仈绯绘柟寮忥紙鐢佃瘽锛夊彿鐮侀敊璇�';
+ // }
- let phone2 = document.querySelector(textPhone2);
- if(phone2 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone2.value)){
- error_msg += ';鑱旂郴鐢佃瘽鍙风爜閿欒';
- }
+ // let phone2 = document.querySelector(textPhone2);
+ // if(phone2 && !/^1[3|5|8|7][0-9]\d{4,8}$/.test(phone2.value)){
+ // error_msg += ';鑱旂郴鐢佃瘽鍙风爜閿欒';
+ // }
for(let e of document.getElementsByTagName('select')){
for(let op of e.options){
@@ -226,6 +248,33 @@
return blankRequiredFields;
}
+ var GetEleByClass = function(class_name){
+ let eles = document.getElementsByClassName(class_name);
+ if(eles.length > 0) return eles[0];
+ return null;
+ }
+
+ var GetEleApiName = function(ele){
+ for(let ci in ele.classList){
+ let c = ele.classList[ci];
+ if(c.indexOf('{!ApiPrefix}'+'_')>-1){
+ return c.replace('{!ApiPrefix}'+'_','');
+ }
+ }
+ return '';
+ }
+
+ function IsFormTag(tag_name){
+ if (!tag_name) {
+ return false;
+ }
+ return ['input','select','textarea'].indexOf(tag_name.toLowerCase())>-1;
+ }
+
+ function IsFormElement(e){
+ return IsFormTag(e.tagName);
+ }
+
//4.鑾峰彇瑕佸姞瀵嗙殑瀛楁
function getPIPayload(reportJson) {
let reportPayloadList = [];
@@ -254,7 +303,7 @@
//5.鏂板缓鎴栫紪杈�
function ProcessPI(reportJson, payloadForNewPI) {
blockme();
- if ({!isNewMode} || {!isCloneMode}) {
+ if ({!isNewMode} || {!isCloneMode} || !'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413
NewPIToAWS(reportJson, payloadForNewPI)
}else {
UpdatePIToAWS(reportJson, payloadForNewPI)
@@ -491,10 +540,14 @@
payloadJson.age_Encrypted__c = result.object[0].ageEncrypt;
payloadJson.Medical_History_Encrypted__c = result.object[0].medicalHistoryEncrypt;
payloadJson.sex_Encrypted__c = result.object[0].sexEncrypt;
- if (isNewMode || {!isCloneMode}) {
+ if (isNewMode || {!isCloneMode}||!'{!AWSDataId}') {//Add by Li Jun for PIPL 20220413
payloadJson.AWS_Data_Id__c = result.object[0].dataId;
+ delete payloadJson.OwnerId;
} else {
payloadJson.AWS_Data_Id__c = '{!AWSDataId}';
+ }
+ if('{!rtTypeId}'){
+ payloadJson.RecordTypeId = '{!rtTypeId}';//Add by Li Jun for Record Type Issue 20220421
}
return payloadJson;
}
@@ -514,6 +567,8 @@
//鐐瑰嚮淇濆瓨鎸夐挳
function saveReportProcess(saveMode) {
+ EditButton(true);
+
redirectMode = saveMode;
console.log('redirectMode' + redirectMode);
hiddenErrorMsgNode();
@@ -576,7 +631,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="saveReportProcess('Save')" />
<input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveReportProcess('SaveAndNew')" />
<apex:commandButton action="{!cancel}" value="鍙栨秷" />
@@ -599,8 +654,14 @@
<!--Each section has layoutFields, let's iterate them as well-->
<apex:repeat value="{!layoutSection.layoutFields}" var="layoutField">
- <apex:inputField html-data-id="{!layoutField.fieldAPI}" styleClass="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}"
+ <!-- <apex:inputField html-title="{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" styleClass="{!ApiPrefix} {!ApiPrefix}_{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)}"
+ required="{!layoutField.isRequired}" /> -->
+ <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&&isNewMode}"
required="{!layoutField.isRequired}" />
+ <apex:inputField styleClass="PIBackApi PIBackApi_{!layoutField.fieldAPI}" html-data-id="{!layoutField.fieldAPI}" value="{!Report__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="{!Report__c[layoutField.fieldAPI]}" rendered="{!not(layoutField.isPlaceHOlder)&¬(isNewMode)&&layoutField.fieldAPI=='RecordTypeId'}"
+ />
<apex:pageblocksectionitem rendered="{!layoutField.isPlaceHolder}">
</apex:pageblocksectionitem>
</apex:repeat>
@@ -608,6 +669,18 @@
</apex:pageBlockSection>
</apex:repeat>
<script>
+ var init_nodes = document.getElementsByClassName("PIBackApi");
+ var api_id_map={};
+ for(let ei in init_nodes){
+ let e = init_nodes[ei];
+ if(IsFormElement(e)){
+ if(e.getAttribute("multiple") != 'multiple' || e.style.display == 'none' && e.id.indexOf('selected') < 0){
+ api_id_map[GetEleApiName(e)] = e.id;
+ }
+
+ }
+ }
+ console.log(api_id_map);
sfdcPage.appendToOnloadQueue(function () {
//鍒ゆ柇鏄惁涓哄彧璇婚�夐」
var layoutSections = JSON.parse('{!layoutSectionsStr}');
@@ -646,10 +719,15 @@
if('{!no1Name}' != '' && '{!no1Id}' != ''){
console.log('name = '+'{!no1Name}')
console.log('Id = '+'{!no1Id}')
- document.querySelector("[data-id='Loaner_request_no1__c']").value = '{!no1Name}'
- document.getElementById(document.querySelector("[data-id='Loaner_request_no1__c']").id + '_lkid').value = '{!no1Id}'
+ if(document.querySelector("[data-id='Loaner_request_no1__c']")){
+ document.querySelector("[data-id='Loaner_request_no1__c']").value = '{!no1Name}'
+ document.getElementById(document.querySelector("[data-id='Loaner_request_no1__c']").id + '_lkid').value = '{!no1Id}'
+ }
}
-
+
+ document.getElementById('topButtonRow').style = '';
+ document.getElementById('bottomButtonRow').style = '';
+
let previous_value = {};
jQuery(".lookupInput input").each(function(i,e){
let je =jQuery(e);
@@ -705,7 +783,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="saveReportProcess('Save')" />
<input class="btn" type="Button" value="淇濆瓨骞舵柊寤�" onclick="saveReportProcess('SaveAndNew')" />
<apex:commandButton action="{!cancel}" value="鍙栨秷" />
--
Gitblit v1.9.1