From 66102c4b6520871088310bb99762b51b39cefede Mon Sep 17 00:00:00 2001 From: lijuncheng Date: Tue, 16 Jan 2024 17:18:23 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=8F=96=E6=B6=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/deliver/job/deliverDetail.vue | 23 ++++++++++----- pages/issue/job/issueDetail.vue | 30 ++++++++++++++------ pages/purchaseReturn/record/returnRecord.vue | 2 +- pages/repleinsh/job/repleinshDetail.vue | 22 ++++++++++---- 4 files changed, 55 insertions(+), 22 deletions(-) diff --git a/pages/deliver/job/deliverDetail.vue b/pages/deliver/job/deliverDetail.vue index 2b801251..4781ae03 100644 --- a/pages/deliver/job/deliverDetail.vue +++ b/pages/deliver/job/deliverDetail.vue @@ -137,12 +137,21 @@ //拦截返回按钮事件 onBackPress(e) { //已经接收但是没提交任务 - if (this.received) { - //取消承接任务 - cancleTakeDeliverJob(this.id).then(res => {}).catch(error => { - this.showMessage(err); - }) + if (e.from == 'backbutton') { + if (this.received) { + //取消承接任务 + cancleTakeDeliverJob(this.id).then(res => { + uni.navigateBack(); + }).catch(error => { + uni.navigateBack(); + }) + } else { + uni.navigateBack(); + } + + return true; } + }, methods: { @@ -342,10 +351,10 @@ let handleQty = 0; if (batch != undefined) { batch.Records.forEach(res => { - handleQty = calc.add(handleQty,res.qty) + handleQty = calc.add(handleQty, res.qty) }) batch.handleQty = handleQty; - itemHandleQty = calc.add(itemHandleQty,handleQty) + itemHandleQty = calc.add(itemHandleQty, handleQty) } }) } diff --git a/pages/issue/job/issueDetail.vue b/pages/issue/job/issueDetail.vue index ef8b74c0..a03df905 100644 --- a/pages/issue/job/issueDetail.vue +++ b/pages/issue/job/issueDetail.vue @@ -61,6 +61,10 @@ import { getManagementPrecisions } from '@/common/balance.js'; + + import { + calc + } from '@/common/calc.js'; import jobDetailPopup from '@/mycomponents/job/jobDetailPopup.vue' import comIssueDetailCard from '@/pages/issue/coms/comIssueDetailCard.vue' @@ -90,7 +94,8 @@ subList: [], //接口返回的任务subList detailSource: [], //绑定在页面上的数据源 detailOptions: [], - scanOptions: [] + scanOptions: [], + received:false }; }, @@ -122,12 +127,21 @@ //拦截返回按钮事件 onBackPress(e) { //已经接收但是没提交任务 - if (this.received) { - //取消承接任务 - cancleTakeIssueJob(this.id).then(res => {}).catch(error => { - this.showMessage(err); - }) + if (e.from === 'backbutton') { + if (this.received) { + //取消承接任务 + cancleTakeIssueJob(this.id).then(res => { + uni.navigateBack(); + }).catch(error => { + uni.navigateBack(); + }) + } else { + uni.navigateBack(); + } + + return true; } + }, watch: { @@ -392,10 +406,10 @@ let handleQty = 0; if (batch != undefined) { batch.Records.forEach(res => { - handleQty += Number(res.qty) + handleQty = calc.add(handleQty,res.qty) }) batch.handleQty = handleQty; - itemHandleQty += handleQty; + itemHandleQty = calc.add(itemHandleQty,handleQty) } }) } diff --git a/pages/purchaseReturn/record/returnRecord.vue b/pages/purchaseReturn/record/returnRecord.vue index 5d5a76af..96d41864 100644 --- a/pages/purchaseReturn/record/returnRecord.vue +++ b/pages/purchaseReturn/record/returnRecord.vue @@ -252,7 +252,7 @@ purchaseReturnRecordSubmit(params).then(res => { uni.hideLoading() if (res.data) { - this.showCommitSuccessMessage("提交成功
生成采购退货记录" + res.data) + this.showCommitSuccessMessage("提交成功
生成采购退货记录
" + res.data) } else { this.showErrorMessage("提交失败" + res.msg) } diff --git a/pages/repleinsh/job/repleinshDetail.vue b/pages/repleinsh/job/repleinshDetail.vue index 5171adad..d87aaee3 100644 --- a/pages/repleinsh/job/repleinshDetail.vue +++ b/pages/repleinsh/job/repleinshDetail.vue @@ -99,7 +99,8 @@ detailOptions: [], scanOptions: [], toLocationCode: '', - tolocationTypeList: [] + tolocationTypeList: [], + received:false, }; }, @@ -131,12 +132,21 @@ //拦截返回按钮事件 onBackPress(e) { //已经接收但是没提交任务 - if (this.received) { - //取消承接任务 - cancleTakeRepleinshJob(this.id).then(res => {}).catch(error => { - this.showMessage(err); - }) + if (e.from === 'backbutton') { + if (this.received) { + //取消承接任务 + cancleTakeRepleinshJob(this.id).then(res => { + uni.navigateBack(); + }).catch(error => { + uni.navigateBack(); + }) + } else { + uni.navigateBack(); + } + + return true; } + }, watch: { From 69ea6d6b466e4acb0367dbcd01308a0a869de1f0 Mon Sep 17 00:00:00 2001 From: lijuncheng Date: Wed, 17 Jan 2024 11:44:51 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=B0=83=E6=8B=A8?= =?UTF-8?q?=E5=85=A5=E5=BA=93=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/detail.js | 136 ++++++++-------- mycomponents/detail/comDetailCard.vue | 2 +- mycomponents/item/itemQty.vue | 1 + pages/issue/coms/comIssueRequestPopup.vue | 2 +- pages/transfer/coms/comReceiptDetailCard.vue | 148 ++++++++++++++++++ pages/transfer/job/receiptDetail.vue | 20 +-- pages/unPlanned/coms/comReceiptDetailCard.vue | 2 +- 7 files changed, 231 insertions(+), 80 deletions(-) create mode 100644 pages/transfer/coms/comReceiptDetailCard.vue diff --git a/common/detail.js b/common/detail.js index c0d297ed..95ad376f 100644 --- a/common/detail.js +++ b/common/detail.js @@ -1,77 +1,79 @@ - import { calc } from '@/common/calc' -export function getDataSource(subList) { - let items = []; - subList.forEach(detail => { - var item = items.find(r => - r.itemCode == detail.itemCode) - if (item == undefined) { - item = createItemInfo(detail); - let newDetail = createDetailInfo(detail); // - item.subList.push(newDetail); - items.push(item) - } else { - item.qty = calc.add(item.qty,detail.qty) - let newDetail = createDetailInfo(detail); // - item.subList.push(newDetail); - } - }) - return items; -} +import { + calc + } from '@/common/calc' + export function getDataSource(subList) { + let items = []; + subList.forEach(detail => { + var item = items.find(r => + r.itemCode == detail.itemCode) + if (item == undefined) { + item = createItemInfo(detail); + let newDetail = createDetailInfo(detail); // + item.subList.push(newDetail); + items.push(item) + } else { + item.qty = calc.add(item.qty, detail.qty) + let newDetail = createDetailInfo(detail); // + item.subList.push(newDetail); + } + }) + return items; + } -export function createItemInfo(detail) { - let item = { - itemCode: detail.itemCode, - itemName: detail.itemName, - stdPackQty: Number(detail.stdPackQty)||undefined, - stdPackUnit: detail.stdPackUnit, - qty: Number(detail.qty), - handleQty: 0, - uom: detail.uom, - subList: [] + export function createItemInfo(detail) { + let item = { + itemCode: detail.itemCode, + itemName: detail.itemName, + stdPackQty: Number(detail.stdPackQty) || undefined, + stdPackUnit: detail.stdPackUnit, + qty: Number(detail.qty), + handleQty: 0, + uom: detail.uom, + subList: [] + } + return item; } - return item; -} -export function createDetailInfo(data) { - data.scaned = false; - // data.record = {}; - let detail = data; - return detail; -} + export function createDetailInfo(data) { + data.scaned = false; + // data.record = {}; + let detail = data; + return detail; + } -//根据明细创建记录 -export function createRecordInfo(detail, balance) { - var record = {} - // let record = JSON.parse(JSON.stringify(detail)); - //克隆对象,深度克隆,防止双向绑定同一个变量 - Object.assign(record, detail) - detail.scaned = true; - detail.balance = balance; - detail.recommendInventoryStatus = detail.inventoryStatus; - detail.inventoryStatus = balance.inventoryStatus; - record.qty = Number(balance.qty); - return record; -} + //根据明细创建记录 + export function createRecordInfo(detail, balance) { + var record = {} + // let record = JSON.parse(JSON.stringify(detail)); + //克隆对象,深度克隆,防止双向绑定同一个变量 + Object.assign(record, detail) + detail.scaned = true; + detail.balance = balance; + detail.recommendInventoryStatus = detail.inventoryStatus; + detail.inventoryStatus = balance.inventoryStatus; + record.qty = Number(balance.qty); + return record; + } -//计算实际数量 -export function calcHandleQty(detailSource) { - for (let item of detailSource) { - item.handleQty = 0; - for (let detail of item.subList) { - if (detail != undefined && detail.scaned) { - item.handleQty = calc.add(item.handleQty,detail.handleQty) + //计算实际数量 + export function calcHandleQty(detailSource) { + for (let item of detailSource) { + item.handleQty = 0; + for (let detail of item.subList) { + if (detail != undefined && detail.scaned) { + item.handleQty = calc.add(item.handleQty, detail.handleQty) + } } } } -} -export function getScanCount(subList) { - let items = subList.filter(r => { - if (r.scaned) { - return r; - } - }) - let scanCount = items != null ? items.length : 0; - return scanCount; -} + export function getScanCount(subList) { + let items = subList.filter(r => { + if (r.scaned) { + return r; + } + }) + let scanCount = items != null ? items.length : 0; + return scanCount; + } diff --git a/mycomponents/detail/comDetailCard.vue b/mycomponents/detail/comDetailCard.vue index ffbcc382..f709efe5 100644 --- a/mycomponents/detail/comDetailCard.vue +++ b/mycomponents/detail/comDetailCard.vue @@ -3,7 +3,7 @@ diff --git a/mycomponents/item/itemQty.vue b/mycomponents/item/itemQty.vue index 920026e9..6851b19e 100644 --- a/mycomponents/item/itemQty.vue +++ b/mycomponents/item/itemQty.vue @@ -18,6 +18,7 @@ + + diff --git a/pages/transfer/job/receiptDetail.vue b/pages/transfer/job/receiptDetail.vue index 327490b0..c137c692 100644 --- a/pages/transfer/job/receiptDetail.vue +++ b/pages/transfer/job/receiptDetail.vue @@ -17,10 +17,9 @@ - - + + @@ -32,7 +31,7 @@ + :locationTypeList="toLocationTypeList"> @@ -85,6 +84,7 @@ import comDetailCard from "@/mycomponents/detail/comDetailCard.vue" import detailInfoPopup from '@/pages/transfer/coms/detailInfoPopup.vue' import jobTop from '@/mycomponents/job/jobTop.vue' + import comReceiptDetailCard from '@/pages/transfer/coms/comReceiptDetailCard.vue' export default { name: 'returnDetail', @@ -95,7 +95,8 @@ winScanPack, comDetailCard, detailInfoPopup, - jobTop + jobTop, + comReceiptDetailCard }, data() { return { @@ -108,7 +109,7 @@ toLocationCode: "", businessTypeInfo: {}, managementList: [], - tolocationTypeList: [] + toLocationTypeList: [] }; }, onLoad(option) { @@ -195,7 +196,7 @@ that.detailSource = getDataSource(that.subList) that.fromLocationCode = that.subList[0].fromLocationCode that.toLocationCode = that.subList[0].toLocationCode - that.tolocationTypeList = getDirectoryItemArray(that.jobContent.toLocationTypes) + that.toLocationTypeList = getDirectoryItemArray(that.jobContent.toLocationTypes) } else { that.showMessage('列表数据为0'); } @@ -258,11 +259,10 @@ this.detailSource[0].subList.sort(compareAsc('scaned')); //按扫描信息排序 itemDetail.handleQty = Number(result.label.qty); itemDetail.toLocationCode = this.toLocationCode; + itemDetail.stdPackQty = result.package.stdPackQty itemDetail.labelQty = Number(result.label.qty); calcHandleQty(this.detailSource); this.continueScan() - this.$forceUpdate() - var list = this.detailSource[0].subList; } } } diff --git a/pages/unPlanned/coms/comReceiptDetailCard.vue b/pages/unPlanned/coms/comReceiptDetailCard.vue index d39e7a3f..f9ace0a0 100644 --- a/pages/unPlanned/coms/comReceiptDetailCard.vue +++ b/pages/unPlanned/coms/comReceiptDetailCard.vue @@ -3,7 +3,7 @@ From cac690ddd25091d1fa63c38e15d1d61110be88bd Mon Sep 17 00:00:00 2001 From: lijuncheng Date: Wed, 17 Jan 2024 14:00:00 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=95=B0=E9=87=8F?= =?UTF-8?q?=E4=B8=BA=E5=B0=8F=E6=95=B0=E7=82=B9=E5=90=8E6=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- mycomponents/qty/CountQtyEdit.vue | 21 +++++++++++++++++++-- mycomponents/qty/balanceQtyEdit.vue | 19 +++++++++++++++++-- mycomponents/qty/recommendQtyEdit.vue | 26 ++++++++++++++++++++++---- 3 files changed, 58 insertions(+), 8 deletions(-) diff --git a/mycomponents/qty/CountQtyEdit.vue b/mycomponents/qty/CountQtyEdit.vue index efaf99f3..32e5e5dd 100644 --- a/mycomponents/qty/CountQtyEdit.vue +++ b/mycomponents/qty/CountQtyEdit.vue @@ -38,7 +38,9 @@ 数量 : + @mousedown="mousedown" + @input="checkNum" + :maxlength="maxlength" /> @@ -107,7 +109,8 @@ seconds: 0, timer: {}, showConfirmCountdown: false, - detaiList: [] + detaiList: [], + maxlength: 10 } }, watch: { @@ -140,6 +143,20 @@ }, }, methods: { + checkNum(e) { + let value = e.detail.value; + let dot = value.indexOf('.'); //包含小数点 + let reg = /^[0-9]+$/; //正整数 + if (dot > -1) { + this.maxlength = dot + 7; //长度是小数点后两位 + if (value.length > dot + 7) { + + } + } + if (reg.test(value)) { //如果是正整数不包含小数点 + this.maxlength = 10; + } + }, openEditPopup(item, detaiList) { this.dataContent = item this.inventoryStatus = this.dataContent.inventoryStatus; diff --git a/mycomponents/qty/balanceQtyEdit.vue b/mycomponents/qty/balanceQtyEdit.vue index 726c2d80..632b1eb0 100644 --- a/mycomponents/qty/balanceQtyEdit.vue +++ b/mycomponents/qty/balanceQtyEdit.vue @@ -36,7 +36,7 @@ 数量 : + @confirm="confirm()" @input="checkNum" :maxlength="maxlength" /> @@ -94,7 +94,8 @@ inventoryStatus: "", originalInventoryStatus: "", dataContent: {}, - handleQty: 0 + handleQty: 0, + maxlength: 10 } }, watch: { @@ -123,6 +124,20 @@ } }, methods: { + checkNum(e) { + let value = e.detail.value; + let dot = value.indexOf('.'); //包含小数点 + let reg = /^[0-9]+$/; //正整数 + if (dot > -1) { + this.maxlength = dot + 7; //长度是小数点后两位 + if (value.length > dot + 7) { + + } + } + if (reg.test(value)) { //如果是正整数不包含小数点 + this.maxlength = 10; + } + }, openEditPopup(item, handleQty) { this.dataContent = item this.inventoryStatus = this.dataContent.inventoryStatus diff --git a/mycomponents/qty/recommendQtyEdit.vue b/mycomponents/qty/recommendQtyEdit.vue index 6f021fd1..72e0ca14 100644 --- a/mycomponents/qty/recommendQtyEdit.vue +++ b/mycomponents/qty/recommendQtyEdit.vue @@ -31,12 +31,13 @@ + 总数量 : + @input="checkNum" @confirm="confirm()" :maxlength="maxlength" /> @@ -69,7 +70,8 @@ allQty: 0, stdCount: 0, labelQty: 0, - recommendQty: 0 + recommendQty: 0, + maxlength: 10 } }, watch: { @@ -104,6 +106,20 @@ }, }, methods: { + checkNum(e) { + let value = e.detail.value; + let dot = value.indexOf('.'); //包含小数点 + let reg = /^[0-9]+$/; //正整数 + if (dot > -1) { + this.maxlength = dot + 7; //长度是小数点后两位 + if (value.length > dot + 7) { + + } + } + if (reg.test(value)) { //如果是正整数不包含小数点 + this.maxlength = 10; + } + }, openEditPopup() { this.$refs.popup.open('bottom') }, @@ -148,7 +164,8 @@ } else { if (this.recommendQty != 0) { if (this.allQty > this.recommendQty) { - if (this.settingParam.allowBiggerQty != null && this.settingParam.allowBiggerQty == "TRUE") { + if (this.settingParam.allowBiggerQty != null && this.settingParam.allowBiggerQty == + "TRUE") { this.callback(); } else { this.$refs.comMessage.showErrorMessage('数量[' + this.allQty + ']不允许大于推荐数量[' + @@ -159,7 +176,8 @@ }) } } else if (this.allQty < this.recommendQty) { - if (this.settingParam.allowSmallerQty != null && this.settingParam.allowSmallerQty == "TRUE") { + if (this.settingParam.allowSmallerQty != null && this.settingParam.allowSmallerQty == + "TRUE") { this.callback(); } else { this.$refs.comMessage.showErrorMessage('数量[' + this.allQty + ']不允许小于推荐数量[' +