From 8eaa36342e4bf7075c1cbd5cd359c4943e7697b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E6=96=87=E5=B3=B0?= Date: Wed, 1 Apr 2026 12:14:59 +0800 Subject: [PATCH] up --- readme.md | 146 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 144 insertions(+), 2 deletions(-) diff --git a/readme.md b/readme.md index 7193c76..39ab74e 100644 --- a/readme.md +++ b/readme.md @@ -1,2 +1,144 @@ -# Ops -## Operations(运营)的缩写,广泛用于IT和业务运营领域。 \ No newline at end of file +# OPS 运营管理系统 + +> Operations(运营)的缩写,一个前后端分离的工作流/运营管理系统。 + +## 项目简介 + +OPS 是一个功能完善的运营管理系统,支持用户认证、文件管理、采购订单管理、日程排班等功能。前端采用 Vue 3 + Tailwind CSS,后端采用 Go + Gin 框架。 + +## 技术栈 + +### 后端 +- **语言**: Go +- **框架**: Gin (HTTP) + GORM (ORM) +- **数据库**: SQLite / MySQL / PostgreSQL (通过配置切换) +- **日志**: Uber Zap + +### 前端 +- **框架**: Vue 3 (JavaScript) +- **构建工具**: Vite 7 +- **CSS**: Tailwind CSS v4 +- **状态管理**: Pinia +- **国际化**: vue-i18n +- **图标**: @tabler/icons-vue +- **组件库**: FullCalendar, CropperJS, FilePond, flatpickr + +## 项目结构 + +``` +ops2/ +├── backend/ # Go 后端 +│ ├── api/ # API 路由定义 +│ ├── internal/ # 内部包 +│ │ ├── config/ # 配置管理 +│ │ ├── database/ # 数据库连接 +│ │ ├── handler/ # HTTP 处理器 +│ │ ├── middleware/# 中间件 +│ │ ├── repository/# 数据访问层 +│ │ └── service/ # 业务逻辑层 +│ ├── models/ # 数据模型 +│ ├── routers/ # 兼容性路由 +│ ├── pkg/ # 公共包 +│ └── main.go # 应用入口 +│ +├── frontend/ +│ └── ops_vue_js/ # Vue 3 前端(主力开发目录) +│ +└── DOC/ # 项目文档 +``` + +## 功能模块 + +- **用户认证**: 登录、注册、密码找回、Session 管理 +- **文件管理**: 图片/文件上传、下载、头像裁剪 +- **采购订单**: 订单创建、列表查看、费用明细 +- **日程排班**: FullCalendar 日历视图 +- **仓库管理**: 库存管理功能 + +## 快速开始 + +### 前置要求 + +- Go 1.21+ +- Node.js 18+ +- GCC (TDM-GCC for Windows) + +### 后端启动 + +```bash +fresh +``` + +服务默认运行在 http://localhost:8080 + +### 前端启动 + +```bash +cd frontend/ops_vue_js +npm install +npm run dev +``` + +## API 路由 + +### RESTful API v1 +- `GET /api/v1/` - API 根路径 +- `POST /api/v1/users/login` - 用户登录 +- `POST /api/v1/users/register` - 用户注册 +- `GET /api/v1/users/profile` - 获取用户信息 +- `POST /api/v1/files/upload` - 文件上传 +- `GET /api/v1/files/list` - 文件列表 +- `POST /api/v1/purchase/orders` - 创建采购订单 +- `GET /api/v1/purchase/orders` - 获取采购订单列表 + +### 兼容性 API +- `/api/users/*` - 用户相关 +- `/api/files/*` - 文件相关 +- `/api/purchase/*` - 采购相关 + +## 配置 + +后端配置文件位于 `./backend/data/config.yaml`: + +```yaml +server: + port: 8080 + mode: debug # debug / release + +database: + type: sqlite + path: ./data/ops.db +``` + +## 开发规范 + +### 后端架构 (分层) +``` +Handler → Service → Repository → Database +``` + +### 认证方式 +- 请求体中携带 `userCookieValue` 字段 +- 或使用 Authorization Bearer Token + +### 响应格式 +```json +{ + "code": "0", // 错误码,0 表示成功 + "message": "Success", + "data": {} +} +``` + +### 错误码 +- `0`: 成功 +- `-1`: 内部错误 +- `-2`: 参数错误 +- `-3`: 未登录 +- `-4`: 用户已存在 +- `-5`: 用户不存在 +- `-42`: 凭证错误 + +## 许可证 + +MIT License - 见 LICENSE 文件