|
|
# 价值系统后台管理服务
|
|
|
项目使用框架
|
|
|
- http框架:beego
|
|
|
- orm框架:go-pg
|
|
|
- 数据存储:postgresql
|
|
|
- 项目结构分层:基于端口适配器架构(六边形架构)实现领域驱动设计(DDD领域驱动)
|
|
|
|
|
|
项目目录结构
|
|
|
```
|
|
|
├─conf 项目配置文件
|
|
|
├─deploy 项目部署文件
|
|
|
├─document 接口文档(导入yapi)
|
|
|
├─test 业务接口自动化测试
|
|
|
├─document 接口文档
|
|
|
├─test 业务接口集成测试
|
|
|
├─pkg
|
|
|
│ ├─application 应用层(薄层)
|
|
|
│ │ ├─employee 企业员工
|
|
|
│ │ ├─task 任务(状态机)
|
|
|
│ ├─application 应用层
|
|
|
│ │ ├─employee 员工
|
|
|
│ │ ├─task 任务
|
|
|
│ │ ├─suMoney 素币
|
|
|
│ │ ├─statistics 统计
|
|
|
│ │ ├─notification 消息通知
|
|
|
│ │ ├─customerValue 客户价值(任务配置项)
|
|
|
│ │ ├─projectBelong 项目归属(任务配置项)
|
|
|
│ │ ├─taskNature 任务性质(任务配置项)
|
|
|
│ │ ├─unifiedUserCenter 统一用户中心适配(用于同步员工账户信息)
|
|
|
│ │ ├─customerValue 客户价值
|
|
|
│ │ ├─projectBelong 项目归属
|
|
|
│ │ ├─taskNature 任务性质
|
|
|
│ │ ├─unifiedUserCenter 统一用户中心适配
|
|
|
│ │ ├─event 注册领域业务事件订阅以及处理
|
|
|
│ │ └─factory 工厂类(工厂方法,用于组装复杂对象或者聚合)
|
|
|
│ │ └─factory 工厂类,组装复杂对象或者聚合
|
|
|
│ ├─domain 领域层(核心业务逻辑建模,实体,聚合根)
|
|
|
│ │ ├─event/
|
|
|
│ │ ├─service/ 领域层服务(非CURD类型的特殊操作)
|
|
|
│ │ ├─domain... 领域模型(具体的模型类实现)
|
|
|
│ │ ├─event/ 领域事件
|
|
|
│ │ ├─service/ 领域服务
|
|
|
│ │ ├─domain... 领域对象
|
|
|
│ │ └─task 任务状态机实现
|
|
|
│ ├─infrastructure 基础设施层
|
|
|
│ │ ├─dao 数据库操作(数据访问对象)
|
|
|
│ │ ├─domain_service 领域服务数据库操作(支持领域的基础设施层服务)
|
|
|
│ │ ├─pg postgresql 数据库模型定义
|
|
|
│ │ ├─repository 实体或者聚合根模型仓储(对应domain定义的仓储接口)
|
|
|
│ │ └─service_gateway 服务网关,其他业务接口或者第三方服务接口网关(微服务)
|
|
|
│ ├─constant 变量配置(数据库等)
|
|
|
│ │ ├─dao 数据访问对象
|
|
|
│ │ ├─domain_service 领域服务具体实现
|
|
|
│ │ ├─pg 数据模型定义
|
|
|
│ │ ├─repository 实体或者聚合根模型仓储
|
|
|
│ │ └─service_gateway 微服务网关,其他业务接口或者第三方服务接口网关
|
|
|
│ ├─constant 项目配置常量设置
|
|
|
│ ├─log 日志模块
|
|
|
│ └─port 端口层
|
|
|
│ └─port 用户接入层
|
|
|
│ └─beego beego框架接入实现http接口
|
|
|
└─logs
|
|
|
└─logs 日志文件
|
|
|
```
|
|
|
|
|
|
主要业务模块
|
|
|
- 企业员工模块(application/employee)
|
|
|
- 素币模块(application/suMoney)
|
|
|
- 任务模块(application/task)
|
|
|
- 统计模块(application/statistics)
|
|
|
- 消息通知模块(application/notification)
|
|
|
- 适配统一用户中心模块(application/unifiedUserCenter)
|
|
|
|
|
|
# 安装与使用
|
|
|
[价值系统代码仓库地址](http://gitlab.fjmaimaimai.com/linmadan/mmm-worth)
|
|
|
|
|
|
新建开发分支,如:xxx-dev,下载相应分支代码
|
|
|
```
|
|
|
git clone -b xxx-dev http://gitlab.fjmaimaimai.com/linmadan/mmm-worth.git
|
|
|
```
|
|
|
安装项目依赖:
|
|
|
```
|
|
|
go mod tidy
|
|
|
```
|
|
|
启动项目
|
|
|
```
|
|
|
bee run
|
|
|
``` |
...
|
...
|
|