系统性修复 MES migration review(INDEX.md,MES-R001~R042)发现的迁移问题, 覆盖 web-antd 与 web-ele 两端,按严重级别从 P0 到 P3。 P0 - B001: DICT_TYPE/BarcodeBizTypeEnum 等常量从 'vue' 误导入致 TS2305/运行时崩溃, 改从 @vben/constants 导入(20 个文件)。 P1 - B002 itemreceipt 入库单名称误必填;B003 条码工单选择补 CONFIRMED 过滤; B004 库存台账冻结开关补更新权限禁用;B005 returnsales 上架明细批次号误必填; B006 checkrecord/maintenrecord 计划/执行人误必填;B007 returnsales 退货行 rqcCheckFlag 默认改回 false;B019 OQC 预填 checkQuantity 缺省取 outQuantity; B024 repair 完成维修态放开 finishDate 录入;B025 tool 编码管理类型库存数量锁定为 1; B027 详情态自动编码按钮隐藏/禁用(md/cal/dv/tm 13 模块)。 P2 - B008 IPQC 废品数量补 0 默认值;B009 共享选择器去掉 catch+console.error 吞错; B011 route 自定义 SFC 改 markRaw;B012 ele 自动编码按钮去 type:'default'; B014 md 编辑态编码字段误禁用;B015 dv/subject 选择器仅展示启用项(保留历史回显); B016 盘点结果回填 batchId;B017 源 vue3 miscissue 业务类型字典误用 getStrDictOptions; B018 stocktaking/plan 盘点条件表单 schema 化;B020 清理 TODO @AI; B026 repair 验收信息字段按状态门控只读。 P3 - B010 QcIndicatorSelect 去吞错;B013/B019/B030/B031 componentProps、列对象多行化等 code style;B021 自动编码循环方式列条件展示;B022 盘点结果选中清单行后字段禁用; B023 质检指标 resultSpecification 抽 ResultSpecificationInput 消除重复 fieldName; B032 barcode/batch/sn API 字段补注释。 风格统一 - getTitle 统一为「特殊态 if 提前 return + create/update 三元」(pro/card、 stocktaking/task、repair);headerReadonly 抽 isHeaderReadonly 辅助函数对齐 pro/workorder/transfer 写法;computed 解释注释移入 computed 内部。 验证: - 两端 pnpm exec eslint 改动文件通过 - 两端 pnpm -F @vben/web-antd / @vben/web-ele exec vue-tsc 过滤 src/views/mes、 api/mes 无报错 - git diff --check 通过 备注:R037(defectrecord 命名漂移)经复核为原 finding 前提有误(两端本就一致), 已 rejected,未占 MES-B 编号。R008/R009 为 disputed 待裁决。 本提交仅含 src/views/mes 与 src/api/mes 下文件,排除 .env.development、vite.config.ts、 infra/codegen、docs changelog 等无关旁支改动。
69 lines
2.0 KiB
TypeScript
69 lines
2.0 KiB
TypeScript
import type { PageParam, PageResult } from '@vben/request';
|
||
|
||
import { requestClient } from '#/api/request';
|
||
|
||
export namespace MesWmSnApi {
|
||
/** MES SN 码分组 */
|
||
export interface SnGroup {
|
||
uuid?: string; // 批次 UUID
|
||
count?: number; // SN 码数量
|
||
itemId?: number; // 物料编号
|
||
itemCode?: string; // 物料编码
|
||
itemName?: string; // 物料名称
|
||
specification?: string; // 规格型号
|
||
unitName?: string; // 单位名称
|
||
batchCode?: string; // 批次号
|
||
workOrderId?: number; // 生产工单编号
|
||
createTime?: Date; // 生成时间
|
||
}
|
||
|
||
/** MES SN 码生成参数 */
|
||
export interface SnGenerate {
|
||
itemId?: number; // 物料编号
|
||
batchCode?: string; // 批次号
|
||
workOrderId?: number; // 生产工单编号
|
||
count?: number; // 生成数量
|
||
}
|
||
|
||
/** MES SN 码分组分页查询参数 */
|
||
export interface PageParams extends PageParam {
|
||
uuid?: string; // 分组 UUID
|
||
code?: string; // SN 码
|
||
itemId?: number; // 物料编号
|
||
batchCode?: string; // 批次号
|
||
createTime?: string[]; // 创建时间
|
||
}
|
||
}
|
||
|
||
/** 生成 SN 码 */
|
||
export function generateSnCodes(data: MesWmSnApi.SnGenerate) {
|
||
return requestClient.post('/mes/wm/sn/generate', data);
|
||
}
|
||
|
||
/** 查询 SN 码分组分页 */
|
||
export function getSnGroupPage(params: MesWmSnApi.PageParams) {
|
||
return requestClient.get<PageResult<MesWmSnApi.SnGroup>>(
|
||
'/mes/wm/sn/group-page',
|
||
{ params },
|
||
);
|
||
}
|
||
|
||
/** 批量删除 SN 码(按批次 UUID) */
|
||
export function deleteSnBatch(uuid: string) {
|
||
return requestClient.delete('/mes/wm/sn/delete-batch', {
|
||
params: { uuid },
|
||
});
|
||
}
|
||
|
||
/** 导出 SN 码分组 Excel */
|
||
export function exportSnGroupExcel(params: MesWmSnApi.PageParams) {
|
||
return requestClient.download('/mes/wm/sn/group-export-excel', { params });
|
||
}
|
||
|
||
/** 导出批次 SN 码明细 Excel */
|
||
export function exportSnDetailExcel(uuid: string) {
|
||
return requestClient.download('/mes/wm/sn/export-excel', {
|
||
params: { uuid },
|
||
});
|
||
}
|