# 木箱信息只读查询实现计划 > **面向 AI 代理的工作者:** 在当前会话内按步骤实现并逐项验证。 **目标:** 在WMS模块的“基础模块”下提供 `wmw_boxinfo` 的只读分页菜单和查询页面。 **架构:** 后端使用 Controller → Service → MyBatis XML Mapper 的只读链路;前端使用独立API和VXE分页表格;菜单由幂等SQL配置。所有层均不暴露写能力。 **技术栈:** Java 17、Spring Boot、MyBatis-Plus分页、MyBatis XML、Vue 3、TypeScript、Vben Admin、VXE Table、MySQL。 --- ### 任务1:后端只读分页 **文件:** - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/controller/admin/boxinfo/vo/BoxInfoPageReqVO.java` - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/controller/admin/boxinfo/vo/BoxInfoRespVO.java` - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/dal/mysql/boxinfo/BoxInfoMapper.java` - 创建:`nl-module-wms/nl-module-wms-server/src/main/resources/mapper/boxinfo/BoxInfoMapper.xml` - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/service/boxinfo/BoxInfoService.java` - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/service/boxinfo/BoxInfoServiceImpl.java` - 创建:`nl-module-wms/nl-module-wms-server/src/main/java/cn/code/nl/module/wms/controller/admin/boxinfo/BoxInfoController.java` - [ ] 定义与 `wmw_boxinfo` 字段一一对应的只读响应对象。 - [ ] 定义继承 `PageParam` 的查询参数,支持木箱号、物料和状态筛选。 - [ ] 在Mapper XML中实现动态条件、`box_id DESC`排序和分页查询。 - [ ] Service接收请求对象并返回 `PageResult`。 - [ ] Controller仅暴露 `GET /wms/box-info/page`,权限为 `wms:box-info:query`。 - [ ] 运行模块编译并确认成功。 ### 任务2:前端只读列表 **文件:** - 创建:`nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/api/wms/boxinfo/index.ts` - 创建:`nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/wms/boxinfo/data.ts` - 创建:`nl-ui/nl-ui-admin-vben/yudao-ui-admin-vben/apps/web-antdv-next/src/views/wms/boxinfo/index.vue` - [ ] 定义木箱信息类型和分页API。 - [ ] 定义五个查询条件和全部基础信息列表列。 - [ ] 创建仅含查询、刷新和分页的页面,不配置复选框及操作按钮。 - [ ] 运行前端类型检查并确认新增文件无错误。 ### 任务3:菜单权限 **文件:** - 创建:`sql/mysql/wms_box_info_menu.sql` - [ ] 查询基础管理菜单ID和项目菜单字段结构。 - [ ] 编写“木箱信息”页面菜单及 `wms:box-info:query` 按钮权限的幂等SQL。 - [ ] 执行SQL并查询确认菜单记录唯一。 ### 任务4:联调验证 - [ ] 确认后端编译成功且Mapper XML无语法错误。 - [ ] 确认前端API路径与Controller一致。 - [ ] 确认菜单组件路径与页面文件一致。 - [ ] 确认代码中不存在木箱信息写接口或写按钮。