refactor(wms/post): 优化售后与流程页面功能

1. 调整售后列表页拖拽面板初始尺寸与标题
2. 新增部门参数传递与处理逻辑到售后相关页面
3. 移除售后意见页的部门切换 tabs 相关代码
4. 新增盘库、排产、设备维修流程文档
This commit is contained in:
2026-06-23 14:35:45 +08:00
parent 2490f487fd
commit 6265292cbb
4 changed files with 92 additions and 50 deletions

View File

@@ -1,11 +1,6 @@
<template>
<div class="app-container">
<div class="filter-bar">
<div class="dept-tabs">
<span v-for="tab in deptTabs" :key="tab.key" class="dept-tab" :class="{ active: activeDept === tab.key }" @click="switchDept(tab.key)">
{{ tab.label }}
</span>
</div>
<el-form :model="queryParams" ref="queryForm" size="small" class="filter-form">
<el-form-item label="售后编号">
<el-input v-model="queryParams.complaintNo" placeholder="请输入售后编号" clearable @keyup.enter.native="handleQuery" />
@@ -125,17 +120,11 @@ export default {
coilLoading: false,
submitLoading: false,
total: 0,
activeDept: 'production',
deptTabs: [
{ key: 'production', label: '生产部' },
{ key: 'quality', label: '质量部' },
{ key: 'sales', label: '销售部' }
],
deptMap: { production: 1, quality: 2, sales: 3 },
queryParams: {
pageNum: 1,
pageSize: 10,
deptId: 1,
deptId: undefined,
complaintNo: undefined,
taskStatus: undefined
},
@@ -149,15 +138,10 @@ export default {
};
},
created() {
this.queryParams.deptId = this.$route.query.deptId != null ? Number(this.$route.query.deptId) : 1;
this.getList();
},
methods: {
switchDept(key) {
this.activeDept = key;
this.queryParams.deptId = this.deptMap[key];
this.queryParams.pageNum = 1;
this.getList();
},
getList() {
this.loading = true;
const params = { ...this.queryParams };
@@ -213,8 +197,8 @@ export default {
}).finally(() => { this.coilLoading = false; });
},
getDeptLabel() {
const map = { production: '生产部', quality: '质量部', sales: '销售部' };
return map[this.activeDept] || '';
const map = { 1: '生产部', 2: '质量部', 3: '销售部' };
return map[this.queryParams.deptId] || '';
},
canEdit(row) {
const status = (row.acceptInfo || {}).flowStatus;
@@ -255,33 +239,6 @@ export default {
gap: 20px;
flex-wrap: wrap;
}
.dept-tabs {
display: flex;
gap: 0;
}
.dept-tab {
padding: 6px 20px;
cursor: pointer;
font-size: 13px;
color: #606266;
background: #fff;
border: 1px solid #dcdfe6;
transition: all 0.2s;
}
.dept-tab:first-child {
border-radius: 4px 0 0 4px;
}
.dept-tab:last-child {
border-radius: 0 4px 4px 0;
}
.dept-tab.active {
color: #fff;
background: #409eff;
border-color: #409eff;
}
.dept-tab:hover:not(.active) {
color: #409eff;
}
.filter-form {
display: flex;
flex-wrap: wrap;