Commit Graph

4039 Commits (a013f965aa1cd478cf85770bc32e4e2ced2062e7)

Author SHA1 Message Date
YunaiV b8ea0645d3 feat(mes): 更新点检结果字段类型为整数,重构相关枚举和状态描述 2026-02-20 18:42:03 +08:00
YunaiV d033bcaaf5 feat(mes): 新增设备点检记录相关功能,包括记录明细接口及表单组件 2026-02-20 16:55:23 +08:00
YunaiV afaf6e371e feat(mes): 添加维修工单和点检记录相关状态及错误码常量 2026-02-20 16:05:11 +08:00
YunaiV 05d7212bd0 feat(mes): 重构点检保养方案界面,新增设备和项目选择器组件,优化启用停用逻辑 2026-02-20 15:33:47 +08:00
YunaiV 11b0b290eb feat(mes): 新增设备和点检保养项目精简列表接口及批次号字段 2026-02-20 15:25:37 +08:00
YunaiV 8d7b7cf473 feat(mes): 新增 MES 点检保养方案相关功能,包括设备和项目的增删改查接口及数据模型 2026-02-20 15:24:31 +08:00
YunaiV 9392e32630 refactor(mes): 重构设备保养记录模块,抽取可复用 Select 组件
1. 新增 DvMachinerySelect、DvCheckPlanSelect、UserSelect 三个通用选择器组件
2. MaintenRecordForm 和 index 页面改用 Select 组件替代内联远程搜索逻辑
3. MaintenRecordLineForm 合并到 MaintenRecordLineList(参考 pro/route 风格)
4. API 文件 maintenRecordLine.ts 迁移至 line/index.ts
5. 保养记录状态枚举从 10/20 改为 0/1,与后端对齐
2026-02-20 14:42:46 +08:00
YunaiV 083c187f2f refactor(mes): 重构设备保养记录模块,抽取可复用 Select 组件
1. 新增 DvMachinerySelect、DvCheckPlanSelect、UserSelect 三个通用选择器组件
2. MaintenRecordForm 和 index 页面改用 Select 组件替代内联远程搜索逻辑
3. MaintenRecordLineForm 合并到 MaintenRecordLineList(参考 pro/route 风格)
4. API 文件 maintenRecordLine.ts 迁移至 line/index.ts
5. 保养记录状态枚举从 10/20 改为 0/1,与后端对齐
2026-02-20 14:42:19 +08:00
YunaiV 9845059d4a feat(mes): 新增设备保养记录及明细相关功能,包括请求和响应 VO、Controller、Service 及 API 接口 2026-02-20 11:40:31 +08:00
YunaiV 2a83789782 feat(mes): 新增 MES 点检保养项目相关功能,包括请求和响应 VO、Controller 及 API 接口 2026-02-20 09:49:49 +08:00
YunaiV b76ecb2460 feat(mes): 新增来料检验单及缺陷记录相关功能,包括请求和响应 VO、Mapper、Controller 及 API 接口 2026-02-20 09:36:23 +08:00
YunaiV c454002370 feat(mes): 更新物料库存模块,优化物料查询逻辑并新增工作站和库区数量统计功能 2026-02-20 09:27:07 +08:00
YunaiV fff9c7f34e pro-task 2026-02-20 08:58:09 +08:00
YunaiV 3c3bf1b13b feat(mes): 新增生产排产(pro_task)前端页面
- 新增生产任务 API(task + task_issue)和 VO 定义
- 新增排产主页面:甘特图预览 + 待排产工单列表 + 排产/进度 Drawer
- 新增任务 CRUD 列表(ProTaskList)、任务表单(ProTaskForm)
- 新增 dhtmlx-gantt 甘特图组件封装(GanttChart)和全屏编辑(GanttEdit)
- 新增生产进度圆形进度条展示(ProTaskProgress)
- 新增任务投料列表(ProTaskIssueList,预留)
- 新增工作站下拉选择器(MdWorkstationSelect)
- 新增 MES_PRO_TASK_STATUS 字典和 MesProTaskStatusEnum 枚举
- 安装 dhtmlx-gantt 依赖
2026-02-20 08:57:56 +08:00
YunaiV 2740f3d26b feat(mes): 新增仓库管理-库存台账前端页面
新增:
- api/mes/wm/materialStock/index.ts:库存台账 API
- views/mes/wm/materialStock/index.vue:主页面(左侧物料分类树 + 搜索 + 表格 + 冻结开关 + 导出)
- views/mes/wm/materialStock/AreaDetailDialog.vue:库位详情只读弹窗
2026-02-20 08:26:54 +08:00
YunaiV d1e6d4109f fix(mes): 完善生产工单前端,支持树形展示、子工单生成及 BOM 内联编辑
1. index.vue:工单列表改为 handleTree 树形展示(row-key + tree-props),
   新增「确认」「新增子工单」操作按钮,移除父工单列,搜索条件对齐
2. WorkOrderForm:移除 batchCode 字段,需求日期改为 date 类型,
   新增 parentId 及子工单预填逻辑,新增 WorkOrderItemList 物料需求 Tab
3. WorkOrderBomList:合并 WorkOrderBomForm 弹窗为内联编辑(仅编辑数量/备注),
   草稿状态显示编辑按钮,已确认+自行生产+产品类型显示「生成工单」按钮
4. WorkOrderItemList:API 调用迁移到 ProWorkOrderBomApi
5. API 层:workorder/index.ts 新增 confirmWorkOrder、移除 batchCode;
   bom/index.ts 新增 getWorkOrderBomItemListByWorkOrderId、itemOrProduct 字段
6. 删除独立的 WorkOrderBomForm.vue 组件
7. constants.ts 新增 MesProTaskStatusEnum,dict.ts 新增对应字典类型
2026-02-20 08:24:58 +08:00
YunaiV e5bd477a7e feat(mes): 优化排班日历功能,新增假期按日期范围查询逻辑及假期类型枚举 2026-02-19 22:26:01 +08:00
YunaiV f4239e8a0e feat(mes): 完善排班日历功能,新增假期过滤及班组排班记录查询逻辑 2026-02-19 21:25:17 +08:00
YunaiV 93a76b19db refactor(mes): 重构排班日历视图,提取公共日历格子组件
- 新增 CalendarDateCell.vue:抽取三个视图中重复的农历/节气/节假日/班次渲染逻辑,统一维护
- CalendarTypeView.vue → TypeView.vue,PersonView.vue → UserView.vue:按视图含义重命名,去掉多余前缀
- UserView.vue:用户选择从 el-input-number 改为 el-select 下拉,调用 getSimpleUserList 获取用户列表
- TeamView.vue / TypeView.vue / UserView.vue:统一使用 CalendarDateCell 组件;补充变量行尾注释、函数 JSDoc 及关键逻辑行内注释
- index.vue:更新组件引用
2026-02-19 20:56:39 +08:00
YunaiV 64b3ce64c3 feat(mes): 新增开始日期和结束日期字段,优化排班日历请求和响应对象 2026-02-19 20:28:57 +08:00
YunaiV 3ec6a0bd79 fix(mes): 修复生产工单前端 TODO,搜索增强、条件显隐、BOM 拆分
- index.vue:新增产品/客户搜索,补充父工单/来源单据/客户编码列,"来源类型"改"工单来源"
- WorkOrderForm.vue:工单编码生成按钮,来源单据编号/供应商条件显隐,"生产数量"改"工单数量"
- WorkOrderBom 拆分为 WorkOrderBomList + WorkOrderBomForm
- constants.ts 新增 MesProWorkOrderTypeEnum、MesProWorkOrderSourceTypeEnum
2026-02-19 19:26:41 +08:00
YunaiV 115dcb2df6 fix(mes): 修复生产工单前端 TODO,搜索增强、条件显隐、BOM 拆分
- index.vue:新增产品/客户搜索,补充父工单/来源单据/客户编码列,"来源类型"改"工单来源"
- WorkOrderForm.vue:工单编码生成按钮,来源单据编号/供应商条件显隐,"生产数量"改"工单数量"
- WorkOrderBom 拆分为 WorkOrderBomList + WorkOrderBomForm
- constants.ts 新增 MesProWorkOrderTypeEnum、MesProWorkOrderSourceTypeEnum
2026-02-19 19:26:25 +08:00
YunaiV 112e24f97d fix(mes): 工艺路线前端 TODO 修复:状态按钮化、MdItemSelect、字段优化
- index.vue 状态操作改为按钮,启用后禁用「禁用」和「删除」按钮
- RouteProcessList 前3列 fixed、label 改名、布尔字段用 dict-tag、颜色显示 hex 值
- RouteProductList/RouteProductBomList 物料选择改用 MdItemSelect 组件
- RouteProductList BOM 弹窗移入产品编辑表单,动态宽度
- RouteProductBomList label 改名、processId 类型修复
2026-02-19 18:45:50 +08:00
YunaiV 1c0cbc0dc6 refactor(mes): 合并子列表 Form 到 List 组件,统一 Panel 重命名为 List
1. 合并 4 对 Form→List:将独立的 *Form.vue 弹窗组件内联到对应的 *List.vue 中
   - TemplateIndicatorForm → TemplateIndicatorList
   - TemplateItemForm → TemplateItemList
   - CalTeamMemberForm → CalTeamMemberList
   - ProProcessContentForm → ProProcessContentList

2. 重命名 5 个 Panel→List,更新引用方 import
   - WorkstationMachinePanel → WorkstationMachineList
   - WorkstationToolPanel → WorkstationToolList
   - WorkstationWorkerPanel → WorkstationWorkerList
   - CalPlanTeamPanel → CalPlanTeamList
   - CalShiftPanel → CalShiftList

3. 统一 9 个子列表组件的注释风格
   - 补全文件头注释、defineOptions、模板区域注释
   - 统一分隔线、JSDoc、变量行尾注释、watch 注释
   - 去掉多余的闭合行尾注释

4. 修复 WorkstationToolList 中 createSuccess/updateSuccess 提示写反的 bug
2026-02-19 18:24:25 +08:00
YunaiV e94f2d4fee fix(mes): 修复工艺路线前端 TODO,补全注释与交互优化
- API 文件(4 个)补充 VO 字段注释和方法注释,新增 updateRouteStatus 方法
- index.vue 字段加"工艺路线"前缀,状态列改为 el-switch 开关操作
- RouteForm.vue 补充行内注释,status 默认值改用 CommonStatusEnum.ENABLE
- RouteProcessList/ProductList/ProductBomList 补充变量行内注释
- CalendarTypeView/TeamView 修复 ESLint 问题
2026-02-19 17:44:58 +08:00
YunaiV 0da99069c5 refactor(mes): 将 enableFlag/enabled/areaEnabled 重构为 status/areaStatus(CommonStatus)
QC Template: enableFlag(Boolean) -> status(Integer),使用 CommonStatusEnum
Warehouse Area: enabled(Boolean) -> status(Integer),使用 CommonStatusEnum
Warehouse Location: areaEnabled(Boolean) -> areaStatus(Integer),使用 CommonStatusEnum

涉及前端 API 定义、列表页、表单页的字段名和字典类型切换(INFRA_BOOLEAN_STRING -> COMMON_STATUS),
以及后端 DO、RespVO、SaveReqVO、PageReqVO、Mapper 的同步修改。

注意:语义反转,原 true(启用) 对应新 status=0(开启),原 false(禁用) 对应新 status=1(关闭)。
2026-02-19 17:17:13 +08:00
YunaiV 545887ed38 refactor(mes): 将 enableFlag/enabled/areaEnabled 重构为 status/areaStatus(CommonStatus)
QC Template: enableFlag(Boolean) -> status(Integer),使用 CommonStatusEnum
Warehouse Area: enabled(Boolean) -> status(Integer),使用 CommonStatusEnum
Warehouse Location: areaEnabled(Boolean) -> areaStatus(Integer),使用 CommonStatusEnum

涉及前端 API 定义、列表页、表单页的字段名和字典类型切换(INFRA_BOOLEAN_STRING -> COMMON_STATUS),
以及后端 DO、RespVO、SaveReqVO、PageReqVO、Mapper 的同步修改。

注意:语义反转,原 true(启用) 对应新 status=0(开启),原 false(禁用) 对应新 status=1(关闭)。
2026-02-19 17:15:20 +08:00
YunaiV e95d613965 feat(mes): 新增工艺路线模块,支持路线、工序链、产品及 BOM 管理
从 ktg-mes 迁移工艺路线(pro-route)模块,包含:
- 4 个 DO:MesProRoute / RouteProcess / RouteProduct / RouteProductBom
- 4 个 Mapper 及 9 个 VO(含工序链 findPre/findNext 查询)
- 4 对 Service 接口+实现(链表重建、启用校验、级联删除)
- 4 个 Controller(路线 CRUD+导出,子资源复用父权限)
2026-02-19 16:39:43 +08:00
YunaiV 20c6876f2c feat(mes): 清理 qc-template TODO,补全注释风格与表单布局
- TemplateForm/TemplateIndicatorForm/TemplateItemForm/TemplateIndicatorList/TemplateItemList:注释风格对齐(ref 行内注释、函数步骤注释、defineExpose/defineEmits 说明)
- TemplateIndicatorForm:表单布局调整为多行 el-row/el-col(质检指标+标准值 / 计量单位+误差上下限 / 检测方法 / 说明图 / 备注)
- TemplateItemForm:表单布局调整为多行(产品物料 / 最低检测数+最大不合格数 / 致命+严重+轻微缺陷率 / 备注),补充缺失的备注字段
- index.vue:搜索项检测种类改为单值 Integer 查询
2026-02-19 12:57:00 +08:00
YunaiV e7a066d9c5 feat(mes): 重构质检方案页面,子表维护移入编辑弹窗
- api/mes/qc/template/ 拆分为 index.ts / indicator.ts / item.ts 三个文件
- TemplateForm.vue:Dialog 宽度改为 900px,编辑模式下新增 el-tabs,
  内嵌检测指标项(TemplateIndicatorList)和产品关联(TemplateItemList)子表
- index.vue:移除底部子表区域及 currentRow/activeTab 逻辑,简化为纯列表页;
  检测种类搜索字段由 types 改为 type(单选)
- TemplateIndicatorList/Form、TemplateItemList/Form:更新 import 路径至拆分后的 API 文件
- 清理所有 TODO @AI 注释
2026-02-19 12:41:57 +08:00
YunaiV e7a8095a35 review(mes):cal-calender 日历功能 2026-02-19 12:23:18 +08:00
YunaiV b8254baf5a feat(mes): 抽取通用 Select 下拉组件,替换各表单内联 el-select
将 MES 模块中各表单的内联 el-select + 手动加载 SimpleList 数据的模式,
统一抽取为独立的 Select 组件,每个组件自包含数据加载和前端搜索过滤。

新增 8 个 Select 组件:
- MdItemSelect(物料产品选择器)
- MdClientSelect(客户选择器)
- MdVendorSelect(供应商选择器)
- MdUnitMeasureSelect(计量单位选择器)
- MdWorkshopSelect(车间选择器)
- WmWarehouseSelect(仓库选择器)
- QcIndicatorSelect(质检指标选择器)
- TmToolTypeSelect(工具类型选择器)

改造 10 个消费者文件:
- WorkOrderForm.vue:产品/客户/供应商选择器替换
- WorkOrderBom.vue:物料/单位选择器替换,修复 handleBomItemChange
- MdItemForm.vue:计量单位选择器替换
- WorkstationForm.vue:车间/仓库选择器替换
- MachineryForm.vue:车间选择器替换
- TemplateItemForm.vue:物料选择器替换
- TemplateIndicatorForm.vue:质检指标/计量单位选择器替换
- ToolForm.vue:工具类型选择器替换
- workstation/index.vue:搜索栏车间选择器替换
- tool/index.vue:搜索栏工具类型选择器替换
2026-02-19 12:09:52 +08:00
YunaiV 5f010acc5f review(mes):qc-template 的实现代码 2026-02-18 22:48:56 +08:00
YunaiV 50be43d9e2 feat(mes): 重构生产工序模块包结构,拆分 process-content 为独立子模块
前端:
- api/mes/pro/process/index.ts:移除 contents 字段
- 新建 api/mes/pro/process/content/index.ts,删除旧 process-content/index.ts
- views/mes/pro/process/index.vue:移除 expand 行交互和工艺要求列,
  对齐 ktg-mes 风格
- ProProcessForm.vue:工序编码增加生成按钮,标签改为工序说明,
  编辑时弹窗内嵌操作步骤列表(el-divider + ProProcessContentList)
- 新建 ProProcessContentList.vue(列表)和 ProProcessContentForm.vue
  (表单弹窗),拆分自原内联实现,对齐 CalTeamMemberList/Form 风格
2026-02-18 16:08:12 +08:00
YunaiV 67e6e59120 review(mes):pro-process 的初步实现 50% 2026-02-18 15:47:18 +08:00
YunaiV 3c198013ba feat(mes): 重构 cal-team 班组成员前端文件结构
- 删除 api/mes/cal/team/member.ts、shift.ts,迁移至
  member/index.ts、shift/index.ts(与其他模块保持一致)
- CalTeamMemberPanel.vue 重命名为 CalTeamMemberList.vue,拆分为
  List(列表+删除)和 Form(添加弹窗)两个独立组件
- CalTeamMemberForm.vue(新增):用户下拉选择(getSimpleUserList)、
  表单校验、提交,通过 defineExpose open() + emit success 与 List 交互
- CalTeamForm.vue:更新引用为 CalTeamMemberList
2026-02-18 15:32:14 +08:00
YunaiV 377bf6e2ed feat(mes): 优化 cal-team 班组成员相关逻辑
- MesCalTeamMemberController:注入 AdminUserApi,合并 list-by-team 与
  list-by-team-ids 为单一接口(支持 teamId / teamIds 参数),新增
  buildMemberRespVOList 方法批量填充用户昵称和手机号
- MesCalTeamMemberServiceImpl:validateTeamMemberExists 改为 void 返回;
  validateUserUnique 去掉冗余的 excludeId 参数
- MesCalTeamMemberMapper:selectByUserIdExcludeId 简化为 selectByUserId
2026-02-18 15:31:59 +08:00
YunaiV ecd21a5dbd feat(mes): 新增 CAL 模块班组前端页面及修复班组选择下拉
新增 views/mes/cal/team 及对应 API:
- api/mes/cal/team/{index,member,shift}.ts:班组/成员/排班三个 API 模块
- views/mes/cal/team/index.vue:班组列表页(搜索/分页/导出)
- views/mes/cal/team/CalTeamForm.vue:班组表单弹窗(编辑时内嵌成员管理 Tab)
- views/mes/cal/team/CalTeamMemberPanel.vue:班组成员管理面板

修复 CalPlanTeamPanel.vue:
- 班组选择从 el-input-number 改为 el-select 下拉(对接 CalTeamApi.getTeamList)
2026-02-18 11:21:22 +08:00
YunaiV 3b43e9e463 🎨 style(mes/wm): 对齐注释风格、修复 TODO、重构冗余代码 2026-02-18 09:08:09 +08:00
YunaiV 5289b8b3bd 🎨 style(mes/wm): 对齐注释风格、修复 TODO、重构冗余代码
- warehouse/index.vue:补充变量行内注释;将 chargeUserId 展示内联到模板
- WarehouseForm.vue:删除非标准 DONE @AI 注释;补充变量注释、defineExpose/defineEmits 注释、submitForm 步骤注释
- location/index.vue:补充变量行内注释;修复 warehouseId 类型;使用具名路由跳转
- location/LocationForm.vue:补充注释;修复 warehouseId 类型;补充新增时默认值注释
- area/index.vue:合并 parseQueryId 到 loadLocationContext;将 4 个散 ref 合并为 currentLocation 对象;补充变量行内注释
- area/AreaForm.vue:修复 locationId 类型;简化 open 方法中逐字段赋值为直接赋值;补充注释
- md/workstation/WorkstationForm.vue:补充 JSDoc 注释、变量注释、submitForm 步骤注释

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-18 09:07:29 +08:00
YunaiV 47fd8b6018 review(mes):wm-warehouse 的初步实现 80% 2026-02-17 23:51:33 +08:00
YunaiV 9546589ccc review(mes):wm-warehouse 的初步实现 50% 2026-02-17 22:52:45 +08:00
YunaiV 57894e7ab5 review(mes):wm-warehouse 的初步实现 2026-02-17 21:53:33 +08:00
YunaiV 38405b1d20 review(mes):work-order 的代码实现,功能测试 2026-02-17 21:00:24 +08:00
YunaiV 3463213cd4 review(mes):cal-plan 的代码实现,功能测试 2026-02-17 20:58:24 +08:00
YunaiV 416778c8e5 review(mes):qc-template 的代码实现,功能测试 2026-02-17 20:43:40 +08:00
YunaiV 0772290be9 review(mes):work-order 的代码实现,功能测试 2026-02-17 20:21:31 +08:00
YunaiV 721449d834 feat(mes):qc-template 初始化 2026-02-17 18:57:14 +08:00
YunaiV ce761e536e review(mes):cal-plan 的实现 2026-02-17 17:05:45 +08:00
YunaiV 663b2e32b5 feat:新增 qc indicator 质量管理 - 检测项 2026-02-17 16:09:37 +08:00
YunaiV 2f86852483 feat(mes/cal-plan): 新增排班计划专用 confirm 接口
- 后端新增 PUT /mes/cal/plan/confirm 接口,仅接收 id 参数
- Service 层新增 confirmPlan(Long id) 方法,含草稿状态校验和班组数量校验
- updatePlan 中强制忽略 status 字段,禁止通过 update 修改状态
- 前端 API 新增 confirmPlan(id: number) 方法
- CalPlanForm handleConfirm 改为调用专用 confirmPlan 接口
2026-02-17 16:05:24 +08:00
YunaiV d5303a1e7d feat(mes-pro): 新增生产工单前端页面
- 新增工单列表页,支持编码/名称/类型/状态/来源/需求日期筛选
- 新增工单表单弹窗(新增/编辑/详情),产品选择自动填充单位
- 新增工单 BOM 子组件,内嵌分页表格 + 增删改弹窗
- 新增工单和 BOM 的 API 文件
- dict.ts 增加 3 个字典类型,constants.ts 增加工单状态枚举
2026-02-17 15:37:12 +08:00
YunaiV e920999bff fix(mes-cal): 清理前端 3 处 TODO @AI 注释
1. team.ts: 删除"挪到 plan/team 目录下"注释(文件已在正确位置)
2. CalPlanTeamPanel.vue: 删除"晚点 review 下"注释
3. CalPlanForm.vue: 删除"单独一个接口"注释,更新确认提示语

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 15:26:46 +08:00
YunaiV 501db918f3 feat(mes):优化、实现 plan 的逻辑 2026-02-17 15:15:25 +08:00
YunaiV 778141bf7f feat(mes):新增 defect 缺陷类型 2026-02-17 14:38:26 +08:00
YunaiV 2d79633b07 feat(mes): 设备状态枚举同步调整,表单增加点检保养时间选择器
1. constants.ts MesDvMachineryStatusEnum 改为 STOP/PRODUCING/MAINTENANCE
2. MachineryForm 默认状态改为 STOP,新增 lastCheckTime、lastMaintenTime 两个 el-date-picker 字段
2026-02-17 11:32:41 +08:00
YunaiV d313450069 feat(mes-dv): 设备台账添加导入功能前端 UI
- 新增 MachineryImportForm 组件,参考物料导入模式
- 列表页添加导入按钮和导入弹窗
- API 新增 importTemplate 方法(后端接口待实现)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:25:03 +08:00
YunaiV 5428ed8351 feat(mes-dv): 设备台账列表添加左侧设备类型分类树
- 新增 MachineryTypeTree 组件,支持搜索过滤和点击/取消选择
- 列表页改为左树右表布局(4:20 比例),参考物料模块
- 移除搜索栏中的「设备类型」下拉(由左侧树代替)
- 重置时同时清空分类树选中状态

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:23:07 +08:00
YunaiV e0ec6249ae refactor(mes-dv): 设备台账列表去掉最近保养/点检时间列
这两个时间字段在列表中意义不大,已移至设备详情表单中展示。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:21:35 +08:00
YunaiV babb4c3979 feat(mes-dv): MachineryForm 添加点检/保养/维修 Tab 占位
- 删除多余的「所属车间」TODO 注释(form 已有车间选择框)
- 编辑模式下显示 3 个子资源 Tab:点检记录、保养记录、维修工单
- 子模块尚未实现,使用 el-empty 占位,待后续对接

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:20:48 +08:00
YunaiV f0fe6e3f01 feat(mes-dv): MachineryForm 改为 3 列布局并添加编码生成按钮
- 第一行改为 3 列:设备编码(含生成按钮)、设备名称、品牌
- 编码生成按钮使用 generateRandomStr,编辑模式下禁用
- 调整规格型号到第三行,整体布局更紧凑

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:19:35 +08:00
YunaiV 969eac21df fix(mes-dv): 修复 MachineryTypeForm 的 TypeScript linter 警告
移除 formData 声明中多余的 `as unknown as number/string` 类型断言,
与 WorkstationForm 等其他表单组件保持一致的写法。

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-17 10:18:12 +08:00
YunaiV c6ab40e175 feat(mes-dv): 新增设备类型和设备台账前端页面
新增设备类型(dv/machinery/type,树形表格)和设备台账(dv/machinery)的前端实现,
包含 API 定义、列表页、表单弹窗,以及 dict.ts 和 constants.ts 中 DV 相关补充
2026-02-17 09:53:14 +08:00
YunaiV 9f5303aea6 feat(mes-cal): 新增排班计划和班次管理前端页面
- 新增班次管理独立页面(index.vue + CalShiftForm.vue),支持 CRUD + 导出
- 新增排班计划列表页(index.vue),支持按编码/名称/轮班方式/状态搜索
- 新增排班计划表单(CalPlanForm.vue),含编码生成、条件显示倒班方式/天数、确认计划操作
- 新增班次子表面板(CalShiftPanel.vue),嵌入计划表单 Tab
- 新增班组子表面板(CalPlanTeamPanel.vue),嵌入计划表单 Tab
- 新增 shift/plan/plan-team 三个 API 文件
- dict.ts 新增 4 个字典类型常量(shift_type/shift_method/calendar_type/plan_status)
2026-02-17 09:52:46 +08:00
YunaiV 153fa2cf25 fix(mes-tm): 修复工具管理前端 TODO 项,完善表单布局、编码生成和列宽
1. ToolForm:表单改为 el-row/el-col 栅格布局(960px 宽弹窗),新增编码"生成"按钮(TL 前缀)
2. ToolTypeForm:类型编码新增"生成"按钮(TT 前缀),保养周期拆分为天/次两个条件字段
3. type/index:保养周期列增加天/次单位后缀展示
4. tool/index + type/index:补齐所有表格列宽(编码 120、名称 min-150、状态 80 等)
2026-02-16 22:42:47 +08:00
YunaiV 6a83adf543 refactor(mes-tm): 工具管理前端枚举优化
1. 新增 MesToolStatusEnum、MesMaintenTypeEnum 到 mes/utils/constants.ts
2. ToolForm、ToolTypeForm、index 页面使用枚举常量替代魔法值
3. 移除 as unknown as 类型断言,移除 TODO @AI 注释
2026-02-16 22:30:52 +08:00
YunaiV d6a4857f6f refactor(mes-tm): 工具管理前端枚举优化
1. 新增 MesToolStatusEnum、MesMaintenTypeEnum 到 mes/utils/constants.ts
2. ToolForm、ToolTypeForm、index 页面使用枚举常量替代魔法值
3. 移除 as unknown as 类型断言,移除 TODO @AI 注释
2026-02-16 22:30:15 +08:00
YunaiV b15cd9021e feat(mes): 新增工具管理(TM)模块前端页面
新增工具类型和工具台账的 API、列表页和表单弹窗,
dict.ts 补充 MES_TM_TOOL_STATUS 和 MES_TM_MAINTEN_TYPE 字典类型。
2026-02-16 21:12:42 +08:00
YunaiV 23531c6c5b refactor(mes): 优化假期设置交互,精简接口对齐后端
1. 右键改左键点击弹出设置弹窗,阻止非当前月切换
2. 弹窗打开时调 get-by-day 接口回显已有 type 和 remark
3. 新增备注(remark)输入框,时间戳传参用 formatDate 转换
4. HolidayType 枚举抽取到 mes/utils/constants.ts 统一管理
5. 精简 API:移除 page/export/update/delete,create 改为 save
2026-02-16 21:01:41 +08:00
YunaiV 369d3bbff2 refactor(mes): 优化假期设置交互,精简接口对齐后端
1. 右键改左键点击弹出设置弹窗,阻止非当前月切换
2. 弹窗打开时调 get-by-day 接口回显已有 type 和 remark
3. 新增备注(remark)输入框,时间戳传参用 formatDate 转换
4. HolidayType 枚举抽取到 mes/utils/constants.ts 统一管理
5. 精简 API:移除 page/export/update/delete,create 改为 save
2026-02-16 20:59:01 +08:00
YunaiV f40b415b9c feat(mes): 新增假期设置日历页面,使用 dayjs-plugin-lunar 显示农历
基于 el-calendar 实现假期设置页面,右键日期可设置假期/工作日类型,
日历单元格显示班/休标签、农历日期、公历节日、农历节日和节气。
使用 dayjs-plugin-lunar(底层 tyme4ts)替代手写 667 行农历工具。

新增文件:
- src/api/mes/cal/holiday/index.ts
- src/views/mes/cal/holiday/index.vue
- src/views/mes/cal/holiday/HolidayForm.vue

修改文件:
- src/utils/dict.ts:新增 MES_CAL_HOLIDAY_TYPE

新增依赖:
- dayjs-plugin-lunar
2026-02-16 18:39:12 +08:00
YunaiV cb56866deb refactor(mes): 重构产品 BOM/SIP/SOP 表单,统一代码风格并修复 TODO
1. 统一表单方法风格,对齐 WorkstationWorkerPanel 的写法:
   - 弹窗变量统一命名为 dialogVisible/dialogTitle
   - dialogTitle 使用 t('action.' + type) 国际化
   - submitForm 添加 formRef 校验守卫,使用 t() 国际化提示
   - create/update 判断顺序统一为先 create 后 update
2. SIP/SOP 的 orderNumber 字段全局重命名为 sort
3. BOM 物料选择简化为无论选择几条都直接批量创建
4. 修复 formData 展开赋值的 TS 类型错误,改为逐字段赋值
5. 清理所有 TODO @AI 注释
2026-02-16 17:46:33 +08:00
YunaiV b0548b329d feat(mes): 优化工作站模块,新增获取车间列表和车间 Map 方法,重构表单弹窗逻辑 2026-02-16 15:47:05 +08:00
YunaiV 435496bdbd feat(mes): 添加假期类型常量及相关错误码,调整SOP和SIP模块的展示顺序 2026-02-16 13:19:50 +08:00
YunaiV debce44339 refactor(mes-ui): 修正工作站模块中文标签命名 + 拆分 API
- 表单标签/占位符/校验提示:工位 → 工作站
- API 注释:工位设备 → 设备资源、工位工具 → 工装夹具资源、工位人员 → 人力资源
- 拆分 workstation API 到 machine/tool/worker/workshop 子目录
2026-02-16 12:36:00 +08:00
YunaiV 95c478d739 refactor(mes-ui): 修正工作站模块中文标签命名 & 拆分 API 文件
- 表单标签/占位符/校验提示:工位 → 工作站
- API 注释:工位设备 → 设备资源、工位工具 → 工装夹具资源、工位人员 → 人力资源
- 拆分 workstation API 到 machine/tool/worker/workshop 子目录
2026-02-16 12:12:03 +08:00
YunaiV 59bd23b3e0 feat(mes): 新增产品 BOM、SOP、SIP 子表前端组件
- 新增 productBom / productSop / productSip 三组 API 文件
- BOM 组件:表格列表,支持远程搜索物料、编辑用量
- SOP / SIP 组件:卡片式图片列表,支持上传/预览/排序
- MdItemForm.vue 集成三个组件,替换原 el-empty 占位
2026-02-16 08:58:31 +08:00
YunaiV 403b7e75af feat(mes): 新增车间管理、工位管理模块前端
- API 接口:workstation/index.ts(工位+3个子资源)、workshop.ts(车间)
- 车间:列表页(搜索+分页)+ 表单弹窗
- 工位:列表页 + 表单弹窗(一行3列布局 + 编码自动生成)
- 工位子资源:设备/工具/人员 3 个 Tab 面板组件
- 共 9 个 Vue/TS 文件
2026-02-16 08:40:27 +08:00
YunaiV 8a3e33952b feat(mes): 新增车间管理、工位管理模块前端
- API 接口:workstation/index.ts、workshop.ts
- 车间:列表页 + 表单弹窗
- 工位:列表页 + 表单弹窗(含设备/工具/人员三个子资源 Tab 面板)
- 共 9 个 Vue/TS 文件
2026-02-16 08:09:29 +08:00
YunaiV 15dd4dce76 feat(mes): 新增物料批次属性配置前端组件
1. 新增 MdItemBatchConfigForm 组件,根据 itemOrProduct 区分 ITEM/PRODUCT 展示不同 checkbox
2. 嵌入 MdItemForm 的"批次属性"tab,仅 batchFlag 开启时显示
3. API 文件放置于 batchConfig/index.ts 子目录
4. 使用 MesItemOrProductEnum 常量替代硬编码字符串
5. MdItemForm 变量名语义优化:itemTypeList → itemTypeTree,itemTypeFlatList → itemTypeList
6. 布局优化:采用 CSS Grid 一行 5 个,checkbox label 模式(☑ 文字)
2026-02-16 01:28:10 +08:00
YunaiV 3d103f1f46 feat(mes): 新增供应商管理前端页面
新增供应商管理的前端代码,参照客户模块风格:
- 列表页:编码/名称/简称/等级/评分/电话/状态/备注,支持搜索与分页
- 表单弹窗:完整字段编辑,支持编码自动生成(VD前缀)
- 导入弹窗:Excel 文件上传,支持更新已存在数据,下载导入模板
- API 定义:完整 CRUD + 导出 + 导入模板接口
2026-02-16 00:28:17 +08:00
YunaiV 15d64fe772 feat(mes): 新增 MES 客户表 DDL、字典、菜单权限与测试数据
- 建表 mes_md_client(含逻辑删除、多租户字段)
- 字典 mes_client_type:企业客户(1)、个人(2)
- 菜单权限 5140~5146:查询/创建/更新/删除/导出/导入
- 测试数据:比亚迪、博世、德力西
2026-02-15 23:34:50 +08:00
YunaiV 5153adf1cf feat(mes): 完善计量单位、物料导入与客户管理前端
1. 计量单位管理:新增 API + 列表页 + 表单(UnitMeasureForm)
2. 物料单位选择器:MdItemForm 单位字段从 el-input 改为 el-select 下拉
3. 物料导入:新增 MdItemImportForm 组件(上传 Excel、下载模板、更新已有数据)
4. 物料导入权限:v-hasPermi 改为 mes:md-item:import
5. API VO 字段调整:unitOfMeasure → unitMeasureId + unitMeasureName
6. 客户管理:新增 API + 列表页 + 表单(MdClientForm)
2026-02-15 22:18:46 +08:00
YunaiV 27f5fcb66e feat(mes): 完善物料分类与物料产品前端功能
1. 新增 ItemTypeTree 左侧分类树组件(支持搜索过滤、点击切换)
2. 物料列表改为左右布局(左侧树 + 右侧列表)
3. 新增 MesItemOrProductEnum 常量({ label, value } 结构)
4. 物料/产品列用 getItemOrProductLabel 翻译,安全库存列用 dict-tag 渲染
5. 表单改为 3 列布局(span=8),增加编码生成按钮和底部 Tab 占位
6. 分类管理移除导出按钮,分类表单修复 TS 类型和枚举默认值
7. 分类 API 移除 exportItemType
2026-02-15 15:43:49 +08:00
YunaiV 6bb27899c1 feat(mes): 新增物料产品分类与物料产品管理
迁移 ktg-mes 的 md_item_type 和 md_item 两张表到 yudao-module-mes,
包含完整的 CRUD、树形分类、物料分页查询、enrichment 等功能。

后端新增 17 个文件(1337 行):
- DO: MesMdItemTypeDO(树形分类)、MesMdItemDO(物料产品)
- VO: 分类 3 个(List/Save/Resp)、物料 3 个(Page/Save/Resp)
- Mapper: 2 个(BaseMapperX,纯 Java,无 XML)
- Service: 4 个(接口 + 实现)
- Controller: 2 个(/mes/md/item-type、/mes/md/item)
- ErrorCodeConstants 追加 9 个错误码

关键业务逻辑:
- 分类:父分类递归环路检测、同级名称/编码唯一性、删除保护(子分类+物料)
- 物料:编码/名称全局唯一、分类存在校验、安全库存联动清零
- enrichment:物料 RespVO 通过 Service 关联填充 itemTypeName、itemOrProduct
- 循环依赖:MesMdItemTypeServiceImpl 用 @Lazy 注入 MesMdItemService

plan: plans/swirling-stirring-metcalfe.md
2026-02-15 14:03:59 +08:00
芋道源码 bb10760137
!854 feat:【iot】modbus-tcp 协议接入 100%:完整实现,修复 todo
Merge pull request !854 from 芋道源码/feature/iot-modbus
2026-02-14 03:09:03 +00:00
YunaiV ab8de6ea83 Merge branch 'master' of https://gitee.com/yudaocode/yudao-ui-admin-vue3 into feature/iot 2026-02-13 15:40:15 +08:00
YunaiV deed7eaff2 feat(iot):Modbus 支持 Master/Slave 双模式,配置表单和详情按协议类型区分展示 2026-02-13 15:35:41 +08:00
YunaiV 155edc41a9 feat(iot):Modbus 支持 Master/Slave 双模式,配置表单和详情按协议类型区分展示
1. ProtocolTypeEnum 拆分:MODBUS_TCP → MODBUS_TCP_MASTER + MODBUS_TCP_SLAVE
2. Slave 模式新增 mode(工作模式)、frameFormat(帧格式)字段,使用字典管理
3. 配置表单和详情页按 Master/Slave 模式条件展示不同字段,表单校验规则动态适配
4. 新增 DICT_TYPE:IOT_MODBUS_MODE、IOT_MODBUS_FRAME_FORMAT
5. 修复设备卡片 deviceName 过长溢出问题,添加文本截断

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 23:33:10 +08:00
YunaiV c153ff93c7 review:“新增 iframe 和省市区选择器组件” 2026-02-08 14:37:55 +08:00
puhui999 99b1e6da2c Merge remote-tracking branch 'yudao/master' into master-dev 2026-02-08 11:56:45 +08:00
puhui999 a62251f900 feat(form-create): 新增 iframe 和省市区选择器组件
- 新增 iframe 网页嵌入组件,支持 URL 配置和实时预览
- 新增省市区三级联动选择器组件
2026-02-08 11:56:18 +08:00
YunaiV 5f211558fb Merge branch 'feature/iot-protocol' of https://gitee.com/yudaocode/yudao-ui-admin-vue3 into feature/iot-modbus
# Conflicts:
#	src/views/iot/device/device/detail/index.vue
2026-02-07 21:24:36 +08:00
YunaiV 91fb07971e fix(crm): 修复线索详情页转化状态按钮误显示,对应 https://t.zsxq.com/wq7ix 2026-02-07 21:07:31 +08:00
YunaiV 3aeb719ec2 fix(mall):OrderDetail detailData 为 null 的情况 2026-02-07 19:45:27 +08:00
YunaiV 1678bf6e57 fix: 忘记密码页面未开启验证码时,隐藏 Verify 组件,避免请求 captcha/get 接口 2026-02-07 16:42:23 +08:00
YunaiV 57a77b2ba9 feat(iot):【协议改造】移除 codecType,使用 protocolType 替代 2026-02-04 22:05:03 +08:00
YunaiV 0ee0065c6a feat: update default selection settings for current user and department 2026-01-29 20:18:00 +08:00
YunaiV 4c5825389e feat(iot): refactor TimerConditionGroupConfig and PropertySelector for improved readability 2026-01-29 19:39:19 +08:00
puhui999 c656f87575 fix(mall): 修复商品 SKU 名称校验失败的问题 2026-01-28 11:06:59 +08:00