工程项目管理系统
创建于 2025 年 11 月 20 日
项目介绍
工程项目管理系统是一个基于芋道开源快速开发平台(ruoyi-vue-pro,2025.10-jdk8-SNAPSHOT)搭建的工程投标管理项目。仓库中没有针对本项目的说明文档,README 仍是芋道框架的原版内容,因此本文基于对源码与 SQL 脚本的实际探索整理。
核心功能
投标项目管理(CRUD)。 后端提供完整的 REST 接口:POST /admin/project/bid/create 创建、PUT /admin/project/bid/update 更新(先 validateExists 校验记录存在)、DELETE /admin/project/bid/delete 删除、GET /admin/project/bid/get 详情、GET /admin/project/bid/page 分页。分页查询支持三个筛选条件:项目名称模糊匹配(likeIfPresent)、项目经理精确匹配(eqIfPresent)、开始日期区间(betweenIfPresent),结果按 ID 倒序返回,使用框架统一的 PageResult 分页结构。
用户体系打通与前端交互。 前端 index.vue 通过 UserApi.getSimpleUserList() 加载系统用户列表作为”项目经理”下拉数据源,列表页用 userNameMap 把 projectManagerId 翻译成昵称/账号展示;ProjectBidForm.vue 提供新增/编辑对话框,表单必填校验齐全,并内置自定义校验器”到期日期不能小于开始日期”,项目名称限制 200 字。列表页还支持项目名称、项目经理、开始日期区间的组合搜索、分页与删除二次确认(message.delConfirm()),形成完整的管理体验。
框架底座能力。 模块继承芋道框架的标准能力:TenantBaseDO 多租户数据隔离、逻辑删除(deleted 字段)、统一错误码体系(ErrorCodeConstants,错误码区间 1-000-000-000 ~ 1-000-000-999)、Springdoc OpenAPI 接口文档、MapStruct 对象转换与 MyBatis-Plus 条件构造器封装。前端采用芋道 Vue3 模板的标准结构(ContentWrap 布局、Pagination 分页组件、useMessage 消息钩子、TypeScript 接口定义于 src/api/project/bid/index.ts),便于后续继续扩展工程项目管理的其他子模块。
功能截图
暂无运行截图。