| | |
| | | import save from "@salesforce/apex/LexUpAccountProLimit.upAccount"; |
| | | import { ShowToastEvent } from 'lightning/platformShowToastEvent'; |
| | | import { NavigationMixin } from "lightning/navigation"; |
| | | export default class InventoryEditingLWC extends NavigationMixin(LightningElement){ |
| | | export default class LexProductLimitEdit extends NavigationMixin(LightningElement) { |
| | | @track invRecords = []; |
| | | @track accountid; |
| | | @track upstring = ''; |
| | | @track userPro_Type; |
| | | @track showSpinner = true; |
| | | //获取链接参数 |
| | | getQueryString(name) { |
| | | console.log("getQueryString name " + name); |
| | | let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); |
| | | let r = window.location.search.substr(1).match(reg); |
| | | if (r != null) { |
| | | return decodeURIComponent(r[2]); |
| | | } |
| | | return null; |
| | | } |
| | | getQueryString(name) { |
| | | console.log("getQueryString name " + name); |
| | | let reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); |
| | | let r = window.location.search.substr(1).match(reg); |
| | | if (r != null) { |
| | | return decodeURIComponent(r[2]); |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | connectedCallback(){ |
| | | connectedCallback() { |
| | | this.showSpinner = true; |
| | | console.log(' === connectedCallback === '); |
| | | //获取accountid userPro_Type |
| | | this.accountid = this.getQueryString("accountid"); |
| | | this.accountid = this.getQueryString("accountid"); |
| | | this.accountid = this.accountid == null ? "" : this.accountid; |
| | | this.userPro_Type = this.getQueryString("userPro_Type"); |
| | | this.userPro_Type = this.userPro_Type == null ? "" : this.userPro_Type; |
| | | //获取数据 |
| | | oninit({ |
| | | accountid:this.accountid, |
| | | userPro_Type:this.userPro_Type |
| | | this.userPro_Type = this.userPro_Type == null ? "" : this.userPro_Type; |
| | | //获取数据 |
| | | oninit({ |
| | | accountid: this.accountid, |
| | | userPro_Type: this.userPro_Type |
| | | |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result'+JSON.stringify(result)); |
| | | if(result.status == 'Success'){ |
| | | console.log('11===>'+result.entity.product_Limit); |
| | | console.log('11===>'+typeof(result.entity.product_Limit)); |
| | | let str = result.entity.product_Limit; |
| | | var arr = str.split(','); |
| | | console.log('arr==>'+ arr); |
| | | console.log('arr==>'+ arr.length); |
| | | console.log('arr==>'+ typeof(arr)); |
| | | for(var i in arr){ |
| | | var arry = arr[i].split('|'); |
| | | this.invRecords.push({ |
| | | productNumber: arry[0], |
| | | inventory1:arry[1], |
| | | inventory2:arry[2] |
| | | }); |
| | | } |
| | | this.showSpinner = false; |
| | | console.log('this.invRecords'+JSON.stringify(this.invRecords)); |
| | | }else{ |
| | | this.showSpinner = false; |
| | | console.log("error = " + JSON.stringify(error)); |
| | | |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result' + JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | console.log('11===>' + result.entity.product_Limit); |
| | | console.log('11===>' + typeof (result.entity.product_Limit)); |
| | | let str = result.entity.product_Limit; |
| | | var arr = str.split(','); |
| | | console.log('arr==>' + arr); |
| | | console.log('arr==>' + arr.length); |
| | | console.log('arr==>' + typeof (arr)); |
| | | for (var i in arr) { |
| | | var arry = arr[i].split('|'); |
| | | this.invRecords.push({ |
| | | productNumber: arry[0], |
| | | inventory1: arry[1], |
| | | inventory2: arry[2] |
| | | }); |
| | | } |
| | | }).catch((error) => { |
| | | this.showSpinner = false; |
| | | console.log("error = " + JSON.stringify(error)); |
| | | }); |
| | | console.log('this.invRecords' + JSON.stringify(this.invRecords)); |
| | | } else { |
| | | this.showSpinner = false; |
| | | console.log("error = " + JSON.stringify(error)); |
| | | |
| | | } |
| | | }).catch((error) => { |
| | | this.showSpinner = false; |
| | | console.log("error = " + JSON.stringify(error)); |
| | | }); |
| | | // this.inventoryTempRecords(); |
| | | |
| | | } |
| | | |
| | | addRow(){ |
| | | addRow() { |
| | | let objRow = { |
| | | productNumber: '', |
| | | inventory1: '', |
| | |
| | | } |
| | | this.invRecords = [...this.invRecords, Object.create(objRow)]; |
| | | } |
| | | removeRow(event){ |
| | | removeRow(event) { |
| | | const indexPos = event.currentTarget.name; |
| | | let remList = []; |
| | | remList = this.invRecords; |
| | | remList.splice(indexPos,1); |
| | | remList.splice(indexPos, 1); |
| | | this.invRecords = remList; |
| | | } |
| | | |
| | | handleClick(){ |
| | | handleClick() { |
| | | this.showSpinner = true; |
| | | console.log('保存'); |
| | | console.log('this.invRecords'+JSON.stringify(this.invRecords)); |
| | | for(var i in this.invRecords){ |
| | | console.log('inven'+this.invRecords[i]["inventory1"]); |
| | | console.log('数字'+this.isNum(this.invRecords[i]["inventory1"])); |
| | | console.log('this.invRecords' + JSON.stringify(this.invRecords)); |
| | | for (var i in this.invRecords) { |
| | | console.log('inven1' + this.invRecords[i]["inventory1"]); |
| | | console.log('数字1' + this.isNum(this.invRecords[i]["inventory1"])); |
| | | console.log('inven2' + this.invRecords[i]["inventory2"]); |
| | | console.log('数字2' + this.isNum(this.invRecords[i]["inventory2"])); |
| | | if (this.invRecords[i]["inventory1"] == '' || this.invRecords[i]["inventory1"] == null || this.invRecords[i]["inventory2"] == null || this.invRecords[i]["inventory2"] == '') { |
| | | this.showMyToast('保存失败', '输入格式不正确,请输入数字', 'error'); |
| | | this.showSpinner = false; |
| | | return; |
| | | } |
| | | if( this.isNum(this.invRecords[i]["inventory1"]) == false || this.isNum(this.invRecords[i]["inventory2"]) == false){ |
| | | this.showMyToast('保存失败', '输入格式不正确,请输入数字', 'error'); |
| | | this.showSpinner = false; |
| | | return; |
| | | |
| | | if(this.isNum(this.invRecords[i]["inventory1"]) == false || this.isNum(this.invRecords[i]["inventory2"]==false)){ |
| | | // alert("输入格式不正确,请输入数字!"); |
| | | this.showMyToast('保存失败','输入格式不正确,请输入数字','error'); |
| | | this.showSpinner = false; |
| | | return; |
| | | } |
| | | if(this.invRecords[i]["inventory1"] == ''||this.invRecords[i]["inventory1"] == null ||this.invRecords[i]["inventory2"] == null || |
| | | this.invRecords[i]["inventory2"] == ''){ |
| | | // alert('请输入' +this.invRecords[i]["productNumber"] + '库存上下限信息!'); |
| | | this.showMyToast('保存失败','请输入' +this.invRecords[i]["productNumber"] + '库存上下限信息','error'); |
| | | this.showSpinner = false; |
| | | return; |
| | | } |
| | | if(Number(this.invRecords[i]["inventory1"])>Number(this.invRecords[i]["inventory2"])){ |
| | | // alert( this.invRecords[i]["productNumber"] + '库存下限大于上限!'); |
| | | this.showMyToast('保存失败',this.invRecords[i]["productNumber"] + '库存下限大于上限','error'); |
| | | if (Number(this.invRecords[i]["inventory1"]) > Number(this.invRecords[i]["inventory2"])) { |
| | | this.showMyToast('保存失败', this.invRecords[i]["productNumber"] + '库存下限大于上限', 'error'); |
| | | this.showSpinner = false; |
| | | return; |
| | | } |
| | | } |
| | | let dataStr = '' |
| | | for(var i in this.invRecords){ |
| | | dataStr = dataStr+this.invRecords[i]["productNumber"] +'|'+this.invRecords[i]["inventory1"]+'|'+this.invRecords[i]["inventory2"]+','; |
| | | } |
| | | console.log('dataStr==>'+dataStr); |
| | | this.upstring = dataStr.substring(0, dataStr.lastIndexOf(',')); |
| | | console.log('upstring'+ this.upstring); |
| | | save({ |
| | | accountId: this.accountid, |
| | | productLimit: this.upstring, |
| | | userPro_Type:this.userPro_Type |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result===>'+JSON.stringify(result)); |
| | | if(result.status == 'Success'){ |
| | | this.showMyToast('保存成功','','success'); |
| | | this.showSpinner = false; |
| | | // setTimeout(this.toLexToppage(),5000 ); |
| | | setTimeout(() => { |
| | | this.toLexToppage(); |
| | | }, 500); |
| | | |
| | | }else{ |
| | | this.showMyToast('保存失败',result.msg,'error'); |
| | | this.showSpinner = false; |
| | | |
| | | } |
| | | }).catch((error) => { |
| | | console.log("error = " + JSON.stringify(error)); |
| | | let dataStr = '' |
| | | for (var i in this.invRecords) { |
| | | dataStr = dataStr + this.invRecords[i]["productNumber"] + '|' + this.invRecords[i]["inventory1"] + '|' + this.invRecords[i]["inventory2"] + ','; |
| | | } |
| | | console.log('dataStr==>' + dataStr); |
| | | this.upstring = dataStr.substring(0, dataStr.lastIndexOf(',')); |
| | | console.log('upstring' + this.upstring); |
| | | save({ |
| | | accountId: this.accountid, |
| | | productLimit: this.upstring, |
| | | userPro_Type: this.userPro_Type |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result===>' + JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | this.showMyToast('保存成功', '', 'success'); |
| | | this.showSpinner = false; |
| | | }); |
| | | |
| | | // setTimeout(this.toLexToppage(),5000 ); |
| | | setTimeout(() => { |
| | | this.toLexToppage(); |
| | | }, 500); |
| | | |
| | | } else { |
| | | this.showMyToast('保存失败', result.msg, 'error'); |
| | | this.showSpinner = false; |
| | | |
| | | } |
| | | }).catch((error) => { |
| | | console.log("error = " + JSON.stringify(error)); |
| | | this.showSpinner = false; |
| | | }); |
| | | |
| | | this.inventoryTempRecords(); |
| | | console.log( 'Save ==> ' + JSON.stringify(toSaveList)); |
| | | console.log('Save ==> ' + JSON.stringify(toSaveList)); |
| | | } |
| | | |
| | | handleProductChange(event){ |
| | | handleProductChange(event) { |
| | | if (event.target.name == 'productNumber') { |
| | | this.invRecords[event.currentTarget.dataset.index].productNumber = event.target.value; |
| | | console.log('===>invrecords'+JSON.stringify(this.invRecords)); |
| | | console.log('===>invrecords' + JSON.stringify(this.invRecords)); |
| | | } |
| | | else if (event.target.name == 'inventory1') { |
| | | this.invRecords[event.currentTarget.dataset.index].inventory1 = event.target.value; |
| | | console.log('===>invrecords' + JSON.stringify(this.invRecords)); |
| | | } |
| | | else if (event.target.name == 'inventory2') { |
| | | this.invRecords[event.currentTarget.dataset.index].inventory2 = event.target.value; |
| | | console.log('===>invrecords' + JSON.stringify(this.invRecords)); |
| | | } |
| | | } |
| | | |
| | | //数字验证 |
| | | isNum(num){ |
| | | var reNum =/^[0-9]+$/; |
| | | return (reNum.test(num)); |
| | | |
| | | //数字验证 |
| | | isNum(num) { |
| | | var reNum = /^[0-9]+$/; |
| | | return (reNum.test(num)); |
| | | } |
| | | showMyToast(title, message, variant) { |
| | | console.log('show custom message'); |
| | | var iconName = ''; |
| | | var content = ''; |
| | | if(variant == 'success'){ |
| | | iconName = 'utility:check'; |
| | | }else{ |
| | | iconName = 'utility:error'; |
| | | if (variant == 'success') { |
| | | iconName = 'utility:check'; |
| | | } else { |
| | | iconName = 'utility:error'; |
| | | } |
| | | if(message != ''){ |
| | | content = '<h2><strong>'+title+'<strong/></h2><h5>'+message+'</h5>'; |
| | | }else{ |
| | | content = '<h2><strong>'+title+'<strong/></h2>'; |
| | | if (message != '') { |
| | | content = '<h2><strong>' + title + '<strong/></h2><h5>' + message + '</h5>'; |
| | | } else { |
| | | content = '<h2><strong>' + title + '<strong/></h2>'; |
| | | } |
| | | this.template.querySelector('c-common-toast').showToast(variant,content,iconName,10000); |
| | | } |
| | | toLexToppage(){ |
| | | this[NavigationMixin.Navigate]({ |
| | | type: 'standard__webPage', |
| | | attributes: { |
| | | url: '/lextoppage' |
| | | } |
| | | }); |
| | | } |
| | | this.template.querySelector('c-common-toast').showToast(variant, content, iconName, 10000); |
| | | } |
| | | toLexToppage() { |
| | | this[NavigationMixin.Navigate]({ |
| | | type: 'standard__webPage', |
| | | attributes: { |
| | | url: '/lextoppage' |
| | | } |
| | | }); |
| | | } |
| | | } |