chore: 批量完成项目多模块迭代优化
1. 废弃半成品库存表并统一库存主表 2. 修复列表排序与搜索大小写不敏感问题 3. 新增用户最近登录时间、工单BOM名称字段 4. 完善角色管理、工位选择器功能 5. 增加拧紧数据补录、成品自动回流WMS能力 6. 统一导出时间范围校验规则 7. 丰富物料/备料单筛选条件 8. 调整菜单与权限命名适配产品型号业务
This commit is contained in:
@@ -32,17 +32,6 @@
|
||||
<el-tag :type="row.status === 'ACTIVE' ? 'success' : 'info'">{{ statusText(row.status) }}</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="绑定工位" min-width="150">
|
||||
<template #default="{ row }">
|
||||
<el-popover v-if="(row.stations || []).length" placement="top" :width="220" trigger="hover">
|
||||
<template #reference>
|
||||
<el-tag size="small" type="success">{{ (row.stations || []).length }} 个工位</el-tag>
|
||||
</template>
|
||||
<div style="line-height:1.9">{{ (row.stations || []).map(s => `工位${s}`).join('、') }}</div>
|
||||
</el-popover>
|
||||
<span v-else>-</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="步骤" min-width="120">
|
||||
<template #default="{ row }">
|
||||
<el-tooltip
|
||||
@@ -71,6 +60,7 @@
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination style="margin-top:12px;justify-content:flex-end" background layout="total, prev, pager, next" :total="flowTotal" :page-size="flowPageSize" v-model:current-page="flowPage" @current-change="loadFlows" />
|
||||
</el-tab-pane>
|
||||
|
||||
<!-- ============ 流程配置(新增/编辑共用,替代原弹窗套弹窗) ============ -->
|
||||
@@ -89,14 +79,7 @@
|
||||
<el-col :span="12">
|
||||
<el-form-item label="工序编号" required>
|
||||
<el-input-number v-model="flowDlg.stationNo" :min="1" :max="12" style="width:100%" />
|
||||
<div style="color:#909399;font-size:12px;line-height:1.4">该流程承载的工序编号(1~12)</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="24">
|
||||
<el-form-item label="绑定工位" required>
|
||||
<el-select v-model="flowDlg.stations" multiple collapse-tags placeholder="可多选工位:一个工位同一时刻只能绑一个启用流程,一个流程可绑多个工位" style="width:100%">
|
||||
<el-option v-for="i in 12" :key="i" :label="`工位${i}`" :value="i" />
|
||||
</el-select>
|
||||
<div style="color:#909399;font-size:12px;line-height:1.4">该流程承载的工序编号(1~999,流程内唯一即可;与物理工位的对应关系在「关联工位」页维护)</div>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@@ -277,9 +260,11 @@ function blankStep(seq) {
|
||||
}
|
||||
|
||||
async function loadFlows() {
|
||||
const params = {}
|
||||
const params = { page: flowPage.value, pageSize: flowPageSize.value }
|
||||
if (query.stationNo) params.stationNo = query.stationNo
|
||||
flows.value = (await request.get('/process-flows', { params })) || []
|
||||
const data = await request.get('/process-flows', { params })
|
||||
flows.value = (data && data.list) ? data.list : (data || [])
|
||||
flowTotal.value = (data && data.total) ? data.total : flows.value.length
|
||||
}
|
||||
|
||||
function fmt(v) { return v ? String(v).replace('T', ' ').slice(0, 19) : '-' }
|
||||
@@ -387,7 +372,7 @@ function saveCriteria() {
|
||||
async function saveFlow() {
|
||||
if (!flowDlg.name) return ElMessage.warning('请填写流程名')
|
||||
if (!flowDlg.stationNo) return ElMessage.warning('请选择工序编号(1~12)')
|
||||
if (!flowDlg.stations || !flowDlg.stations.length) return ElMessage.warning('请至少选择一个绑定工位')
|
||||
// 绑定关系由「关联工位」页维护:此处不再收集绑定工位,保存流程本身
|
||||
const body = {
|
||||
id: flowDlg.id || undefined,
|
||||
name: flowDlg.name,
|
||||
|
||||
Reference in New Issue
Block a user