feat(钢卷异常管理): 新增上下板面和主缺陷字段并完善钢卷信息展示

在异常表单中增加上下板面选择器和主缺陷复选框
在多个页面表格中新增上下板面和主缺陷字段展示
在异常管理对话框和面板中增加钢卷详细信息展示
优化表单布局和部分字段标签描述
This commit is contained in:
砂糖
2026-04-07 11:06:09 +08:00
parent 38f980dbbf
commit ab9ab90ffa
6 changed files with 186 additions and 38 deletions

View File

@@ -34,12 +34,19 @@
</el-table-column>
<el-table-column label="开始位置" align="center" prop="startPosition" />
<el-table-column label="结束位置" align="center" prop="endPosition" />
<el-table-column label="上下板面" align="center" prop="plateSurface"></el-table-column>
<el-table-column label="缺陷长度" align="center" prop="length" />
<el-table-column label="缺陷代码" align="center" prop="defectCode">
<template slot-scope="scope">
<dict-tag :options="dict.type.coil_abnormal_code" :value="scope.row.defectCode" />
</template>
</el-table-column>
<el-table-column label="是否为主缺陷" prop="mainMark">
<template slot-scope="scope">
<el-tag v-if="scope.row.mainMark" type="success"></el-tag>
<el-tag v-else type="danger"></el-tag>
</template>
</el-table-column>
<el-table-column label="程度" align="center" prop="degree">
<template slot-scope="scope">
<dict-tag :options="dict.type.coil_abnormal_degree" :value="scope.row.degree" />
@@ -57,8 +64,53 @@
@pagination="getList" />
<!-- 添加或修改钢卷异常信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<abnormal-form ref="abnormalForm" v-model="form" :show-coil-selector="false"></abnormal-form>
<el-dialog :title="title" :visible.sync="open" width="1200px" append-to-body>
<el-row>
<el-col :span="12" v-loading="coilLoading">
<el-descriptions :column="2">
<el-descriptions-item label="入场钢卷号">{{ coilInfo.enterCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="当前钢卷号">{{ coilInfo.currentCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="厂家原料卷号">{{ coilInfo.supplierCoilNo || '-' }}</el-descriptions-item>
<el-descriptions-item label="逻辑库位">{{ coilInfo.warehouseName || '-' }}</el-descriptions-item>
<el-descriptions-item label="实际库区">{{ coilInfo.actualWarehouseName || '-' }}</el-descriptions-item>
<el-descriptions-item label="班组">{{ coilInfo.team || '-' }}</el-descriptions-item>
<el-descriptions-item label="材料类型">{{ coilInfo.materialType || '-' }}</el-descriptions-item>
<el-descriptions-item label="产品/原料">{{ coilInfo.itemName || '-' }}</el-descriptions-item>
<el-descriptions-item label="规格">{{ coilInfo.specification || '-' }}</el-descriptions-item>
<el-descriptions-item label="材质">{{ coilInfo.material || '-' }}</el-descriptions-item>
<el-descriptions-item label="厂家">{{ coilInfo.manufacturer || '-' }}</el-descriptions-item>
<el-descriptions-item label="镀层质量">{{ coilInfo.zincLayer || '-' }}</el-descriptions-item>
<el-descriptions-item label="表面处理">{{ coilInfo.surfaceTreatmentDesc || '-'
}}</el-descriptions-item>
<el-descriptions-item label="质量状态">{{ coilInfo.qualityStatus || '-' }}</el-descriptions-item>
<el-descriptions-item label="切边要求">{{ coilInfo.trimmingRequirement || '-'
}}</el-descriptions-item>
<el-descriptions-item label="原料材质">{{ coilInfo.packingStatus || '-' }}</el-descriptions-item>
<el-descriptions-item label="包装要求">{{ coilInfo.packagingRequirement || '-'
}}</el-descriptions-item>
<el-descriptions-item label="实测厚度(m)">{{ coilInfo.actualThickness || '-' }}
m</el-descriptions-item>
<el-descriptions-item label="实测宽度(m)">{{ coilInfo.actualWidth || '-' }}
m</el-descriptions-item>
<el-descriptions-item label="长度">{{ coilInfo.length || '-' }}
m</el-descriptions-item>
<el-descriptions-item label="毛重">{{ coilInfo.grossWeight || '-' }} t</el-descriptions-item>
<el-descriptions-item label="净重">{{ coilInfo.netWeight || '-' }} t</el-descriptions-item>
<el-descriptions-item label="调制度">{{ coilInfo.temperGrade || '-' }}</el-descriptions-item>
<el-descriptions-item label="镀层种类">{{ coilInfo.coatingType || '-' }}</el-descriptions-item>
<el-descriptions-item label="钢卷表面处理">{{ coilInfo.coilSurfaceTreatment || '-' }}</el-descriptions-item>
<el-descriptions-item label="备注" :span="2">{{ coilInfo.remark || '-' }}</el-descriptions-item>
</el-descriptions>
</el-col>
<el-col :span="12">
<abnormal-form ref="abnormalForm" v-model="form" :show-coil-selector="false"></abnormal-form>
</el-col>
</el-row>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
@@ -69,6 +121,7 @@
<script>
import { listCoilAbnormal, getCoilAbnormal, delCoilAbnormal, addCoilAbnormal, updateCoilAbnormal } from "@/api/wms/coilAbnormal";
import { getMaterialCoil } from '@/api/wms/coil'
import AbnormalForm from '../components/AbnormalForm';
export default {
@@ -114,6 +167,8 @@ export default {
// 表单参数
form: {},
judgeOpen: false,
coilInfo: {},
coilLoading: false,
};
},
props: {
@@ -132,6 +187,7 @@ export default {
}
this.queryParams.coilId = newVal
this.handleQuery()
this.getCoilInfo()
},
immediate: true
}
@@ -146,6 +202,14 @@ export default {
this.loading = false;
});
},
/** 查询钢卷信息 */
getCoilInfo() {
this.coilLoading = true
getMaterialCoil(this.coilId).then(response => {
this.coilInfo = response.data || {}
this.coilLoading = false
})
},
// 取消按钮
cancel() {
this.open = false;
@@ -208,7 +272,7 @@ export default {
if (valid) {
this.buttonLoading = true;
if (this.form.abnormalId != null) {
updateCoilAbnormal({...this.form, length: this.form.endPosition - this.form.startPosition}).then(response => {
updateCoilAbnormal({ ...this.form, length: this.form.endPosition - this.form.startPosition }).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
@@ -216,7 +280,7 @@ export default {
this.buttonLoading = false;
});
} else {
addCoilAbnormal({...this.form, length: this.form.endPosition - this.form.startPosition}).then(response => {
addCoilAbnormal({ ...this.form, length: this.form.endPosition - this.form.startPosition }).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();