refactor(wms/mes/cost): 优化多页面表单与表格交互逻辑

1. 调整质检任务表单的任务类型与入场卷号展示顺序,根据任务类型动态显示入场卷号字段并优化校验规则
2. 替换wms报表页面的pendingAction接口为轻量版listLightPendingAction
3. 给成本综合页面的表格拖拽排序功能新增置于最上/最下按钮,完善拖拽交互与样式
This commit is contained in:
2026-05-28 13:03:09 +08:00
parent 6de1bbfe0b
commit 4fcbf10afd
5 changed files with 48 additions and 23 deletions

View File

@@ -245,7 +245,13 @@
<el-form-item label="任务编号" prop="taskCode">
<el-input v-model="taskForm.taskCode" placeholder="请输入任务编号" />
</el-form-item>
<el-form-item label="入场卷号" prop="enterCoilNos">
<el-form-item label="任务类型" prop="taskType">
<el-select v-model="taskForm.taskType" placeholder="请选择任务类型" clearable filterable allow-create>
<el-option label="内控检验" value="内控检验" />
<el-option label="产品检验" value="产品检验" />
</el-select>
</el-form-item>
<el-form-item label="入场卷号" prop="enterCoilNos" v-if="taskForm.taskType === '产品检验'">
<div style="display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 8px;">
<el-tag
v-for="(coilNo, index) in selectedEnterCoilNos"
@@ -266,12 +272,6 @@
@select="handleSelectEnterCoilNo"
/>
</el-form-item>
<el-form-item label="任务类型" prop="taskType">
<el-select v-model="taskForm.taskType" placeholder="请选择任务类型" clearable filterable allow-create>
<el-option label="内控检验" value="内控检验" />
<el-option label="产品检验" value="产品检验" />
</el-select>
</el-form-item>
<el-form-item label="所属单位" prop="belongCompany">
<el-input v-model="taskForm.belongCompany" placeholder="请输入所属单位" />
</el-form-item>
@@ -419,9 +419,9 @@ export default {
result: undefined,
},
taskForm: {},
taskRules: {
taskRules: {},
baseTaskRules: {
taskCode: [{ required: true, message: '请输入任务编号', trigger: 'blur' }],
enterCoilNos: [{ required: true, message: '请输入入场卷号', trigger: 'blur' }],
taskType: [{ required: true, message: '请选择任务类型', trigger: 'change' }],
belongCompany: [{ required: true, message: '请输入所属公司', trigger: 'blur' }],
schemeName: [{ required: true, message: '请输入检验方案名称', trigger: 'blur' }],
@@ -474,6 +474,12 @@ export default {
};
},
computed: {
taskRules() {
return {
...this.baseTaskRules,
enterCoilNos: [{ required: this.taskForm.taskType === '产品检验', message: '请输入入场卷号', trigger: 'blur' }],
};
},
itemReadonly() {
if (!this.readonly) return false;
const status = this.currentTask?.status;