feat(wms): 新增实际库区支持及优化库存统计功能

添加实际库区相关字段和逻辑,支持在仓库结构中切换真实库区和逻辑库位
优化库存统计图表展示,新增矩形树图、柱状图和饼图三种可视化方式
重构钻取表格组件,支持显示实际库区信息并优化表单校验规则
移除饼图图例注释并调整表单字段顺序
This commit is contained in:
砂糖
2025-11-03 17:06:38 +08:00
parent ffbe9e181a
commit 36568c2d3c
6 changed files with 683 additions and 32 deletions

View File

@@ -11,6 +11,9 @@
<el-tag size="large" v-if="warehouseName" type="success">
{{ warehouseName }}
</el-tag>
<el-tag size="large" v-if="actualWarehouseName" type="info">
{{ actualWarehouseName }}
</el-tag>
</div>
<!-- 加载状态 -->
@@ -33,7 +36,8 @@
style="width: 100%"
v-if="!loading"
>
<el-table-column prop="warehouseName" label="仓库名称" align="center" min-width="150"></el-table-column>
<el-table-column prop="warehouseName" label="库位" align="center" min-width="150"></el-table-column>
<el-table-column label="实际库区" align="center" prop="actualWarehouseName" v-if="!hideWarehouseQuery"/>
<el-table-column prop="currentCoilNo" label="当前卷号" align="center" min-width="120"></el-table-column>
<el-table-column prop="enterCoilNo" label="入场卷号" align="center" min-width="180"></el-table-column>
<el-table-column label="物料类型" align="center" prop="itemType">
@@ -94,7 +98,8 @@ export default {
default: () => ({
warehouseId: null,
itemType: null,
itemId: null
itemId: null,
actualWarehouseId: null
})
},
// 物料名称(用于显示标签)
@@ -106,6 +111,11 @@ export default {
warehouseName: {
type: String,
default: ''
},
// 实际库区名称(用于显示标签)
actualWarehouseName: {
type: String,
default: ''
}
},
data() {

View File

@@ -165,15 +165,15 @@
style="width: 100%;" clearable />
<div v-else>请先选择物料类型</div>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
<el-form-item label="毛重" prop="grossWeight">
<el-input v-model="form.grossWeight" placeholder="请输入毛重" />
</el-form-item>
<el-form-item label="净重" prop="NetWeight">
<el-form-item label="净重" prop="netWeight">
<el-input v-model="form.netWeight" placeholder="请输入净重" />
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
@@ -316,7 +316,14 @@ export default {
],
itemType: [
{ required: true, message: "物品类型不能为空", trigger: "change" }
]
],
// 净重和毛重
netWeight: [
{ required: true, message: "净重不能为空", trigger: "blur" }
],
grossWeight: [
{ required: true, message: "毛重不能为空", trigger: "blur" }
],
},
labelRender: {
visible: false,