chore: 批量完成项目多模块迭代优化

1. 废弃半成品库存表并统一库存主表
2. 修复列表排序与搜索大小写不敏感问题
3. 新增用户最近登录时间、工单BOM名称字段
4. 完善角色管理、工位选择器功能
5. 增加拧紧数据补录、成品自动回流WMS能力
6. 统一导出时间范围校验规则
7. 丰富物料/备料单筛选条件
8. 调整菜单与权限命名适配产品型号业务
This commit is contained in:
SunYF
2026-09-08 11:44:04 +08:00
parent 06689970e2
commit e852c7cd37
96 changed files with 4528 additions and 542 deletions
+16 -7
View File
@@ -13,14 +13,19 @@
<el-alert v-if="error" :title="error" type="error" show-icon closable style="margin-bottom:10px" />
<template v-if="data">
<el-descriptions :column="4" border style="margin-bottom:12px">
<el-descriptions-item label="SN">{{ data.workpiece?.sn }}</el-descriptions-item>
<el-descriptions-item label="工单">{{ data.workpiece?.orderNo }}</el-descriptions-item>
<el-descriptions-item label="状态">{{ data.workpiece?.status }}</el-descriptions-item>
<el-descriptions-item label="当前工位">{{ data.workpiece?.currentProcess }}</el-descriptions-item>
<el-descriptions-item label="进线时间">{{ fmt(data.workpiece?.onlineAt) }}</el-descriptions-item>
<el-descriptions-item label="完工时间">{{ fmt(data.workpiece?.doneAt) }}</el-descriptions-item>
<el-descriptions :column="4" border style="margin-bottom:12px" title="工件信息">
<el-descriptions-item label="工件SN">{{ data.workpiece?.sn }}</el-descriptions-item>
<el-descriptions-item label="所属工单">{{ data.workpiece?.orderNo }}</el-descriptions-item>
<el-descriptions-item v-if="data.workpiece?.productCode || data.order?.productCode" label="产品型号">
{{ data.workpiece?.productCode || data.order?.productCode }}{{ (data.workpiece?.productName || data.order?.productName) ? '' + (data.workpiece?.productName || data.order?.productName) + '' : '' }}
</el-descriptions-item>
<el-descriptions-item label="状态">{{ statusText(data.workpiece?.status) }}</el-descriptions-item>
<el-descriptions-item v-if="data.workpiece?.currentProcess" label="当前工位">{{ data.workpiece?.currentProcess }}</el-descriptions-item>
<el-descriptions-item v-if="data.workpiece?.onlineAt" label="进线时间">{{ fmt(data.workpiece?.onlineAt) }}</el-descriptions-item>
<el-descriptions-item v-if="data.workpiece?.doneAt" label="完工时间">{{ fmt(data.workpiece?.doneAt) }}</el-descriptions-item>
</el-descriptions>
<el-alert type="info" :closable="false" style="margin-bottom:12px"
title="追溯链路:产品型号(物)→ 工单(批次任务)→ 工件(实例SN)。本页展示单个工件的完整生命周期。" />
<el-tabs>
<el-tab-pane label="工位时间线">
@@ -127,5 +132,9 @@ async function printCard() {
}
window.open('/api/v1/process-card?sn=' + encodeURIComponent(sn.value), '_blank')
}
function statusText(st) {
const map = { CREATED: '已创建', ONLINE: '生产中', DONE: '已完工', SCRAPPED: '已报废' }
return map[st] || st || '-'
}
function fmt(v) { return v ? String(v).replace('T', ' ').slice(0, 19) : '-' }
</script>