# ipsservice **Repository Path**: huchl91/ipsservice ## Basic Information - **Project Name**: ipsservice - **Description**: 账单管理系统 - **Primary Language**: Python - **License**: MulanPSL-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-11 - **Last Updated**: 2026-03-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # IPSService ## 项目概述 IPSService 是一个企业管理系统,主要用于管理企业的合同、交付和验证流程。项目采用前后端分离架构,前端基于 Vue 3 构建,后端基于 Django 构建,使用 Docker 容器化部署。 ## 技术栈 ### 前端 - **框架**:Vue 3 - **构建工具**:Vite - **路由**:Vue Router - **HTTP 客户端**:Axios ### 后端 - **框架**:Django 4.2.21 - **API 框架**:Django REST Framework - **认证**:JWT (JSON Web Token) - **数据库**:SQLite3 (默认,可配置为其他数据库) ### 部署 - **容器化**:Docker - **Web 服务器**:Nginx - **进程管理**:Supervisor ## 项目结构 ``` ipsservice/ ├── ips-frontend/ # 前端应用 ├── ips-server/ # 后端应用 ├── nginx/ # Nginx 配置 ├── docker-compose.yml # Docker 部署配置 ├── supervisord.conf # 进程管理配置 └── LICENSE # 许可证文件 ``` ## 核心功能 - **合同管理**:合同的创建、查看、编辑和删除 - **交付管理**:交付单的创建、查看、编辑和删除 - **验证管理**:验证单的创建、查看、编辑和删除 - **用户认证**:基于 JWT 的用户认证系统 ## 项目特点 - **前后端分离**:清晰的职责划分,便于团队协作 - **容器化部署**:使用 Docker 简化部署流程 - **完善的认证系统**:基于 JWT 的安全认证 - **模块化设计**:按功能模块划分,易于扩展 - **性能优化**:Nginx 和 Django 配置优化 - **安全配置**:多种安全措施保障系统安全 - **响应式设计**:适配不同设备的用户界面 ## 常见问题 ### Q: 如何修改数据库配置? A: 修改 `ips-server/.env` 文件中的数据库相关配置项,支持 SQLite3、PostgreSQL、MySQL 等数据库。 ### Q: 如何添加新的功能模块? A: 在 `ips-server/apps/` 目录下创建新的应用,然后在 `ips/settings.py` 中注册该应用。 ### Q: 如何修改前端 API 基础路径? A: 修改 `ips-frontend/src/utils/http/axios.js` 文件中的 `baseURL` 配置。 ### Q: 如何查看应用日志? A: 日志文件位于 `ips-server/logs/` 目录,或者通过 Docker 命令查看容器日志:`docker logs ips-app`。 ## 更新日志 ### v1.0.0 (2026-03-17) - 初始版本 - 实现合同管理功能 - 实现交付管理功能 - 实现验证管理功能 - 实现用户认证系统 - 配置 Docker 部署环境 ## 快速开始 ### 环境要求 - Docker - Docker Compose ### 部署步骤 1. **克隆项目** ```bash git clone cd ipsservice ``` 2. **构建和启动服务** ```bash docker-compose up -d --build ``` 3. **初始化数据库** ```bash docker exec -it ips-app python /app/ips-server/manage.py migrate ``` 4. **创建超级用户** ```bash docker exec -it ips-app python /app/ips-server/manage.py createsuperuser ``` 5. **访问服务** - 前端应用:http://localhost:9000 - Django 管理后台:http://localhost:8000/admin - API 文档:http://localhost:8000/api/docs ## 开发指南 ### 前端开发 1. **进入前端目录** ```bash cd ips-frontend ``` 2. **安装依赖** ```bash npm install ``` 3. **开发模式运行** ```bash npm run dev ``` 4. **构建生产版本** ```bash npm run build ``` ### 后端开发 1. **进入后端目录** ```bash cd ips-server ``` 2. **安装依赖** ```bash pip install -r requirements.txt ``` 3. **运行开发服务器** ```bash python manage.py runserver ``` 4. **运行测试** ```bash python manage.py test ``` ## 配置说明 ### 环境变量 后端环境变量配置位于 `ips-server/.env` 文件,主要配置项包括: - `DJANGO_SECRET_KEY` - Django 密钥 - `DJANGO_DEBUG` - 调试模式 - `DJANGO_ALLOWED_HOSTS` - 允许的主机 - `DJANGO_DB_ENGINE` - 数据库引擎 - `DJANGO_DB_NAME` - 数据库名称 ### Nginx 配置 Nginx 配置位于 `nginx/nginx.conf` 文件,主要配置项包括: - 前端静态文件服务 - API 请求代理 - 媒体文件服务 - 性能优化和安全配置 ### 进程管理配置 进程管理配置位于 `supervisord.conf` 文件,主要配置项包括: - 后端服务进程 - Nginx 进程 - 日志配置 ## API 接口 ### 认证接口 - `POST /api/token/` - 获取访问令牌 - `POST /api/token/refresh/` - 刷新访问令牌 ### 合同管理接口 - `GET /api/contracts/` - 获取合同列表 - `POST /api/contracts/` - 创建合同 - `GET /api/contracts/{id}/` - 获取合同详情 - `PUT /api/contracts/{id}/` - 更新合同 - `DELETE /api/contracts/{id}/` - 删除合同 ### 交付管理接口 - `GET /api/deliveries/` - 获取交付单列表 - `POST /api/deliveries/` - 创建交付单 - `GET /api/deliveries/{id}/` - 获取交付单详情 - `PUT /api/deliveries/{id}/` - 更新交付单 - `DELETE /api/deliveries/{id}/` - 删除交付单 ### 验证管理接口 - `GET /api/verifications/` - 获取验证单列表 - `POST /api/verifications/` - 创建验证单 - `GET /api/verifications/{id}/` - 获取验证单详情 - `PUT /api/verifications/{id}/` - 更新验证单 - `DELETE /api/verifications/{id}/` - 删除验证单 ## 贡献指南 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request ## 许可证 [MIT License](LICENSE) ## 联系方式 如有问题或建议,请联系项目维护者。