From 84b24801b8e0e071589ea57b29e64f73e13b1c0c Mon Sep 17 00:00:00 2001
From: 付煜 <fuyu3103346691@163.com>
Date: 星期一, 21 三月 2022 14:54:15 +0800
Subject: [PATCH] SWAG-CCEB67【委托】【重要】保有设备所属变更审批报错
---
force-app/main/default/pages/NewAndEditInquiryForm.page | 235 ++++++++++++++++++++++++++++++++++++++++++++++------------
1 files changed, 187 insertions(+), 48 deletions(-)
diff --git a/force-app/main/default/pages/NewAndEditInquiryForm.page b/force-app/main/default/pages/NewAndEditInquiryForm.page
index be37f91..794606e 100644
--- a/force-app/main/default/pages/NewAndEditInquiryForm.page
+++ b/force-app/main/default/pages/NewAndEditInquiryForm.page
@@ -84,7 +84,8 @@
let arr = data.object[f].split(';');
// 缁欓殣钘忕殑select璧嬪��
- for(let op of ele.options){
+ for(let opi in ele.options){
+ let op = ele.options[opi];
op.selected = arr.indexOf(op.value)>-1;
}
@@ -141,7 +142,8 @@
}
var GetEleApiName = function(ele){
- for(let c of ele.classList){
+ for(let ci in ele.classList){
+ let c = ele.classList[ci];
if(c.indexOf(config.ApiPrefix+'_')>-1){
return c.replace(config.ApiPrefix+'_','');
}
@@ -176,8 +178,10 @@
}
}
- for(let e of document.getElementsByTagName('select')){
- for(let op of e.options){
+ for(let ei in document.getElementsByTagName('select')){
+ let e = document.getElementsByTagName('select')[ei];
+ for(let opi in e.options){
+ let op = e.options[opi];
if(op.value == "*****" && op.selected){
error_msg += ';涓嬫媺妗嗕笉鑳戒富鍔ㄩ�夋嫨瀵嗘枃閫夐」';
}
@@ -216,9 +220,9 @@
v = ele.value;
}
- if(v && v != "000000000000000"){
+ //if(v && v != "000000000000000"){
result[field_api_name] = v;
- }
+ //}
}
} else if (ele.type == 'checkbox') {
@@ -330,7 +334,7 @@
// Check Required Field
let checkRequiredFieldMsgResult = checkRequiredFieldMsg(sobjJson);
if (checkRequiredFieldMsgResult) {
- alertErrorMessage('requiredErrorMsg' + checkRequiredFieldMsgResult);
+ alertErrorMessage('{!$Label.Input_Required_Field_Msg}' + checkRequiredFieldMsgResult);
return
}
// //3. Prepare the payload for New PI API To AWS - To Do
@@ -356,7 +360,7 @@
errorMsgNode.className = '';
}
- var newSearchContactWindow = null;
+ var newSearchContactWindow = null;
var contactHtmlString = '<img src="/img/s.gif" onclick="searchContact(\'page:form:contactId\')" alt="Reference Document Number Lookup" class="lookupIcon" title="Reference Document Number Lookup (New Window)"/>';
function htmlToElement(html) {
var template = document.createElement('template');
@@ -408,7 +412,8 @@
function replaceSearchContactLookup() {
let lookUpNode = htmlToElement(contactHtmlString);
console.log(lookUpNode);
- if (!{!isNewMode}) {
+ let eleContactValue = document.querySelector("[data-id='Contact_Name__c']").parentNode.parentNode.children[0].value;
+ if (!{!isNewMode} || (eleContactValue != '000000000000000')) {
//1. Query Contact from AWS by AWSDataId
queryContactName()
}
@@ -421,25 +426,25 @@
let sfId = document.getElementById(document.querySelector("[data-id='Contact_Name__c']").id + '_lkid').value;
let contactsInfo = JSON.parse('{!LookUpOverrideFieldsMapJson}');
let dataId = contactsInfo[sfId];
- // let queryContactBack = function(data){
- // //To Do later
- // console.log('ContactData = ' + data.object);
+ let queryContactBack = function(data){
+ //To Do later
+ console.log('ContactData = ' + data.object);
- // document.querySelector("[data-id='Contact_Name__c']").value = data.object.lastName;
- // }
- // AWSService.query(staticResourcesContact.queryUrl, dataId, queryContactBack, staticResources.token);
- let url = staticResourcesContact.queryUrl + '?dataId=' + dataId;
- fetch(url, {
- method: 'GET',
- headers: {
- 'Content-Type': 'application/json',
- 'pi-token': staticResources.token
- }
- }).then((data) => {
- return data.json();
- }).then((result) => {
- document.querySelector("[data-id='Contact_Name__c']").value = result.object.lastName;
- })
+ document.querySelector("[data-id='Contact_Name__c']").value = data.object.lastName;
+ }
+ AWSService.query(staticResourcesContact.queryUrl, dataId, queryContactBack, staticResources.token);
+ // let url = staticResourcesContact.queryUrl + '?dataId=' + dataId;
+ // fetch(url, {
+ // method: 'GET',
+ // headers: {
+ // 'Content-Type': 'application/json',
+ // 'pi-token': staticResources.token
+ // }
+ // }).then((data) => {
+ // return data.json();
+ // }).then((result) => {
+ // document.querySelector("[data-id='Contact_Name__c']").value = result.object.lastName;
+ // })
}
//For Lead Search
@@ -485,27 +490,26 @@
let sfId = document.getElementById(document.querySelector("[data-id='Lead_link__c']").id + '_lkid').value;
let leadsInfo = JSON.parse('{!LookUpOverrideFieldsMapJson}');
let dataId = leadsInfo[sfId];
- // let queryLeadBack = function(data){
- // //To Do later
- // console.log('ContactData = ' + data.object);
+ let queryLeadBack = function(data){
+ //To Do later
+ console.log('ContactData = ' + data.object);
- // document.querySelector("[data-id='Lead_link__c']").value = data.object.lastName;
- // }
- // AWSService.query(staticResourcesLead.queryUrl, dataId, queryLeadBack, staticResources.token);
- let url = staticResourcesLead.queryUrl + '?dataId=' + dataId;
- fetch(url, {
- method: 'GET',
- headers: {
- 'Content-Type': 'application/json',
- 'pi-token': staticResources.token
- }
- }).then((data) => {
- return data.json();
- }).then((result) => {
- document.querySelector("[data-id='Lead_link__c']").value = result.object.lastName;
- })
+ document.querySelector("[data-id='Lead_link__c']").value = data.object.lastName;
+ }
+ AWSService.query(staticResourcesLead.queryUrl, dataId, queryLeadBack, staticResources.token);
+ // let url = staticResourcesLead.queryUrl + '?dataId=' + dataId;
+ // fetch(url, {
+ // method: 'GET',
+ // headers: {
+ // 'Content-Type': 'application/json',
+ // 'pi-token': staticResources.token
+ // }
+ // }).then((data) => {
+ // return data.json();
+ // }).then((result) => {
+ // document.querySelector("[data-id='Lead_link__c']").value = result.object.lastName;
+ // })
}
-
</script>
<div class="bPageTitle">
<div class="ptBody">
@@ -571,6 +575,16 @@
</apex:repeat>
<script>
sfdcPage.appendToOnloadQueue(function () {
+ var layoutSections = JSON.parse('{!layoutSectionsStr}');
+ for (let m = 0; m < layoutSections.length; m++) {
+ let layoutSection = layoutSections[m].layoutFields;
+ 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);
+ }
+ }
+ }
//1. Set Last Name label
//document.querySelector("[data-id='LastName']").parentNode.parentNode.parentNode.children[2].children[0].innerText = '濮撳悕';
//2. Query AWS Data by dataId
@@ -579,14 +593,139 @@
blockme();
QuerySobjectFromAWS();
unblockUI();
- }
+ }else{
+ let ot = jQuery('input[data-id="OwnerId"]');
+ let oi = document.getElementById(ot.attr("id")+'_lkid');
+ ot.val('{!CurrentUserName}');
+ ot.attr("readonly","");
+ ot.css("background","unset");
+ ot.css("border","0");
+ ot.css( "outline","0");
+ jQuery('a[data-id="OwnerId"]').remove();
+ if(oi){
+ oi.value = '{!CurrentUserId}'
+ }
+ }
//Replace Contact Vlookup Field
replaceSearchContactLookup();
//Replace Lead Vlookup Field
replaceSearchLeadLookup();
document.querySelectorAll("[data-id='OwnerId']")[0].classList.add("disabledbutton");
- document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton");
+ // document.querySelectorAll("[data-id='OwnerId']")[1].classList.add("disabledbutton");
+
+ jQuery('a[data-id="OwnerId"]').remove();
+
+ jQuery(".lookupInput").each(function(i,e){
+ let je =jQuery(e).find('input');
+ je.attr("readonly","");
+ je.css("background","unset");
+
+ let dataid = je.attr('data-id');
+ if(['Hospital_Name__c','Hospital__c','OwnerId'].indexOf(dataid) > -1) return;
+ jQuery(e).children(":last-child").before('<img class="closeIcon" data-id="'+dataid+'" generate="" alt="Clear" src="/s.gif" style="display: inline-block;">');
+ })
+
+ jQuery(".lookupInput").on("mouseenter","img[generate]",function(e){
+ this.className = "closeIconOn";
+ });
+
+ jQuery(".lookupInput").on("mouseleave","img[generate]",function(e){
+ this.className = "closeIcon"
+ });
+
+ jQuery(".lookupInput").on("click","img[generate]",function(e){
+ let id = jQuery("input[data-id='"+jQuery(this).attr("data-id")+ "']").attr("id");
+ let input = document.getElementById(id);
+ if(input){
+ input.value = '';
+ let hidden = document.getElementById(id+'_lkid');
+ if(hidden){
+ hidden.value = '';
+ }
+ }
+ });
+
+ let eleHospitalName = document.querySelector("[data-id='Hospital_Name__c']");
+ let vlook_HospitalName = document.getElementById(eleHospitalName.id + '_lkid');
+
+ // let eleInput = eleHospitalName.parentNode.childNodes[0];
+ // let eleImg = eleHospitalName.parentNode.childNodes[1];
+ // let eleBlank = eleHospitalName.parentNode.childNodes[2];
+
+
+ if("\v"=="v"){//true涓篒E娴忚鍣�
+ vlook_ele.attachEvent("onporpertychange",function(e){
+ console.log("inputting!!");
+ });
+ }else{
+ eleHospitalName.parentNode.addEventListener("click",function(e){
+ console.log("inputting!!");
+ var hospitalNameValue = vlook_HospitalName.value;
+ if (hospitalNameValue != "000000000000000" && hospitalNameValue != '') {
+ console.log("hospitalNameValue = " + hospitalNameValue);
+
+ var ls = ['Department_Class__c','Hospital__c'];
+ setVlookup(ls,hospitalNameValue);
+ }else{
+ clearVlookup('Department_Class__c');
+ clearVlookup('Hospital__c');
+ }
+ });
+ }
});
+
+ function setVlookup(lookups, lookup_id){
+ let controllerSaveMethod = '{!$RemoteAction.NewAndEditInquiryFormController.queryAccount}';
+ Visualforce.remoting.Manager.invokeAction(
+ controllerSaveMethod,
+ JSON.stringify(lookups), lookup_id,
+ function (result, event) {
+ console.log("result = " + result);
+ if (result != null ){
+ var obj = JSON.parse(result.replaceAll('&'+'quot;','"'));
+ for (let i = 0; i < lookups.length; i++) {
+ let lookup = lookups[i];
+ if (!obj[lookup]) {
+ continue;
+ }
+ let ele = document.querySelector("[data-id='"+lookup+"']");
+ let elei1 = document.getElementById(ele.id + '_lkid');
+ let elei2 = document.getElementById(ele.id + '_lkold');
+
+ ele.value=obj[lookup].Name;
+ elei1.value = obj[lookup].Id;
+ elei2.value = obj[lookup].Name;
+
+ let inputele = document.querySelector("[data-id='"+lookup+"']").parentNode;
+ if (inputele.childNodes.length > 4){
+ inputele.childNodes[0].style = "";
+ inputele.childNodes[1].style = "display: inline-block;";
+ inputele.childNodes[2].style = "display: none;";
+ }
+
+ }
+ }
+ },
+ { escape: true }
+ );
+ }
+
+ function clearVlookup(lookup){
+ let ele = document.querySelector("[data-id='"+lookup+"']");
+ let elei1 = document.getElementById(ele.id + '_lkid');
+ let elei2 = document.getElementById(ele.id + '_lkold');
+
+ ele.value='';
+ elei1.value = '';
+ elei2.value = '';
+
+ let inputele = document.querySelector("[data-id='"+lookup+"']").parentNode;
+ if (inputele.childNodes.length > 4){
+ inputele.childNodes[0].style = "display: none;";
+ inputele.childNodes[1].style = "display: none;";
+ inputele.childNodes[2].style = "";
+ }
+ }
</script>
<div class="pbBottomButtons">
<table cellspacing="0" cellpadding="0" border="0">
--
Gitblit v1.9.1