docs for CRM
This commit is contained in:
BIN
docs/01-requirement/CRM Product Overview.pptx
Normal file
BIN
docs/01-requirement/CRM Product Overview.pptx
Normal file
Binary file not shown.
BIN
docs/01-requirement/软件开发需求文档v0.2.docx
Normal file
BIN
docs/01-requirement/软件开发需求文档v0.2.docx
Normal file
Binary file not shown.
26
docs/02-design/架构模型.md
Normal file
26
docs/02-design/架构模型.md
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
后端(Java + Spring Boot)
|
||||||
|
1. Spring Boot:使用Spring Boot框架来简化配置和开发。Spring Boot提供了许多开箱即用的功能,如依赖注入、数据访问、事务管理等。
|
||||||
|
2. Spring Data JPA:使用Spring Data JPA来简化数据库操作。它提供了对MySQL数据库的强大支持,并且可以通过简单的接口定义来实现复杂的查询。
|
||||||
|
3. 安全性:使用Spring Security来实现用户认证和授权。可以结合JWT(JSON Web Token)来管理用户会话。
|
||||||
|
4. RESTful API:设计和实现RESTful API,提供前端所需的数据接口。使用Spring MVC来处理HTTP请求和响应。
|
||||||
|
|
||||||
|
前端(Vue.js)
|
||||||
|
1. 组件化开发:使用Vue.js的组件化开发模式,将页面拆分为多个可复用的组件,提升代码的可维护性和可读性。
|
||||||
|
2. 状态管理:使用Vuex来管理应用的全局状态,确保不同组件之间的数据同步。
|
||||||
|
3. 路由管理:使用Vue Router来管理前端路由,实现单页面应用(SPA)的导航。
|
||||||
|
4. API调用:使用Axios库来与后端的RESTful API进行通信,处理数据的获取和提交。
|
||||||
|
|
||||||
|
数据库(MySQL)
|
||||||
|
1. 数据库设计:根据业务需求设计合理的数据库表结构,确保数据的完整性和一致性。常见的表包括用户表、角色表、权限表、计费记录表等。
|
||||||
|
2. 索引优化:为常用的查询字段添加索引,提高查询性能。
|
||||||
|
3. 备份和恢复:定期备份数据库,确保数据的安全性和可恢复性。
|
||||||
|
|
||||||
|
示例架构图
|
||||||
|
+---------------------+ +---------------------+ +---------------------+
|
||||||
|
| Presentation | | Business Logic | | Data Access |
|
||||||
|
| Layer | | Layer | | Layer |
|
||||||
|
|---------------------| |---------------------| |---------------------|
|
||||||
|
| - Vue.js | | - Spring Boot | | - MySQL |
|
||||||
|
| - HTML/CSS/JS | | - Spring Data JPA | | - ORM (Hibernate) |
|
||||||
|
| - Vue Router | | - Spring Security | | - SQL |
|
||||||
|
+---------------------+ +---------------------+ +---------------------+
|
||||||
36
docs/02-design/架构选型比较.md
Normal file
36
docs/02-design/架构选型比较.md
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
开发语言
|
||||||
|
|
||||||
|
1. Java:适用于大型企业级应用,具有丰富的生态系统和强大的社区支持。
|
||||||
|
2. Python:简洁易学,适合快速开发和原型设计,拥有丰富的库和框架。
|
||||||
|
3. Golang:高性能,适合构建高并发和高可用性的系统。
|
||||||
|
4. C++:适用于需要高性能和低级别系统控制的应用。
|
||||||
|
|
||||||
|
系统架构
|
||||||
|
1.
|
||||||
|
三层架构:
|
||||||
|
• 表示层(Presentation Layer):负责用户界面的展示和用户交互。可以使用前端框架如React、Vue.js等。
|
||||||
|
|
||||||
|
• 业务逻辑层(Business Logic Layer):处理具体的业务逻辑。可以使用Spring Boot(Java)、Django(Python)等框架。
|
||||||
|
|
||||||
|
• 数据访问层(Data Access Layer):负责与数据库的交互。常用的数据库包括MySQL、PostgreSQL等。
|
||||||
|
|
||||||
|
2.
|
||||||
|
微服务架构:
|
||||||
|
• 将系统拆分为多个独立的服务,每个服务负责特定的功能,如用户管理服务、计费服务等。
|
||||||
|
|
||||||
|
• 使用Docker和Kubernetes进行容器化和编排,确保系统的可扩展性和高可用性。
|
||||||
|
|
||||||
|
3.
|
||||||
|
RBAC(基于角色的访问控制):
|
||||||
|
• 实现用户权限管理时,采用RBAC模型,通过角色来管理用户权限。
|
||||||
|
|
||||||
|
• 用户-角色-权限的关系可以通过数据库表进行管理,确保权限的灵活配置和扩展。
|
||||||
|
|
||||||
|
示例架构图
|
||||||
|
+---------------------+ +---------------------+ +---------------------+
|
||||||
|
| Presentation | | Business Logic | | Data Access |
|
||||||
|
| Layer | | Layer | | Layer |
|
||||||
|
|---------------------| |---------------------| |---------------------|
|
||||||
|
| - React/Vue.js | | - Spring Boot | | - MySQL/PostgreSQL |
|
||||||
|
| - HTML/CSS/JS | | - Django | | - ORM (Hibernate) |
|
||||||
|
+---------------------+ +---------------------+ +---------------------+
|
||||||
Reference in New Issue
Block a user