From 7f9d89331a1ecafffd9cef7293cdbdd3a8b289b6 Mon Sep 17 00:00:00 2001
From: 李金换 <lijinhuan@prec-tech.com>
Date: 星期二, 19 四月 2022 13:45:24 +0800
Subject: [PATCH] HWAG-CAV5WX职位
---
force-app/main/default/pages/StraightBackAddress.page | 335 +++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 247 insertions(+), 88 deletions(-)
diff --git a/force-app/main/default/pages/StraightBackAddress.page b/force-app/main/default/pages/StraightBackAddress.page
index 790dde0..64926a3 100644
--- a/force-app/main/default/pages/StraightBackAddress.page
+++ b/force-app/main/default/pages/StraightBackAddress.page
@@ -30,6 +30,21 @@
var addressAwsData = {};
+ var isBlocking = false;
+ function b(){
+ if (!isBlocking) {
+ blockme();
+ isBlocking = true;
+ }
+ }
+
+ function ub(){
+ if (isBlocking) {
+ unblockUI();
+ isBlocking = false;
+ }
+ }
+
//鏇挎崲vlookup
var newSearchContactWindow = null;
window.onload = function () {
@@ -60,23 +75,38 @@
document.getElementById('allPage:allForm:oppBlock2:UpdAddressId:ZipCode__c').value=''
document.getElementById('allPage:allForm:oppBlock2:UpdAddressId:Detailed_Address__c').value=''
}
+
+ //{!IF(isSearchBtn,'searchBtnJs()',false)};
+ let b1= false;
+ let b2= false;
+
+ let Foo = function(){
+ if (b1 && b2 && !b) {
+ window.location.reload();
+ }
+ }
+
AWSService.post(staticResource.transactionUrl, JSON.stringify({
- "txId":add_aws_result.txId,
+ "txId":add_aws_result.txId,
+ "isSuccess":b ? 0 : 1
+ }), function(result){
+ b1 = true;
+ Foo();
+ }, staticResource.token);
+
+ if(isAddCon){
+ AWSService.post(staticResourceContact.transactionUrl, JSON.stringify({
+ "txId":con_aws_result.txId,
"isSuccess":b ? 0 : 1
}), function(result){
- if(isAddCon){
- AWSService.post(staticResourceContact.transactionUrl, JSON.stringify({
- "txId":con_aws_result.txId,
- "isSuccess":b ? 0 : 1
- }), function(result){
- if(!b)
- window.location.reload();
- }, staticResourceContact.token);
- }else{
- if(!b)
- window.location.reload();
- }
- }, staticResource.token);
+ b2 = true;
+ Foo();
+ }, staticResourceContact.token);
+ }else{
+ b2 = true;
+ Foo();
+ }
+
}
@@ -136,7 +166,7 @@
}
//淇濆瓨鏂规硶
function savaJs(){
- //blockme();
+ //b();
if(document.getElementById('allPage:allForm:oppBlock2:UpdAddressId:Create_Contacts__c').value != ''){
isAddCon = true;
}
@@ -149,7 +179,7 @@
document.getElementById("errorMsg").innerHTML = '<strong>銆愯仈绯讳汉銆戝拰銆愯仈绯讳汉锛堟柊寤猴級銆戜笉鑳藉悓鏃舵湁鍊硷紒</strong> ';
return;
}
- blockme();
+ b();
console.log('{!insUpdData}')
if(document.getElementById("allPage:allForm:oppBlock2:UpdAddressId:Create_Contacts__c").value){
//new contact
@@ -264,7 +294,7 @@
}
}
function searchBtnJs(){
- blockme();
+ b();
var addressDataIds = '';
//鏌ヨ鍦板潃
if(document.getElementById('allPage:allForm:searchBlock:txtAddressId').value != ''){
@@ -285,7 +315,9 @@
}
};
var addressName = document.getElementById('allPage:allForm:searchBlock:txtAddressId').value;
- AWSService.queryAddress('https://sfpi-mebg-test.olympuschina.com/api/address/search',addressName.trim(),queryBack,staticResource.token);
+ AWSService.post(staticResource.searchUrl,{
+ detailedAddress:addressName.trim()
+ },queryBack,staticResource.token);
}).then(function(data){
console.log('data = '+data)
console.log('addressDataIds = '+addressDataIds)
@@ -333,19 +365,22 @@
- function adoptSaveJs(address){
+ function adoptSaveJs(address,isUpload){
//鐢变簬瑕佹妸閲囩敤鏃堕棿璁板綍鍒板湴鍧�琛ㄤ腑锛屾墍浠ユ柊寤轰竴涓湴鍧�瀵硅薄
// Address__c DatetimeUpdate = new Address__c();
// DatetimeUpdate = tableData[i].address;
//璇︾粏鍦板潃
- let address_str = address.Detailed_Address__c.trim();addressAwsData
+ let address_str = address.Detailed_Address__c.trim();
+ if (addressAwsData.hasOwnProperty(address.AWS_Data_Id__c)) {
+ address_str = addressAwsData[address.AWS_Data_Id__c].detailedAddress;
+ }
let cityName = '';//甯�
//甯備笉涓虹┖锛屽洜涓鸿浣跨敤 __r.Name 濡傛灉涓虹┖锛屼細鎶ラ敊
if(address.City__c){
cityName = address.City__r.Name.trim();
//鐪� 鍚屼笂
if(address.Province__c){
- let ProvinceCity = address.Province__r.name.trim()+cityName;
+ let ProvinceCity = address.Province__r.Name.trim()+cityName;
//闃叉璇︾粏鍦板潃閲岄潰甯︾潃鐪佷唤鍜屽競
if(address_str.indexOf(ProvinceCity) < 0){
address_str = ProvinceCity + address_str;
@@ -357,6 +392,11 @@
if(address.Contacts__c){
contactsName = address.Contacts__r.Name;
}
+
+ if (addressAwsData.hasOwnProperty(address.Contacts__r.AWS_Data_Id__c)) {
+ contactsName = addressAwsData[address.Contacts__r.AWS_Data_Id__c].lastName;
+ }
+
//瀹㈡埛
let ContactPerson = '';
if(address.Customer__c){
@@ -370,46 +410,111 @@
rc.address_ZipCode__c = address.ZipCode__c;
rc.address_City__c = cityName;
rc.address_Contacts_Name__c = ContactPerson;
+ let AddressTypeIndex = {!AddressTypeIndex};
//isUpload锛氭槸鍚︿笂浼燬AP FSEApplyForRepairTime锛歋AP淇悊鐢宠鏃堕棿
- if({!isUpload} && pc.SAP_Transfer_time__c){
+ if(isUpload && '{!pc.SAP_Transfer_time__c}'){
rc.Address_type__c = 'X';
- rc.Address_Type_Index__c = rc.Address_Type_Index__c+1;
+ rc.Address_Type_Index__c = AddressTypeIndex+1;
}
rc.address_Telephone__c=address.Telephone__c;
rc.Detailed_Address__c=address_str;
- let UpdateRepair = function(callback){
- AWSService.post(staticResourceRepair.updateUrl,[{
- dataId:'{!pc.AWS_Data_Id__c}',
- addressContactsName:rc.address_Contacts_Name__c,
- detailedAddress:rc.Detailed_Address__c
- }],function(data){
- if(data && data.object){
- console.log(data);
- rc.address_Contacts__c = data.object[0].addressContactsName;
- rc.Detailed_Address__c = data.object[0].detailedAddress;
- UpdateSobject(staticResourceRepair,data.txId,callback);
- }else{
- alert('鏇存柊淇悊澶辫触');
- unblockUI();
- }
- },staticResourceRepair.token)
+ if (addressAwsData.hasOwnProperty(address.AWS_Data_Id__c)) {
+ rc.address_Telephone__c=addressAwsData[address.AWS_Data_Id__c].telephone;
+ rc.address_ZipCode__c=addressAwsData[address.AWS_Data_Id__c].zipCode;
}
-
- //淇濆瓨鏁版嵁鍒颁繚鏈夎澶囪〃涓�
- let UpdateAsset = function(){
+
+ let GetAsset = function(){
let ast = new sforce.SObject('Asset');
- ast.Id = pc.Delivered_Product__c,
+ ast.Id = '{!pc.Delivered_Product__c}',
ast.address_Contacts__c= contactsName,
ast.address_ZipCode__c = address.ZipCode__c,
ast.address_City__c = cityName,
ast.address_Telephone__c = address.Telephone__c,
ast.address_Contacts_Name__c = ContactPerson,
ast.Detailed_Address__c= address_str
+ if (addressAwsData.hasOwnProperty(address.AWS_Data_Id__c)) {
+ ast.address_ZipCode__c=addressAwsData[address.AWS_Data_Id__c].zipCode;
+ ast.address_Telephone__c=addressAwsData[address.AWS_Data_Id__c].telephone;
+ }
+ return ast;
+ }
+
+ //淇濆瓨鏁版嵁鍒颁繚鏈夎澶囪〃涓�
+ let UpdateAsset = function(){
+ let ast = GetAsset();
let result = sforce.connection.update([ast]);
let b = result[0].getBoolean('success');
return b;
}
+
+ let UpdateRepair = function(callback){
+ AWSService.post(staticResourceRepair.updateUrl,[{
+ dataId:'{!pc.AWS_Data_Id__c}',
+ addressContactsName:rc.address_Contacts_Name__c,
+ addressContacts:rc.address_Contacts__c,
+ addressTelephone:rc.address_Telephone__c,
+ addressZipCode:rc.address_ZipCode__c,
+ detailedAddress:rc.Detailed_Address__c
+ }],function(data){
+ if(data && data.object){
+ console.log(data);
+ rc.address_Contacts_Name__c = data.object[0].addressContactsName;
+ rc.Address_Contacts_Name_Encrypt__c = data.object[0].addressContactsNameEncrypt;
+ rc.address_Contacts__c = data.object[0].addressContacts;
+ rc.Address_Contacts_Encrypt__c = data.object[0].addressContactsEncrypt;
+ rc.address_Telephone__c = data.object[0].addressTelephone;
+ rc.Address_Telephone_Encrypt__c = data.object[0].addressTelephoneEncrypt;
+ rc.address_ZipCode__c = data.object[0].addressZipCode;
+ rc.Address_ZipCode_Encrypt__c = data.object[0].addressZipCodeEncrypt;
+ rc.Detailed_Address__c = data.object[0].detailedAddress;
+ rc.Detailed_Address_Encrypt__c = data.object[0].detailedAddressEncrypt;
+
+ //UpdateSobject(staticResourceRepair,rc,data.txId,callback);
+ Visualforce.remoting.Manager.invokeAction(
+ 'StraightBackAddressController.SaveEx',
+ JSON.stringify(rc), JSON.stringify(GetAsset()), address.Id,
+ function (result, event) {
+
+ let message = '';
+ if (event.status) {
+ if (result) {
+ message = result;
+ }else{
+ }
+ }else{
+ }
+ let tobj = {
+ txId: data.txId
+ };
+ if(message) {
+ console.log('call sf to insert log');
+ tobj.isSuccess = 0;
+ }else {
+ console.log('call sf Log Id: ' + rc.id);
+ tobj.sfRecordId = rc.id;
+ tobj.isSuccess = 1;
+ }
+
+ AWSService.post(staticResource.transactionUrl,tobj,function(data){
+ if (message) {
+ ub();
+ alert(message);
+ }else{
+ window.location.href = '/{!RepairId}';
+ }
+ },staticResource.token);
+ },
+ { escape: true }
+ );
+ }else{
+ alert('AWS鏇存柊淇悊澶辫触');
+ ub();
+ }
+ },staticResourceRepair.token)
+ }
+
+
let UpdateAddress = function(){
@@ -422,7 +527,31 @@
return b;
}
- UpdateAddress
+ b();
+ UpdateRepair();
+ /*
+ UpdateRepair(function(data){
+ if (data.isSuccess) {
+ let b = UpdateAsset();
+ if (b) {
+ b = UpdateAddress();
+ if (b) {
+ window.location.href = '/{!RepairId}';
+ }else{
+ ub();
+ alert('閲囩敤澶辫触');
+ }
+ }else{
+ ub();
+ alert('閲囩敤澶辫触');
+ }
+ }else{
+
+ ub();
+ alert('SF鏇存柊淇悊澶辫触');
+ }
+ })*/
+
//椤甸潰閲嶅畾鍚�
//return redirectPag();
}catch( e){
@@ -435,19 +564,19 @@
//鍒ゆ柇褰撳墠淇悊鍗曟槸鍚﹀凡缁忕敵璇蜂慨鐞�
var uploadTime = '{!FSEApplyForRepairTime}';
- if(uploadTime != 'null'){
+ if(uploadTime != 'null' && uploadTime){
var prompt = '鐢变簬褰撳墠淇悊鍗曞凡鐢宠淇悊锛岃闂槸鍚﹂噰鐢ㄥ苟涓婁紶鏁版嵁鍒癝AP锛�';
if(confirm(prompt)){
- adoptSaveJs(address);
+ adoptSaveJs(address,true);
}
}else{
- adoptSaveJs(address);
+ adoptSaveJs(address,false);
}
}
/* function onAdoptJs(){
if(checkedTrue != null){
- blockme();
+ b();
var lawtable = document.getElementById("tableHeader_L");//鑾峰彇id涓簍ableHeader_L鐨則able
var rows = lawtable.rows;//鑾峰彇鎵�鏈夎
var InputObj = rows[checkedTrue].cells[0].getElementsByTagName("input")[0];
@@ -565,7 +694,7 @@
}
//鏌ヨ鏁忔劅瀛楁
function queryPI(){
- //blockme();
+ //b();
tableDataStr = JSON.parse(document.getElementById('allPage:allForm:tableValueFrontEnd').value);
PIData = {};
contactDataIds = [];
@@ -573,7 +702,7 @@
q1().then(function(data){
return q2(data);
})
- //unblockUI();
+ //ub();
}
@@ -679,34 +808,86 @@
}
//2022 02 28 寮犲崕寤� display PI Data end
</script>
+ <script type="text/javascript">
+
+ function DecryptAddress(){
+ let arr1 = [];let a1=false;
+ let arr2 = [];let a2=false;
+ j$('td.oraddress').each(function(i,e){
+ let did = j$(e).attr('address-data-id');
+ if (did) {
+ arr1.push(did);
+ }
+
+ did = j$(e).attr('contact-data-id');
+ if (did) {
+ arr2.push(did);
+ }
+ })
+
+ if (arr1.length) {
+ b();
+ AWSService.post(staticResource.searchUrl,{
+ dataIds:arr1
+ },function(data){
+ ub();
+ if(data && data.object && data.object.length > 0){
+ for (let di in data.object) {
+ if (data.object[di] && data.object[di].dataId) {
+ addressAwsData[data.object[di].dataId] = data.object[di];
+ }
+ }
+
+ }
+ },staticResource.token)
+ }
+
+ if (arr2.length) {
+ b();
+ AWSService.post(staticResourceContact.searchUrl,{
+ dataIds:arr2
+ },function(data){
+ ub();
+ if(data && data.object && data.object.length > 0){
+ for (let di in data.object) {
+ if (data.object[di] && data.object[di].dataId) {
+ addressAwsData[data.object[di].dataId] = data.object[di];
+ }
+ }
+
+ }
+ },staticResourceContact.token)
+ }
+ }
+ </script>
<apex:form id="allForm">
<apex:inputHidden id="tableValueFrontEnd" value="{!tableDataStr}"/>
<apex:inputHidden value="{!contactId}" id="contactId"/>
<apex:inputHidden value="{!insUpdDataStr}" id="insUpdDataStr"/>
<div id="tab01">
<!-- 椤甸潰鏁版嵁鍒濆鍖栨柟娉� -->
- <apex:actionFunction name="init" action="{!init}" rerender="oppBlock1,message,checEventFrame" onComplete="unblockUI();"></apex:actionFunction>
+ <apex:actionFunction name="init" action="{!init}" rerender="oppBlock1,message,checEventFrame" onComplete="ub();"></apex:actionFunction>
<!-- 妫�绱㈡暟鎹煡璇㈡柟娉� -->
- <apex:actionFunction name="searchBtn" action="{!searchBtn}" rerender="oppBlock1,message,checEventFrame,tableValueFrontEnd" onComplete="unblockUI();">
+ <apex:actionFunction name="searchBtn" action="{!searchBtn}" rerender="oppBlock1,message,checEventFrame,tableValueFrontEnd" onComplete="ub();DecryptAddress();">
<apex:param name="addressDataIds" assignTo="{!addressDataIds}" value=""></apex:param>
</apex:actionFunction>
<!-- 閲囩敤鏂规硶 -->
- <apex:actionFunction name="adoptSave" action="{!adoptSave}" rerender="oppBlock2,message" onComplete="unblockUI();">
+ <!--<actionFunction name="adoptSave" action="{!adoptSave}" rerender="oppBlock2,message" onComplete="ub();">
<apex:param name="adoptId" assignTo="{!adoptId}" value="" />
<apex:param name="isUpload" assignTo="{!isUpload}" value="" />
- </apex:actionFunction>
+ </actionFunction>-->
<!-- 淇濆瓨鍜屼慨鏀规柟娉� -->
- <apex:actionFunction name="save" action="{!save}" rerender="oppBlock2,message" onComplete="unblockUI();{!IF(isSearchBtn,'searchBtnJs()',false)};Trans()"></apex:actionFunction>
+ <apex:actionFunction name="save" action="{!save}" rerender="oppBlock2,message" onComplete="ub();Trans()"></apex:actionFunction>
<!-- 鐐瑰嚮淇敼鎸夐挳鑾峰彇淇敼鏁版嵁鏂规硶 -->
- <apex:actionFunction name="onEditor" action="{!onEditor}" rerender="oppBlock2,checEventFrame,insUpdDataStr" onComplete="decrypt();unblockUI();">
+ <apex:actionFunction name="onEditor" action="{!onEditor}" rerender="oppBlock2,checEventFrame,insUpdDataStr" onComplete="decrypt();ub();">
<apex:param name="UpdId" assignTo="{!UpdId}" value="" />
</apex:actionFunction>
<!-- 澶嶅埗鏂规硶 -->
- <apex:actionFunction name="onCopy" action="{!onCopy}" rerender="oppBlock2,checEventFrame," onComplete="decrypt();unblockUI();">
+ <apex:actionFunction name="onCopy" action="{!onCopy}" rerender="oppBlock2,checEventFrame," onComplete="decrypt();ub();">
<apex:param name="UpdId" assignTo="{!UpdId}" value="" />
</apex:actionFunction>
<!-- 杩斿洖鐖堕〉闈� -->
- <apex:actionFunction name="redirectPag" action="{!redirectPag}" rerender="true" onComplete="unblockUI();"></apex:actionFunction>
+ <apex:actionFunction name="redirectPag" action="{!redirectPag}" rerender="true" onComplete="ub();"></apex:actionFunction>
<apex:pageBlock id="searchBlock" tabStyle="Report">
<table style="border-bottom-width: 0px; font-size:12px;width:100%">
<tr>
@@ -732,7 +913,7 @@
</a>
</td>
<td style="width: 20%">
- <apex:commandButton onclick="searchBtnJs();return false;" rendered="true" value="妫�绱�" style="width:60px;" onComplete="unblockUI();"/>
+ <apex:commandButton onclick="searchBtnJs();return false;" rendered="true" value="妫�绱�" style="width:60px;" onComplete=""/>
<!-- <apex:commandButton onclick="onAdoptJs();return false;" rendered="true" value="閲囩敤" style="width:60px;background:#98c1fbf7"/>
-->
@@ -786,7 +967,7 @@
<td align="left" class="Customer__c" style="vertical-align: inherit;border-width: 0px 1px 1px 0px;">
<apex:outputfield value="{!or.address.Customer__c}" />
</td>
- <td align="left" class="address" style="vertical-align: inherit;border-width: 0px 1px 1px 0px;" aws-data-id="{!or.address.AWS_Data_Id__c}">
+ <td align="left" class="oraddress" style="vertical-align: inherit;border-width: 0px 1px 1px 0px;" address-data-id="{!or.address.AWS_Data_Id__c}" contact-data-id="{!or.address.Contacts__r.AWS_Data_Id__c}">
<!-- <apex:outputfield value="{!or.address.Contacts__c}" id="{!or.address.Contacts__c}_{!or.address.Id}"/> -->
<a href="#" id="{!or.address.Id}" onmouseover="showPIDiv('{!or.address.Id}')" onmouseout="hidePIDiv('{!or.address.Id}')" aws-data-id="{!or.address.Contacts__r.AWS_Data_Id__c}">{!or.address.Contacts__r.Name}</a>
</td>
@@ -805,9 +986,9 @@
<td align="left" style="vertical-align: inherit;border-width: 0px 1px 1px 0px;">
<apex:outputText value="{!or.address.Detailed_Address__c}" />
</td>
- <!-- <td align="center" style="vertical-align: inherit;width:30px;">
+ <td align="center" style="vertical-align: inherit;width:30px;">
<apex:commandButton value=" 缂栬緫 " onclick="onEditorJs('{!or.address.id}');return false;" style="background:#98c1fbf7;display:{!or.canEdit};"/>
- </td> -->
+ </td>
<td align="center" style="vertical-align: inherit;width:30px;">
<apex:commandButton value=" 澶嶅埗 " onclick="onCopyJs('{!or.address.id}');return false;" style="background: #98c1fbf7;display:{!or.canCopy};"/>
</td>
@@ -873,34 +1054,12 @@
</apex:form>
<apex:outputPanel id="checEventFrame">
<script type="text/javascript">
+
+
j$("select option[value='鍔炰簨澶�']")[1].remove();
- let arr = [];
- j$('td.address').each(function(i,e){
- let did = j$(e).attr('aws-data-id');
- if (did) {
- arr.push(did);
- }
- })
- if (arr.length) {
- blockme();
- AWSService.post(staticResource.searchUrl,{
- dataIds:arr
- },function(data){
- unblockUI();
- if(data && data.object && data.object.length > 0){
- for (let di in data.object) {
- if (data.object[di] && data.object[di].dataId) {
- addressAwsData[data.object[di].dataId] = data.object[di];
- }
- }
-
- }
- },staticResource.token)
- }
+ DecryptAddress();
</script>
</apex:outputPanel>
- <script type="javascript/text">
-
- </script>
+
</apex:page>
\ No newline at end of file
--
Gitblit v1.9.1