feat(钢卷异常): 重构钢卷异常表单组件并集成到各相关页面

新增AbnormalForm组件统一管理钢卷异常表单,减少代码重复
在合卷、分条、打字等页面添加异常信息管理功能
优化异常信息展示样式,支持添加、编辑和删除操作
This commit is contained in:
砂糖
2026-03-19 17:50:37 +08:00
parent f4518be3f4
commit 2c4f5b3e53
10 changed files with 1079 additions and 187 deletions

View File

@@ -111,38 +111,7 @@
<!-- 添加或修改钢卷异常信息对话框 -->
<el-dialog :title="title" :visible.sync="open" width="600px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="钢卷ID" prop="coilId" v-if="!form.abnormalId && showCoilSelector">
<coil-selector v-model="form.coilId"></coil-selector>
</el-form-item>
<el-form-item label="位置" prop="position">
<el-radio-group v-model="form.position">
<el-radio-button v-for="dict in dict.type.coil_abnormal_position" :key="dict.value" :label="dict.value">{{
dict.label }}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="长度坐标" prop="lengthCoord">
<!-- <el-input v-model="form.lengthCoord" placeholder="请输入长度坐标" /> -->
<el-input v-model="form.startPosition" placeholder="请输入开始位置" />
<el-input v-model="form.endPosition" placeholder="请输入结束位置" />
<!-- <el-input v-model="form.length" placeholder="请输入缺陷长度" /> -->
</el-form-item>
<el-form-item label="缺陷代码" prop="defectCode">
<el-radio-group v-model="form.defectCode">
<el-radio-button v-for="dict in dict.type.coil_abnormal_code" :key="dict.value" :label="dict.value">{{
dict.label }}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="程度" prop="degree">
<el-radio-group v-model="form.degree">
<el-radio-button v-for="dict in dict.type.coil_abnormal_degree" :key="dict.value" :label="dict.value">{{
dict.label }}</el-radio-button>
</el-radio-group>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input type="textarea" v-model="form.remark" placeholder="请输入备注" />
</el-form-item>
</el-form>
<abnormal-form ref="abnormalForm" v-model="form" :show-coil-selector="showCoilSelector"></abnormal-form>
<div slot="footer" class="dialog-footer">
<el-button :loading="buttonLoading" type="primary" @click="submitForm"> </el-button>
<el-button @click="cancel"> </el-button>
@@ -173,6 +142,7 @@ import { listMaterialCoil } from "@/api/wms/coil";
import CoilSelector from '@/components/CoilSelector'
import CoilNo from '@/components/KLPService/Renderer/CoilNo'
import CoilList from "./components/CoilList.vue";
import AbnormalForm from './components/AbnormalForm';
export default {
name: "CoilAbnormal",
@@ -180,7 +150,8 @@ export default {
components: {
CoilSelector,
CoilNo,
CoilList
CoilList,
AbnormalForm
},
data() {
return {
@@ -294,7 +265,9 @@ export default {
updateTime: undefined,
updateBy: undefined
};
this.resetForm("form");
if (this.$refs.abnormalForm) {
this.$refs.abnormalForm.resetFields();
}
},
/** 搜索按钮操作 */
handleQuery() {
@@ -340,7 +313,7 @@ export default {
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
this.$refs["abnormalForm"].validate(valid => {
if (valid) {
this.buttonLoading = true;
if (this.form.abnormalId != null) {