-
Notifications
You must be signed in to change notification settings - Fork 33
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
15 changed files
with
1,190 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
import { EggAppConfig, PowerPartial } from 'egg'; | ||
const redisStore = require('cache-manager-ioredis'); | ||
|
||
export default (): any => { | ||
const config: PowerPartial<EggAppConfig> = {}; | ||
|
||
/** | ||
* 邮件推送配置 | ||
*/ | ||
config.mailer = { | ||
host: 'xxx host', | ||
port: 80, | ||
auth: { | ||
user: '[email protected]', | ||
pass: 'xxxxxxx', | ||
}, | ||
secure: false, | ||
}; | ||
|
||
// 高德开放平台应用Key | ||
config.amap = { | ||
key: 'xxxxxxxxxxxxxxxxxxxxx', | ||
}; | ||
|
||
// bull config | ||
config.bull = { | ||
default: { | ||
redis: { | ||
port: 6379, | ||
host: '127.0.0.1', | ||
password: '123456', | ||
db: 0, | ||
}, | ||
prefix: 'admin:task', | ||
}, | ||
}; | ||
|
||
// Root角色对应ID | ||
config.rootRoleId = 1; | ||
|
||
/** | ||
* typeorm 配置 | ||
* 文档:https://www.yuque.com/midwayjs/midway_v2/orm#njH6J | ||
*/ | ||
config.orm = { | ||
type: 'mysql', | ||
host: '127.0.0.1', | ||
port: 3306, | ||
username: 'root', | ||
password: '123456', | ||
database: 'sf-admin', | ||
synchronize: false, | ||
logging: true, | ||
// timezone: '+00:00', | ||
/** | ||
* JavaScript对数据库中int和bigint的区别对待: | ||
* 刚开始开发中,线下测试数据库id字段采用int,数据库SELECT操作返回的结果是Number,但是使用bigint,数据库返回的为String, | ||
* 初步猜想是因为bigint的值范围会超过Number,所以采用String。但是这样会对我们业务产生巨大影戏那个,一方面,DTO校验会无法通过,另一方面,问题1中的业务逻辑会受影响。 | ||
* 经过查找各方文档,解决方案是在数据库连接配置中配置: | ||
* "supportBigNumbers": false | ||
* 可以配置这个的原因是我们的业务ID距离Number的上线远远达不到,所以可以用这种方式让 | ||
* bigint也返回Number。 | ||
* 但是这样配置,TypeOrm插入操作的返回值中的identifiers字段中的id还是String,所以问题1中的处理方式也要对String进行parseInt操作。 | ||
*/ | ||
// supportBigNumbers: false, | ||
}; | ||
|
||
// midway cache | ||
config.cache = { | ||
store: redisStore, | ||
options: { | ||
host: '127.0.0.1', // default value | ||
port: 6379, // default value | ||
password: '123456', | ||
db: 0, | ||
ttl: 60, | ||
}, | ||
}; | ||
|
||
return config; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
version: "2.0" | ||
|
||
services: | ||
|
||
db: | ||
image: mysql:5.7.34 | ||
command: --default-authentication-plugin=mysql_native_password | ||
restart: always | ||
volumes: | ||
- ./mysql:/var/lib/mysql/ # ./mysql路径可以替换成自己的路径 | ||
- ../../sql/:/docker-entrypoint-initdb.d/ # 初始化的脚本 | ||
ports: | ||
- 3306:3306 | ||
environment: | ||
TZ: Asia/Shanghai | ||
MYSQL_ROOT_PASSWORD: 123456 | ||
MYSQL_DATABASE: sf-admin | ||
MYSQL_USER: sf-admin | ||
MYSQL_PASSWORD: 123456 | ||
|
||
redis: | ||
image: redis:alpine | ||
command: --requirepass "123456" | ||
restart: always | ||
ports: | ||
- 6379:6379 | ||
environment: | ||
TZ: Asia/Shanghai | ||
|
||
sfserver: | ||
image: qa894178522/sfmidwayadmin:rc | ||
restart: always | ||
depends_on: | ||
- db | ||
- redis | ||
environment: | ||
MYSQL_HOST: db | ||
MYSQL_PORT: 3306 | ||
MYSQL_USERNAME: sf-admin | ||
MYSQL_PASSWORD: 123456 | ||
MYSQL_DATABASE: sf-admin | ||
REDIS_HOST: redis | ||
REDIS_PORT: 6379 | ||
REDIS_PASSWORD: 123456 | ||
# 可选 | ||
MAILER_HOST: xxx | ||
MAILER_PORT: xxx | ||
MAILER_USER: xxx | ||
MAILER_PASS: xxx | ||
AMAP_KEY: xxx | ||
QINIU_ACCESSKEY: xxx | ||
QINIU_SECRETKEY: xxx | ||
QINIU_DOMAIN: xxx | ||
QINIU_BUCKET: xxx | ||
QINIU_ZONE: xxx # Zone_as0 | Zone_na0 | Zone_z0 | Zone_z1 | Zone_z2 | ||
QINIU_ACCESS_TYPE: public # or private | ||
|
||
sfvue: | ||
image: qa894178522/sfvueadmin:rc | ||
restart: always | ||
environment: | ||
TZ: Asia/Shanghai | ||
depends_on: | ||
- sfserver | ||
ports: | ||
- 7002:80 |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,236 @@ | ||
# 文档修订记录 | ||
|
||
| 日期 | 版本 | 说明 | 作者 | | ||
| :--------- | :----- | :--- | :----- | | ||
| 2020-08-21 | v1.0.0 | 创建 | 杨长源 | | ||
|
||
# 参考文献 | ||
|
||
https://blog.csdn.net/gglinux/article/details/68948901 | ||
|
||
https://www.zybuluo.com/stonezhou/note/1292262 | ||
|
||
http://www.csdeshang.com/home/dsmall/database.html | ||
|
||
# 数据模型实体属性 | ||
|
||
## sys_menu | ||
|
||
**表注释: 系统菜单** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| --------- | ------------ | ---- | ---- | ------------------------------- | | ||
| id | int(20) | 否 | | ID | | ||
| parent_id | int(20) | | | 父菜单ID | | ||
| name | varchar(255) | 否 | | 菜单名称 | | ||
| router | varchar(255) | | | 菜单地址 | | ||
| perms | varchar(255) | | | 权限标识 | | ||
| type | tinyint(4) | 否 | 0 | 类型,0:目录、1:菜单、2:按钮 | | ||
| icon | varchar(255) | | | 对应图标 | | ||
| order_num | int(11) | | 0 | 排序 | | ||
| view_path | varchar(255) | | | 视图地址,对应vue文件 | | ||
| keepalive | boolean | | true | 路由缓存 | | ||
| Is_show | boolean | | true | 是否显示在菜单栏 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ------ | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_department | ||
|
||
**表注释:系统部门** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| --------- | ------------ | ---- | ---- | ---------- | | ||
| id | int(20) | 否 | | ID | | ||
| parent_id | int(20) | | | 上级部门ID | | ||
| name | varchar(255) | 否 | | 部门名称 | | ||
| order_num | int(11) | | 0 | 排序 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_user | ||
|
||
**表注释:系统用户** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------------- | ------------ | ---- | ---- | ------------------------------------------ | | ||
| id | int(20) | 否 | | ID | | ||
| department_id | int(20) | 否 | | 部门编号 | | ||
| name | varchar(255) | 否 | | 姓名 | | ||
| username | varchar(255) | 否 | | 登录账号 | | ||
| password | varchar(255) | 否 | | 密码 | | ||
| psalt | varchar(32) | 否 | | 密码盐值(随机生成,每个用户对应一个盐值) | | ||
| nick_name | varchar(255) | | | 昵称 | | ||
| head_img | varchar(255) | | | 头像 | | ||
| email | varchar(255) | | | 邮箱 | | ||
| phone | varchar(20) | | | 手机号 | | ||
| remark | varchar(255) | | | 备注 | | ||
| status | tinyint(4) | | 1 | 状态:0:禁用,1:启用 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | -------- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
| UNIQUE | BTREE | 是 | 否 | username | | | 否 | | | ||
|
||
## sys_role | ||
|
||
**表注释:系统角色** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------- | ------------ | ---- | ---- | ------ | | ||
| id | int(20) | 否 | | ID | | ||
| user_id | varchar(255) | 否 | | 创建人 | | ||
| name | varchar(255) | 否 | | 名称 | | ||
| label | varchar(50) | 否 | | 标签 | | ||
| remark | varchar(255) | | | 备注 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ----- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
| UNIQUE | BTREE | 是 | 否 | label | | A | 否 | | | ||
| UNIQUE | BTREE | 是 | 否 | name | | A | 否 | | | ||
|
||
## sys_role_department | ||
|
||
**表注释:系统角色部门关系** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------------- | ------- | ---- | ---- | ------ | | ||
| id | int(20) | 否 | | ID | | ||
| role_id | int(20) | 否 | | 角色ID | | ||
| department_id | int(20) | 否 | | 部门ID | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_role_menu | ||
|
||
**表注释:系统角色菜单关系** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------- | ------- | ---- | ---- | ------ | | ||
| id | int(20) | 否 | | ID | | ||
| role_id | int(20) | 否 | | 角色ID | | ||
| menu_id | int(20) | 否 | | 菜单ID | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_user_role | ||
|
||
**表注释:系统用户角色关系** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------- | ------- | ---- | ---- | ------ | | ||
| id | int(20) | 否 | | ID | | ||
| user_id | int(20) | 否 | | 用户ID | | ||
| role_id | int(20) | 否 | | 角色ID | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_req_log | ||
|
||
**表注释:请求追踪日志表** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------------ | ------------ | ---- | ---- | ----------------------- | | ||
| id | int(20) | 否 | | ID | | ||
| ip | varchar(255) | | | ip | | ||
| user_id | int(20) | | | 请求用户的用户id | | ||
| params | varchar(255) | | | 参数 | | ||
| action | varchar(100) | | | 行为 | | ||
| method | varchar(15) | | | 请求方式,同http method | | ||
| status | int | | | 请求状态码 | | ||
| consume_time | int | | 0 | 响应时间 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_login_log | ||
|
||
**表注释:登录日志表** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------- | ------------ | ---- | ---- | ---------------------------- | | ||
| id | int(20) | 否 | | ID | | ||
| user_id | int(20) | | | 登录的用户id | | ||
| ip | varchar(255) | | | 登录ip | | ||
| time | datetime | | | 登陆时间(未使用,保留字段) | | ||
| ua | varchar(500) | | | user-agent | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
## sys_task | ||
|
||
**表注释:系统任务表** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ---------- | ------------ | ---- | ---- | ------------------------------------- | | ||
| id | int(20) | 否 | | ID | | ||
| name | varchar(50) | 否 | | 任务名称 | | ||
| service | varchar(255) | 否 | | 需要执行的service | | ||
| type | tinyint(4) | 否 | 0 | 任务模式:0为cron,1为时间间隔 | | ||
| status | tinyint(1) | | 0 | 任务状态:0为停止,1为运行 | | ||
| start_time | datetime | | | 任务开始时间,type为0时生效 | | ||
| end_time | datetime | | | 任务结束时间,type为0时生效 | | ||
| limit | int | | 0 | 最大执行次数,小于或者等于0则不限次数 | | ||
| cron | varchar(255) | | | cron表达式,type为0时生效 | | ||
| every | int | | | 执行间隔,type为1时生效 | | ||
| data | text | | | 传入数据 | | ||
| job_opts | text | | | bull job options | | ||
| remark | varchar(255) | | | 备注 | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
| UNIQUE | BTREE | 是 | 否 | name | | A | 否 | | | ||
|
||
## sys_task_log | ||
|
||
**表注释:任务日志表** | ||
|
||
| 字段 | 类型 | 空 | 默认 | 注释 | | ||
| ------- | ---------- | ---- | ---- | ------------------------------------- | | ||
| id | int(20) | 否 | | id | | ||
| task_id | int(20) | 否 | | 对应任务id | | ||
| status | Tinyint(4) | 否 | 0 | 任务状态:0为失败,1为成功 | | ||
| detail | Text | | | 任务详情 | | ||
| consume_time | int | | 0 | 任务完成耗时 (ms) | | ||
|
||
**索引** | ||
|
||
| 键名 | 类型 | 唯一 | 紧凑 | 字段 | 基数 | 排序规则 | 空 | 注释 | | ||
| ------- | ----- | ---- | ---- | ---- | ---- | -------- | ---- | ---- | | ||
| PRIMARY | BTREE | 是 | 否 | id | 0 | A | 否 | | | ||
|
||
|
Oops, something went wrong.