From bf3967d7b5984251f73c9c5079f1659e7ed17425 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= <2178503051@qq.com> Date: Mon, 1 Jun 2026 14:31:06 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms/coil):=20=E6=96=B0=E5=A2=9E=E9=95=80?= =?UTF-8?q?=E9=93=AC=E5=8D=B7=E5=8F=B7=E5=AD=97=E6=AE=B5=E4=B8=8E=E5=88=86?= =?UTF-8?q?=E6=9D=A1=E6=A0=A1=E9=AA=8C=E8=A7=84=E5=88=99=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. 在CoilCard中将长度标签改为参考长度 2. 新增镀铬卷号列到钢卷选择器表格与可选列配置 3. 在钢卷更新和分条页面添加净重、厚度校验规则,区分镀锌/酸轧/镀铬产线豁免情况 4. 优化分条页面的代码格式与组件注册顺序,新增镀铬操作类型判断 5. 分条表单新增镀铬卷号输入项,支持从源卷复制镀铬卷号信息 --- klp-ui/src/components/CoilSelector/data.js | 13 + .../KLPService/Renderer/CoilCard.vue | 2 +- .../src/views/wms/coil/panels/stepSplit.vue | 508 +++++++++++------- klp-ui/src/views/wms/coil/typing.vue | 40 +- 4 files changed, 369 insertions(+), 194 deletions(-) diff --git a/klp-ui/src/components/CoilSelector/data.js b/klp-ui/src/components/CoilSelector/data.js index 9ff3f2f3..8b267787 100644 --- a/klp-ui/src/components/CoilSelector/data.js +++ b/klp-ui/src/components/CoilSelector/data.js @@ -11,6 +11,12 @@ export const defaultColumns = [ prop: 'currentCoilNo', showOverflowTooltip: true }, + { + label: '镀铬卷号', + align: 'center', + prop: 'chromelCoilNo', + showOverflowTooltip: true + }, { label: '存储位置', align: 'center', @@ -83,6 +89,12 @@ export const fullPageDefaultColumns = [ prop: 'currentCoilNo', showOverflowTooltip: true }, + { + label: '镀铬卷号', + align: 'center', + prop: 'chromelCoilNo', + showOverflowTooltip: true + }, { label: '存储位置', align: 'center', @@ -171,6 +183,7 @@ export const fullPageDefaultColumns = [ export const optionalColumns = [ { label: '入场卷号', value: 'enterCoilNo' }, { label: '当前卷号', value: 'currentCoilNo' }, + { label: '镀铬卷号', value: 'chromelCoilNo' }, { label: '厂家钢卷号', value: 'supplierCoilNo' }, { label: '逻辑库区', value: 'warehouseName' }, { label: '实际库区', value: 'actualWarehouseName' }, diff --git a/klp-ui/src/components/KLPService/Renderer/CoilCard.vue b/klp-ui/src/components/KLPService/Renderer/CoilCard.vue index 303f673b..344a1858 100644 --- a/klp-ui/src/components/KLPService/Renderer/CoilCard.vue +++ b/klp-ui/src/components/KLPService/Renderer/CoilCard.vue @@ -64,7 +64,7 @@ {{ coil.netWeight }}t
- 长度: + 参考长度: {{ coil.length }}m
diff --git a/klp-ui/src/views/wms/coil/panels/stepSplit.vue b/klp-ui/src/views/wms/coil/panels/stepSplit.vue index f6ca23da..c8288ac7 100644 --- a/klp-ui/src/views/wms/coil/panels/stepSplit.vue +++ b/klp-ui/src/views/wms/coil/panels/stepSplit.vue @@ -1,5 +1,5 @@ @@ -1237,4 +1373,4 @@ export default { .plan-sheet-section { margin-top: 16px; } - \ No newline at end of file + diff --git a/klp-ui/src/views/wms/coil/typing.vue b/klp-ui/src/views/wms/coil/typing.vue index 862e4e12..a65086c0 100644 --- a/klp-ui/src/views/wms/coil/typing.vue +++ b/klp-ui/src/views/wms/coil/typing.vue @@ -60,14 +60,20 @@
- -
- {{ '更新信息' }} -
- 暂存内容 - 保存更新 + +
+ {{ '更新信息' }} +
+ 暂存内容 + 保存更新 +
-
+ + + +
@@ -530,6 +536,10 @@ export default { isDrAction() { return this.actionType === 504 || this.actionType === 524 }, + /** 镀锌/酸轧产线免验净重和厚度范围 */ + isExemptFromValidation() { + return [11, 120, 200, 201, 520, 202, 501, 521].includes(Number(this.actionType)) + }, // 动态显示标签 getItemLabel() { if (this.updateForm.materialType === '成品') { @@ -814,6 +824,22 @@ export default { } } + // 校验净重和实测厚度不超过源卷(镀锌/酸轧除外) + if (!this.isExemptFromValidation) { + const parentNetWeight = parseFloat(this.currentInfo.netWeight) || 0 + const parentThickness = parseFloat(this.currentInfo.actualThickness) || 0 + const updateNetWeight = parseFloat(this.updateForm.netWeight) || 0 + const updateThickness = parseFloat(this.updateForm.actualThickness) || 0 + if (updateNetWeight > 0 && parentNetWeight > 0 && updateNetWeight > parentNetWeight) { + this.$message.error(`更新后净重(${updateNetWeight}T)不能超过源卷净重(${parentNetWeight}T)`) + return false + } + if (updateThickness > 0 && parentThickness > 0 && updateThickness > parentThickness) { + this.$message.error(`更新后实测厚度(${updateThickness}mm)不能超过源卷实测厚度(${parentThickness}mm)`) + return false + } + } + const loadingInstance = this.$loading({ lock: true, text: '正在更新钢卷信息,请稍后...',