| | |
| | | |
| | | //过期库存一览 |
| | | const columns = [ |
| | | { |
| | | label: '是否销存', |
| | | fieldName: 'iscount', |
| | | type: 'checkbox', |
| | | hideDefaultActions: true, |
| | | initialWidth: 80, |
| | | }, |
| | | { |
| | | label: '消耗品名称', |
| | | fieldName: 'prodname', |
| | | type: 'prodname', |
| | | wrapText: true, |
| | | initialWidth: 350, |
| | | |
| | | hideDefaultActions: true |
| | | { |
| | | label: '是否销存', |
| | | fieldName: 'iscount', |
| | | type: 'checkbox', |
| | | hideDefaultActions: true, |
| | | initialWidth: 80, |
| | | }, |
| | | { |
| | | label: '消耗品名称', |
| | | fieldName: 'prodname', |
| | | type: 'prodname', |
| | | wrapText: true, |
| | | initialWidth: 350, |
| | | |
| | | }, |
| | | { |
| | | label: '单位', |
| | | fieldName: 'boxPiece', |
| | | hideDefaultActions: true, |
| | | // initialWidth: 250, |
| | | |
| | | }, |
| | | { |
| | | label: '过期数量', |
| | | fieldName: 'overlimitCount', |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'right' } |
| | | |
| | | // initialWidth: 250, |
| | | |
| | | }, |
| | | { |
| | | label: '销存数量', |
| | | fieldName: 'pandian', |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'right' } |
| | | // initialWidth: 250, |
| | | hideDefaultActions: true |
| | | |
| | | }, |
| | | { |
| | | label: '单位', |
| | | fieldName: 'boxPiece', |
| | | hideDefaultActions: true, |
| | | // initialWidth: 250, |
| | | |
| | | }, |
| | | { |
| | | label: '过期数量', |
| | | fieldName: 'overlimitCount', |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'right' } |
| | | |
| | | // initialWidth: 250, |
| | | |
| | | }, |
| | | { |
| | | label: '销存数量', |
| | | fieldName: 'pandian', |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'right' } |
| | | // initialWidth: 250, |
| | | // cellAttributes: { alignment: 'center' } |
| | | } |
| | | ]; |
| | | //销存明细 |
| | | } |
| | | ]; |
| | | //销存明细 |
| | | const column = [ |
| | | |
| | | { |
| | | label: '消耗品名称', |
| | | fieldName: 'Name__c', |
| | | type: 'Name', |
| | | // initialWidth : 300, |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'left' } |
| | | }, |
| | | { |
| | | label: '单位', |
| | | fieldName: 'Box_Piece__c', |
| | | initialWidth : 80, |
| | | hideDefaultActions: true |
| | | }, |
| | | { |
| | | label: 'BarCode', |
| | | fieldName: 'Bar_Code__c', |
| | | wrapText: true, |
| | | hideDefaultActions: true, |
| | | initialWidth : 500, |
| | | }, |
| | | { |
| | | label: '使用期限', |
| | | fieldName: 'Sterilization_limit__c', |
| | | hideDefaultActions: true, |
| | | // initialWidth : 250 |
| | | |
| | | { |
| | | label: '消耗品名称', |
| | | fieldName: 'Name__c', |
| | | type: 'Name', |
| | | wrapText: true, |
| | | // initialWidth : 300, |
| | | hideDefaultActions: true, |
| | | cellAttributes: { alignment: 'left' } |
| | | }, |
| | | { |
| | | label: '单位', |
| | | fieldName: 'Box_Piece__c', |
| | | initialWidth: 80, |
| | | hideDefaultActions: true |
| | | }, |
| | | { |
| | | label: 'BarCode', |
| | | fieldName: 'Bar_Code__c', |
| | | wrapText: true, |
| | | hideDefaultActions: true, |
| | | // initialWidth: 500, |
| | | }, |
| | | { |
| | | label: '使用期限', |
| | | fieldName: 'Sterilization_limit__c', |
| | | hideDefaultActions: true, |
| | | // initialWidth : 250 |
| | | } |
| | | , |
| | | { |
| | | label: '销存原因', |
| | | fieldName: 'diffReason', |
| | | hideDefaultActions: true, |
| | | wrapText: true, |
| | | initialWidth: 160 |
| | | } |
| | | ]; |
| | | |
| | | |
| | | export default class LexOverdueStock extends NavigationMixin(LightningElement) { |
| | | columns = columns |
| | | column = column |
| | | @track data = []; |
| | | @track overduePageRecords = []; |
| | | @track iSinventory = false |
| | | |
| | | |
| | | //加载框 |
| | | // @track casesSpinner = true; |
| | | @track showSpinner = true; |
| | | //显示口 |
| | | @track showbutton = false |
| | | @track showTable = false; |
| | | @track showTables = false; |
| | | //销存一览数据 |
| | | @track accountName; |
| | | @track agencyProType; |
| | | @track userWorkLocation; |
| | | @track barcode = '' |
| | | @track orderDetZaiku |
| | | @track selectedRows = []; |
| | | @track codPageRecordsLWC; |
| | | @track Id; |
| | | @track overdueList = []; |
| | | |
| | | |
| | | renderedCallback() { |
| | | if (!this.stylesLoaded) { |
| | | Promise.all([loadStyle(this, WrappedHeaderTable)]) |
| | | .then(() => { |
| | | console.log("Custom styles loaded"); |
| | | this.stylesLoaded = true; |
| | | }) |
| | | .catch((error) => { |
| | | console.error("Error loading custom styles"); |
| | | }); |
| | | } |
| | | , |
| | | { |
| | | label: '销存原因', |
| | | fieldName: 'diffReason', |
| | | hideDefaultActions: true, |
| | | initialWidth: 160 |
| | | } |
| | | ]; |
| | | |
| | | |
| | | export default class LexOverdueStock extends NavigationMixin (LightningElement ){ |
| | | columns = columns |
| | | column = column |
| | | @track data =[]; |
| | | @track overduePageRecords = []; |
| | | @track iSinventory = false |
| | | |
| | | |
| | | //加载框 |
| | | // @track casesSpinner = true; |
| | | @track showSpinner =true; |
| | | //显示口 |
| | | @track showbutton = false |
| | | @track showTable = false; |
| | | @track showTables = false; |
| | | //销存一览数据 |
| | | @track accountName; |
| | | @track agencyProType; |
| | | @track userWorkLocation; |
| | | @track barcode = '' |
| | | @track orderDetZaiku |
| | | @track selectedRows = []; |
| | | @track codPageRecordsLWC; |
| | | @track Id; |
| | | @track overdueList = []; |
| | | |
| | | |
| | | renderedCallback() { |
| | | if (!this.stylesLoaded) { |
| | | Promise.all([loadStyle(this, WrappedHeaderTable)]) |
| | | .then(() => { |
| | | console.log("Custom styles loaded"); |
| | | this.stylesLoaded = true; |
| | | }) |
| | | .catch((error) => { |
| | | console.error("Error loading custom styles"); |
| | | }); |
| | | } |
| | | } |
| | | |
| | | |
| | | //初始化 |
| | | connectedCallback() { |
| | | console.log('初始化'); |
| | | this.showSpinner = true; |
| | | //初始化 |
| | | connectedCallback() { |
| | | console.log('初始化'); |
| | | this.showSpinner = true; |
| | | |
| | | init().then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result ='+JSON.stringify(result)); |
| | | console.log('result 1='+result.entity.codPageRecords); |
| | | if(result.status = 'Success'){ |
| | | this.data = JSON.parse(result.entity.codPageRecords); |
| | | this.codPageRecordsLWC = result.entity.codPageRecords; |
| | | console.log('this.data'+this.data); |
| | | this.accountName = result.entity.accountName; |
| | | this.agencyProType = result.entity.agencyProType; |
| | | this.userWorkLocation = result.entity.userWorkLocation; |
| | | this.showTable = true; |
| | | // this.casesSpinner = false; |
| | | this.showSpinner = false; |
| | | }else { |
| | | this.showMyToast('初始化失败',result.msg,'error'); |
| | | this.showSpinner = false; |
| | | } |
| | | }).catch((error) => { |
| | | console.log('error = ' + JSON.stringify(error)); |
| | | }); |
| | | } |
| | | //barcode录入 |
| | | barcodeEntrys(){ |
| | | this.showSpinner = true; |
| | | this.showTable = false; |
| | | console.log('code'+this.barcode); |
| | | console.log(' this.accountName'+ this.accountName); |
| | | console.log(' this.barcode'+ this.barcode); |
| | | |
| | | if(this.barcode == ''||this.barcode==null){ |
| | | this.showMyToast('获取失败','请输入BarCode号','error'); |
| | | this.showSpinner = false; |
| | | init().then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result =' + JSON.stringify(result)); |
| | | console.log('result 1=' + result.entity.codPageRecords); |
| | | if (result.status = 'Success') { |
| | | this.data = JSON.parse(result.entity.codPageRecords); |
| | | this.codPageRecordsLWC = result.entity.codPageRecords; |
| | | console.log('this.data' + this.data); |
| | | this.accountName = result.entity.accountName; |
| | | this.agencyProType = result.entity.agencyProType; |
| | | this.userWorkLocation = result.entity.userWorkLocation; |
| | | for (var i in this.data) { |
| | | this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"]; |
| | | } |
| | | barcodeEntry({ |
| | | accountNameLWC: this.accountName, |
| | | agencyProTypeLWC: this.agencyProType, |
| | | userWorkLocationLWC:this.userWorkLocation, |
| | | barcodeLWC:this.barcode, |
| | | codPageRecordsLWC:this.codPageRecordsLWC |
| | | }).then((result)=>{ |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | this.overduePageRecords = JSON.parse(result.entity.overduePageRecords); |
| | | this.overdueList = result.entity.overdueList; |
| | | this.iSinventory = result.entity.iSinventory; |
| | | console.log('result录入'+JSON.stringify( result)); |
| | | console.log('overdueList==>'+JSON.stringify( this.overdueList)); |
| | | for(let i in this.overduePageRecords){ |
| | | if(this.overduePageRecords[i].Prod!=null){ |
| | | this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c; |
| | | this.showTable = true; |
| | | // this.casesSpinner = false; |
| | | this.showSpinner = false; |
| | | } else { |
| | | this.showMyToast('初始化失败', result.msg, 'error'); |
| | | this.showSpinner = false; |
| | | } |
| | | }).catch((error) => { |
| | | console.log('error = ' + JSON.stringify(error)); |
| | | this.showSpinner = false; |
| | | }); |
| | | } |
| | | //barcode录入 |
| | | barcodeEntrys() { |
| | | this.showSpinner = true; |
| | | this.showTable = false; |
| | | console.log('code' + this.barcode); |
| | | console.log(' this.accountName' + this.accountName); |
| | | console.log(' this.barcode' + this.barcode); |
| | | const selectedRows = this.template.querySelector('c-lex-custom-lightning-datatable').getSelectedRows(); |
| | | console.log('selectedRows========> ' + JSON.stringify(selectedRows)); |
| | | for (var i in this.data) { |
| | | this.data[i]["check"] = false; |
| | | } |
| | | for (var i in this.data) { |
| | | for (var j in selectedRows) { |
| | | if (this.data[i].prodid + this.data[i]["boxPiece"] == selectedRows[j].prodid + selectedRows[j]["boxPiece"]) { |
| | | this.data[i]["check"] = true; |
| | | } |
| | | } |
| | | } |
| | | barcodeEntry({ |
| | | accountNameLWC: this.accountName, |
| | | agencyProTypeLWC: this.agencyProType, |
| | | userWorkLocationLWC: this.userWorkLocation, |
| | | barcodeLWC: this.barcode, |
| | | codPageRecordsLWC: JSON.stringify(this.data) |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | this.overduePageRecords = JSON.parse(result.entity.overduePageRecords); |
| | | this.overdueList = result.entity.overdueList; |
| | | this.iSinventory = result.entity.iSinventory; |
| | | console.log('result录入' + JSON.stringify(result)); |
| | | console.log('overdueList==>' + JSON.stringify(this.overdueList)); |
| | | for (let i in this.overduePageRecords) { |
| | | if (this.overduePageRecords[i].Prod != null) { |
| | | this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c; |
| | | |
| | | } |
| | | this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c; |
| | | this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c; |
| | | this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c; |
| | | } |
| | | this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c; |
| | | this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c; |
| | | this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c; |
| | | } |
| | | this.data = JSON.parse(result.entity.codPageRecords); |
| | | console.log(' this.data' + JSON.stringify(this.data)); |
| | | for (var i in this.data) { |
| | | this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"]; |
| | | } |
| | | for (var i in this.data) { |
| | | if (this.data[i]['check']) { |
| | | this.selectedRows.push(this.data[i].prodid + this.data[i]["boxPiece"]); |
| | | console.log("selectedRows:" + this.selectedRows); |
| | | } |
| | | } |
| | | this.showSpinner = false; |
| | | this.showTable = true; |
| | | } else { |
| | | if (result.status == 'Success1') { |
| | | this.overduePageRecords = JSON.parse(result.entity.overduePageRecords); |
| | | this.overdueList = result.entity.overdueList; |
| | | this.iSinventory = result.entity.iSinventory; |
| | | console.log('result录入' + JSON.stringify(result)); |
| | | console.log('overdueList==>' + JSON.stringify(this.overdueList)); |
| | | for (let i in this.overduePageRecords) { |
| | | if (this.overduePageRecords[i].Prod != null) { |
| | | this.overduePageRecords[i]['Name__c'] = this.overduePageRecords[i].Prod.Name__c; |
| | | |
| | | } |
| | | this.data = JSON.parse(result.entity.codPageRecords); |
| | | console.log(' this.data'+ JSON.stringify(this.data)); |
| | | for (var i in this.data) { |
| | | this.overduePageRecords[i]['Bar_Code__c'] = this.overduePageRecords[i].orderdetails2.Bar_Code__c; |
| | | this.overduePageRecords[i]['Box_Piece__c'] = this.overduePageRecords[i].orderdetails2.Box_Piece__c; |
| | | this.overduePageRecords[i]['Sterilization_limit__c'] = this.overduePageRecords[i].orderdetails2.Sterilization_limit__c; |
| | | } |
| | | this.data = JSON.parse(result.entity.codPageRecords); |
| | | console.log(' this.data' + JSON.stringify(this.data)); |
| | | for (var i in this.data) { |
| | | this.data[i]["key"] = this.data[i]["prodid"] + this.data[i]["boxPiece"]; |
| | | } |
| | | for (var i in this.data) { |
| | | if (this.data[i]['check']) { |
| | | this.selectedRows.push(this.data[i].prodid); |
| | | console.log('selectedRows:' + this.selectedRows); |
| | | this.selectedRows.push(this.data[i].prodid + this.data[i]["boxPiece"]); |
| | | console.log("selectedRows:" + this.selectedRows); |
| | | } |
| | | } |
| | | this.showSpinner = false; |
| | | // this.showTables = true; |
| | | this.showTable = true; |
| | | }else{ |
| | | this.showMyToast('获取失败',result.msg,'error'); |
| | | }else { |
| | | console.log('Error:' + result.msg); |
| | | this.showMyToast(result.msg,'','error'); |
| | | this.showSpinner = false; |
| | | this.showTable = true; |
| | | |
| | | } |
| | | |
| | | }).catch((error) => { |
| | | console.log('error = ' + JSON.stringify(error)); |
| | | }); |
| | | |
| | | } |
| | | //获取当前输入值 |
| | | // this.showMyToast('获取失败', result.msg, 'error'); |
| | | // this.showSpinner = false; |
| | | } |
| | | |
| | | }).catch((error) => { |
| | | this.showSpinner = false; |
| | | console.log('error = ' + JSON.stringify(error)); |
| | | }); |
| | | |
| | | } |
| | | //获取当前输入值 |
| | | handleChange(event) { |
| | | let value = event.detail.value; |
| | | console.log('value' + value); |
| | | this.barcode = value; |
| | | console.log('this.barcode'+this.barcode); |
| | | console.log('this.barcode' + this.barcode); |
| | | } |
| | | getSelectedRows(event) { |
| | | console.log('打勾'); |
| | | const selectedRows = event.detail.selectedRows; |
| | | console.log('this.selectedRows = ' + this.selectedRows); |
| | | for (var i in this.data) { |
| | | this.data[i]['check'] = false; |
| | | } |
| | | for (var i in this.data) { |
| | | for (var j in selectedRows) { |
| | | console.log('this.selectedRows111 = ' + selectedRows[j].prodid); |
| | | console.log('this.selectedRows1112 = ' + this.data[i].prodid ); |
| | | if (this.data[i].prodid == selectedRows[j].prodid) { |
| | | this.data[i]['check'] = true; |
| | | } |
| | | } |
| | | } |
| | | let selectedRowsEvent = event.detail.selectedRows; |
| | | this.selectedRows = []; |
| | | for (var i in selectedRowsEvent) { |
| | | this.selectedRows.push(selectedRowsEvent[i].prodid+this.data[i]["boxPiece"]); |
| | | } |
| | | console.log('this.selectedRows==>'+this.selectedRows); |
| | | |
| | | } |
| | | //保存 |
| | | saveConfirm() { |
| | | console.log('进入销存确认'); |
| | | this.showSpinner = true; |
| | | var el = this.template.querySelector('c-lex-custom-lightning-datatable'); |
| | | var selected = el.getSelectedRows(); |
| | | this.selectedData = selected; |
| | | console.log('选中数据' + JSON.stringify(this.selectedData)); |
| | | console.log('this.overdueList'+this.overdueList); |
| | | //查询有哪些选择了的然后check |
| | | const selectedRows = this.template.querySelector('c-lex-custom-lightning-datatable').getSelectedRows(); |
| | | console.log('selectedRows========> ' + JSON.stringify(selectedRows)); |
| | | for (var i in this.data) { |
| | | this.data[i]["check"] = false; |
| | | } |
| | | for (var i in this.data) { |
| | | for (var j in selectedRows) { |
| | | if (this.data[i].prodid+this.data[i]["boxPiece"] == selectedRows[j].prodid+ selectedRows[j]["boxPiece"]) { |
| | | this.data[i]["check"] = true; |
| | | } |
| | | } |
| | | } |
| | | save({ |
| | | iSinventory: this.iSinventory, |
| | | saveCodPageRecords: JSON.stringify(this.selectedData), |
| | | saveCodPageRecords: JSON.stringify(this.data), |
| | | // saveoverdueList:JSON.stringify(this.overdueList) |
| | | saveoverdueList:this.overdueList |
| | | saveoverdueList: this.overdueList |
| | | }).then((result) => { |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result保存 = ' + JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | this[NavigationMixin.Navigate]({ |
| | | type: 'standard__recordPage', |
| | | attributes: { |
| | | recordId:result.entity.Id, |
| | | objectApiName: 'Consumable_order__c', |
| | | actionName: 'view' |
| | | } |
| | | }); |
| | | this.showSpinner = false; |
| | | } else { |
| | | this.showMyToast('销存失败',result.msg,'error'); |
| | | this.showSpinner = false; |
| | | } |
| | | }) |
| | | result = JSON.parse(JSON.stringify(result)); |
| | | console.log('result保存 = ' + JSON.stringify(result)); |
| | | if (result.status == 'Success') { |
| | | this[NavigationMixin.Navigate]({ |
| | | type: 'standard__recordPage', |
| | | attributes: { |
| | | recordId: result.entity.Id, |
| | | objectApiName: 'Consumable_order__c', |
| | | actionName: 'view' |
| | | } |
| | | }); |
| | | this.showSpinner = false; |
| | | } else { |
| | | this.showMyToast('销存失败', result.msg, 'error'); |
| | | this.showSpinner = false; |
| | | |
| | | } |
| | | }) |
| | | .catch((error) => { |
| | | console.log('error = ' + JSON.stringify(error)); |
| | | this.showSpinner = false; |
| | |
| | | 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); |
| | | } |
| | | this.template.querySelector('c-common-toast').showToast(variant, content, iconName, 10000); |
| | | } |
| | | |
| | | } |
| | | } |