浏览代码

更新 README.md 文件,添加项目介绍、技术栈、系统要求及安装运行说明

YourName 3 天之前
父节点
当前提交
55ab52ff6c
共有 1 个文件被更改,包括 164 次插入143 次删除
  1. 164 143
      README.md

+ 164 - 143
README.md

@@ -1,196 +1,217 @@
-<p align="center">
-  <a href="https://midwayjs.org/" target="blank"><img src="https://cool-show.oss-cn-shanghai.aliyuncs.com/admin/logo.png" width="200" alt="Midway Logo" /></a>
-</p>
+# 墨石记服务端 (Moshiji Service)
 
-<p align="center">cool-admin(nodejs版)一个很酷的后台权限管理系统,开源免费,Ai编码、流程编排、模块化、插件化、极速开发CRUD,方便快速构建迭代后台管理系统,支持原生、docker、普通服务器等多种方式部署
-到 <a href="https://cool-js.com" target="_blank">官网</a> 进一步了解。
-<p align="center">
-    <a href="https://github.com/cool-team-official/cool-admin-midway/blob/master/LICENSE" target="_blank"><img src="https://img.shields.io/badge/license-MIT-green?style=flat-square" alt="GitHub license" />
-    <a href=""><img src="https://img.shields.io/github/package-json/v/cool-team-official/cool-admin-midway?style=flat-square" alt="GitHub tag"></a>
-    <img src="https://img.shields.io/github/last-commit/cool-team-official/cool-admin-midway?style=flat-square" alt="GitHub tag"></a>
-</p>
+一个基于 Cool Admin Midway 框架开发的现代化后端服务系统,提供完整的权限管理、用户管理、任务调度等功能。
 
-## 特性
+## 🚀 技术栈
 
-Ai 时代,很多老旧的框架已经无法满足现代化的开发需求,Cool-Admin 开发了一系列的功能,让开发变得更简单、更快速、更高效。
+- **框架**: [Midway.js](https://midwayjs.org/) + [Koa.js](https://koajs.com/)
+- **数据库**: MySQL + TypeORM (0.3.20版本)
+- **语言**: TypeScript + JavaScript
+- **权限管理**: Cool Admin 权限系统
+- **任务调度**: Cron + Bull Queue
+- **文件上传**: Midway Upload
+- **API文档**: Swagger
+- **缓存**: Cache Manager
 
-- **Ai 编码**:通过微调大模型学习框架特有写法,实现简单功能从 Api 接口到前端页面的一键生成[详情](https://node.cool-admin.com/src/guide/ai.html)
-- **流程编排**:通过拖拽编排方式,即可实现类似像智能客服这样的功能[详情](https://node.cool-admin.com/src/guide/flow.html)
-- **多租户**:支持多租户,采用全局动态注入查询条件[详情](https://node.cool-admin.com/src/guide/core/tenant.html)
-- **多语言**:基于大模型自动翻译,无需更改原有代码[详情](https://node.cool-admin.com/src/guide/core/i18n.html)
-- **原生打包**:打包成 exe 等安装包,打包完可以直接运行在 windows、mac、linux 等操作系统上[详情](https://node.cool-admin.com/src/guide/core/pkg.html)
-- **模块化**:代码是模块化的,清晰明了,方便维护
-- **插件化**:插件化的设计,可以通过安装插件的方式扩展如:支付、短信、邮件等功能
-- ......
+## 📋 系统要求
 
-![](https://cool-show.oss-cn-shanghai.aliyuncs.com/admin/flow.png)
+- Node.js >= 18.0.0
+- MySQL 5.7+
+- TypeScript 5.8+
 
-## 技术栈
+## 🏗️ 项目结构
 
-- 后端:**`node.js` `typescript`**
-- 前端:**`vue.js` `element-plus` `jsx` `pinia` `vue-router`**
-- 数据库:**`mysql` `postgresql` `sqlite`**
-
-如果你是前端,后端的这些技术选型对你是特别友好的,前端开发者可以较快速地上手。
-如果你是后端,Typescript 的语法又跟 java、php 等特别类似,一切看起来也是那么得熟悉。
-
-如果你想使用 java 版本后端,请移步[cool-admin-java](https://cool-js.com/admin/java/introduce.html)
-
-#### 官网
-
-[https://cool-js.com](https://cool-js.com)
-
-## 视频教程
-
-[官方 B 站视频教程](https://www.bilibili.com/video/BV1j1421R7aB)
-
-<!-- 在此次添加使用文档 -->
-
-## 演示
-
-[AI 极速编码](https://node.cool-admin.com/src/guide/ai.html)
-
-[https://show.cool-admin.com](https://show.cool-admin.com)
-
-- 账户:admin
-- 密码:123456
-
-<img src="https://cool-show.oss-cn-shanghai.aliyuncs.com/admin/home-mini.png" alt="Admin Home"></a>
-
-#### 项目前端
-
-[https://github.com/cool-team-official/cool-admin-vue](https://github.com/cool-team-official/cool-admin-vue)
-
-或
+```
+moshiji_service/
+├── src/
+│   ├── comm/                    # 通用工具库
+│   ├── config/                  # 配置文件
+│   │   ├── config.default.ts    # 默认配置
+│   │   ├── config.local.ts      # 本地开发配置
+│   │   └── config.prod.ts       # 生产环境配置
+│   ├── modules/                 # 业务模块
+│   │   ├── base/                # 基础权限管理模块
+│   │   │   ├── controller/      # 控制器
+│   │   │   ├── entity/          # 实体类
+│   │   │   ├── service/         # 服务层
+│   │   │   ├── middleware/      # 中间件
+│   │   │   └── dto/            # 数据传输对象
+│   │   ├── user/                # 用户管理模块
+│   │   ├── dict/                # 字典管理模块
+│   │   ├── task/                # 任务调度模块
+│   │   ├── plugin/              # 插件管理模块
+│   │   ├── space/               # 空间管理模块
+│   │   ├── recycle/             # 回收站模块
+│   │   ├── demo/                # 示例模块
+│   │   └── swagger/             # API文档模块
+│   ├── configuration.ts         # Midway配置
+│   └── interface.ts             # 类型声明
+├── public/                      # 静态资源
+├── test/                        # 测试文件
+├── typings/                     # 类型定义
+├── bootstrap.js                 # 生产环境启动文件
+└── package.json                 # 项目依赖
+```
 
-[https://gitee.com/cool-team-official/cool-admin-vue](https://gitee.com/cool-team-official/cool-admin-vue)
+## 🛠️ 安装与运行
 
-
+### 1. 安装依赖
 
-[https://gitcode.com/cool_team/cool-admin-vue](https://gitcode.com/cool_team/cool-admin-vue)
+```bash
+npm install
+```
 
-## 微信群
+### 2. 环境配置
 
-<img width="260" src="https://cool-show.oss-cn-shanghai.aliyuncs.com/admin/wechat.jpeg?v=1" alt="Admin Wechat"></a>
+复制并修改配置文件:
 
-## 运行
+```bash
+# 本地开发环境
+cp src/config/config.local.ts.example src/config/config.local.ts
 
-#### 修改数据库配置,配置文件位于`src/config/config.local.ts`
+# 生产环境
+cp src/config/config.prod.ts.example src/config/config.prod.ts
+```
 
-以 Mysql 为例,其他数据库请参考[数据库配置文档](https://cool-js.com/admin/node/quick.html#%E6%95%B0%E6%8D%AE%E5%BA%93%E9%85%8D%E7%BD%AE)
+### 3. 数据库配置
 
-Mysql(`>=5.7版本`),建议 8.0,node 版本(`>=18.x`),首次启动会自动初始化并导入数据
+在配置文件中设置数据库连接信息:
 
-```ts
-// mysql,驱动已经内置,无需安装
-typeorm: {
+```typescript
+// src/config/config.local.ts
+export default {
+  typeorm: {
     dataSource: {
       default: {
         type: 'mysql',
-        host: '127.0.0.1',
+        host: 'localhost',
         port: 3306,
         username: 'root',
-        password: '123456',
-        database: 'cool',
-        // 自动建表 注意:线上部署的时候不要使用,有可能导致数据丢失
+        password: 'password',
+        database: 'moshiji_service',
         synchronize: true,
-        // 打印日志
-        logging: false,
-        // 字符集
-        charset: 'utf8mb4',
-        // 是否开启缓存
-        cache: true,
-        // 实体路径
-        entities: ['**/modules/*/entity'],
+        logging: true,
       },
     },
   },
+};
 ```
 
-#### 安装依赖并运行
+### 4. 运行项目
 
 ```bash
-$ npm i
-$ npm run dev
+# 开发环境
+npm run dev
+
+# 生产环境
+npm run start
+
+# 构建项目
+npm run build
+
+# 运行测试
+npm run test
 ```
 
-启动完成访问:[http://localhost:8001/](http://localhost:8001)
+## 📚 主要功能模块
+
+### 基础权限管理 (base)
+- 用户管理
+- 角色管理
+- 部门管理
+- 菜单管理
+- 权限控制
+- 系统参数配置
+
+### 用户管理 (user)
+- 用户信息管理
+- 地址管理
+- 微信集成
+- 短信服务
+
+### 字典管理 (dict)
+- 字典类型管理
+- 字典数据管理
 
-注: `npm i`如果安装失败可以尝试使用切换您的镜像源,推荐使用[pnpm](https://pnpm.io/)安装
+### 任务调度 (task)
+- 定时任务管理
+- 任务队列
+- 任务日志
 
-## CURD(快速增删改查)
+### 插件管理 (plugin)
+- 插件中心
+- 文件上传
+- 插件钩子
 
-大部分的后台管理系统,或者 API 服务都是对数据进行管理,所以可以看到大量的 CRUD 场景(增删改查),cool-admin 对此进行了大量地封装,让这块的编码量变得极其地少。
+### 空间管理 (space)
+- 空间信息管理
+- 空间类型管理
 
-#### 新建一个数据表
+## 🔧 开发规范
 
-`src/modules/demo/entity/goods.ts`,项目启动数据库会自动创建该表,无需手动创建
+### 代码规范
+- 使用 TypeScript 进行开发
+- 遵循 ESLint 代码规范
+- 使用 Prettier 格式化代码
 
-```ts
-import { BaseEntity } from '../../base/entity/base';
-import { Column, Entity, Index } from 'typeorm';
+### 命名规范
+- 文件名使用下划线命名法:`user_info.entity.ts`
+- 类名使用大驼峰命名法:`UserInfo`
+- 变量和函数使用小驼峰命名法:`userName`
+- API 接口使用驼峰命名法:`/userInfo` 而不是 `/user/info`
 
-/**
- * 商品
- */
-@Entity('demo_app_goods')
-export class DemoAppGoodsEntity extends BaseEntity {
-  @Column({ comment: '标题' })
-  title: string;
+### 数据库规范
+- 使用 TypeORM 进行数据库操作
+- 不使用外键关系(@ManyToOne、@OneToMany等)
+- Entity 字段使用驼峰命名
+- 统计查询可考虑使用原生 SQL
 
-  @Column({ comment: '图片' })
-  pic: string;
+## 🚀 部署
 
-  @Column({ comment: '价格', type: 'decimal', precision: 5, scale: 2 })
-  price: number;
-}
+### Docker 部署
+
+```bash
+# 构建镜像
+docker build -t moshiji-service .
+
+# 运行容器
+docker run -d -p 7001:7001 --name moshiji-service moshiji-service
 ```
 
-#### 编写 api 接口
-
-`src/modules/demo/controller/app/goods.ts`,快速编写 6 个 api 接口
-
-```ts
-import { CoolController, BaseController } from '@cool-midway/core';
-import { DemoAppGoodsEntity } from '../../entity/goods';
-
-/**
- * 商品
- */
-@CoolController({
-  api: ['add', 'delete', 'update', 'info', 'list', 'page'],
-  entity: DemoAppGoodsEntity,
-})
-export class DemoAppGoodsController extends BaseController {
-  /**
-   * 其他接口
-   */
-  @Get('/other')
-  async other() {
-    return this.ok('hello, cool-admin!!!');
-  }
-}
+### PM2 部署
+
+```bash
+# 启动服务
+npm run pm2:start
+
+# 停止服务
+npm run pm2:stop
 ```
 
-这样我们就完成了 6 个接口的编写,对应的接口如下:
+## 📖 API 文档
+
+启动项目后,访问以下地址查看 API 文档:
+
+- Swagger UI: `http://localhost:7001/swagger-ui/index.html`
+- API 文档: `http://localhost:7001/api-docs`
 
-- `POST /app/demo/goods/add` 新增
-- `POST /app/demo/goods/delete` 删除
-- `POST /app/demo/goods/update` 更新
-- `GET /app/demo/goods/info` 单个信息
-- `POST /app/demo/goods/list` 列表信息
-- `POST /app/demo/goods/page` 分页查询(包含模糊查询、字段全匹配等)
+## 🤝 贡献指南
 
-### 部署
+1. Fork 本仓库
+2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
+3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
+4. 推送到分支 (`git push origin feature/AmazingFeature`)
+5. 打开 Pull Request
 
-[部署教程](https://node.cool-admin.com/src/guide/deploy.html)
+## 📄 许可证
 
-### 内置指令
+本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。
 
-- 使用 `npm run lint` 来做代码风格检查。
+## 📞 联系方式
 
-[midway]: https://midwayjs.org
+- 项目主页: [https://cool-js.com](https://cool-js.com)
+- 问题反馈: [Issues](https://github.com/your-repo/issues)
 
-### 低价服务器
+---
 
-[阿里云、腾讯云、华为云低价云服务器,不限新老](https://cool-js.com/service/cloud)
+**注意**: 本项目基于 Cool Admin Midway 框架开发,版本 8.x。请确保按照框架规范进行开发。