# tjt_czjs_backend `tjt_czjs_backend` 是特建投设计产值统计平台的后端工程。当前底座基于 `Lyzsys` 后端框架,整体属于芋道源码体系上的二次开发版本。 这个项目负责提供管理后台 API、权限控制、数据访问、统计计算和通用基础能力。当前仓库中已经启用了 `system`、`infra`、`demo` 等模块,特建投业务建议后续独立沉淀为 `lyzsys-module-tjt`。 ## 技术栈 - JDK 8 - Spring Boot 2.7.18 - Spring Security - MyBatis Plus 3.5.15 - MyBatis Plus Join - Dynamic Datasource - Redisson - Knife4j / SpringDoc - Maven 多模块单体架构 ## 快速开始 环境要求: - JDK `1.8` - Maven `3.6+` - 数据库 - Redis 本地启动方式一:直接运行启动类: - `lyzsys-server/src/main/java/cn/iocoder/lyzsys/server/LyzsysServerApplication.java` 本地启动方式二:Maven 启动: ```bash mvn -pl lyzsys-server -am spring-boot:run ``` 打包: ```bash mvn clean package -DskipTests ``` 运行 Jar: ```bash java -jar lyzsys-server/target/lyzsys-server.jar --spring.profiles.active=local ``` ## 本地配置说明 默认激活配置见 `lyzsys-server/src/main/resources/application.yaml`。 当前默认 Profile 为 `local`,当前本地端口配置为 `48080`。 启动前请自行核对 `application-local.yaml` 中的数据源、Redis、消息队列和其他环境相关配置。 ## 接口文档 项目已接入 SpringDoc 与 Knife4j。服务启动后可访问: - Swagger UI:`/swagger-ui` - OpenAPI:`/v3/api-docs` 例如本地地址通常为: ```text http://127.0.0.1:48080/swagger-ui ``` ## 关键模块 - `lyzsys-server` 启动容器与 API 聚合入口 - `lyzsys-framework` 公共 starter 与基础能力封装 - `lyzsys-module-system` 系统管理模块 - `lyzsys-module-infra` 基础设施模块 - `lyzsys-module-demo` 示例业务模块,可作为新增业务的参考模板 - `doc` 后端详细文档目录 ## 当前已启用模块 `lyzsys-server/pom.xml` 当前实际启用: - `lyzsys-module-system` - `lyzsys-module-infra` - `lyzsys-module-demo` 说明: 框架层面虽然预留了 `bpm`、`ai`、`crm`、`erp`、`iot` 等模块入口,但当前服务并没有全部挂载启用。 ## 特建投业务建议落位 建议后续新增独立业务模块: - `lyzsys-module-tjt` 推荐按以下方向拆分: - `controller/admin/project` - `controller/admin/planning` - `controller/admin/output` - `controller/admin/profit` - `service` - `dal/dataobject` - `dal/mysql` - `convert` 建议接口前缀: - `/tjt/project` - `/tjt/planning` - `/tjt/output` - `/tjt/profit` ## 推荐参考代码 如果要按现有规范快速起一个业务模块,建议优先参考 `demo/project`: - `lyzsys-module-demo/src/main/java/cn/iocoder/lyzsys/module/demo/controller/admin/project/ProjectController.java` - `lyzsys-module-demo/src/main/java/cn/iocoder/lyzsys/module/demo/service/project/` - `lyzsys-module-demo/src/main/java/cn/iocoder/lyzsys/module/demo/dal/` 这个示例已经包含新增、修改、删除、列表分页、批量删除、Excel 导出、`@PreAuthorize` 权限控制和 `CommonResult` 统一返回。 ## 文档入口 后端详细文档: - `doc/README.md` - `doc/部署指南.md` - `doc/架构设计.md` - `doc/后端开发文档.md` 特建投业务分析与计划文档: - [`../doc/特建投业务分析与计划.md`](../doc/特建投业务分析与计划.md)