125 lines
2.6 KiB
Markdown
125 lines
2.6 KiB
Markdown
# 4 litemall管理后台
|
||
|
||
项目技术架构:
|
||
|
||
* 后台管理前端,即litemall-admin模块
|
||
* vue
|
||
* vuex
|
||
* vue-router
|
||
* axios
|
||
* element
|
||
* vue-element-admin
|
||
* 其他,见package.json
|
||
* 后台管理后端, 即litemall-admin-api模块
|
||
* Spring Boot 1.5.10
|
||
* Spring MVC
|
||
|
||
目前存在的问题:
|
||
|
||
* `缺失`支持微信登录
|
||
* `缺失`首页中实现一些小组件,同时点击能够跳转相应页面
|
||
* `缺失`商品评价中管理员回复功能
|
||
* `缺失`支持导出表所有数据
|
||
* `改善`管理员登录页面打开慢,优化速度
|
||
* `改善`地址优化,目前每一次点击都会请求后台,应该缓存已有的数据
|
||
* `改善`vue和vue-element-admin等及时更新
|
||
* `功能`系统角色和权限
|
||
* `功能`系统日志功能
|
||
* `功能`系统数据字典功能
|
||
* `功能`系统栏目管理功能
|
||
* `功能`支持国际化
|
||
* `功能`支持数据库备份
|
||
|
||
## 4.1 litemall-admin-api
|
||
|
||
本节介绍管理后台的后台服务模块。
|
||
|
||
### 4.1.1 授权服务
|
||
|
||
|
||
|
||
|
||
### 4.1.16 安全
|
||
|
||
#### 4.1.16.1 Token
|
||
|
||
用户登录成功以后,后端会返回`token`,之后用户的请求都会携带token。
|
||
|
||
目前token的失效和跟新机制没有涉及。
|
||
|
||
#### 4.1.16.2 CROS
|
||
|
||
如果litemall-admin-api不配置CROS,则Spring Boot会失败。
|
||
|
||
#### 4.1.16.3 账号密码加盐
|
||
|
||
如果是微信登录,那么无需账号和密码。
|
||
|
||
而如果用户采用了账号和密码的形式登录,那么后端需要把用户密码加盐。
|
||
|
||
#### 4.1.16.4 限制登录
|
||
|
||
如果采用账号密码登录,那么登录失败一定次数,应该限制登录。
|
||
|
||
进一步地,如果项目启用了短信功能,应该短信提醒用户,防止他人登录。
|
||
|
||
目前这里没有实现,仅列出。
|
||
|
||
### 4.1.17 定时任务
|
||
|
||
### 4.1.18 并发控制
|
||
|
||
参考`2.2.8 乐观锁`
|
||
|
||
当乐观锁更新失败时采用多次尝试方案。
|
||
|
||
### 4.1.19 事务管理
|
||
|
||
### 4.1.20 开发技巧
|
||
|
||
当小商城后台服务开发中因为测试或者debug可能需要经常性重启应用,此时
|
||
一旦重启,将导致小商场的小程序段的token失效,因此要求用户再次登录。
|
||
这里,介绍一个小技巧:
|
||
开发时,
|
||
|
||
|
||
## 4.2 litemall-admin
|
||
|
||
本节介绍管理后台的前端模块。
|
||
|
||
litemall-admin模块的代码基于[vue-element-admin](https://github.com/PanJiaChen/vue-element-admin)
|
||
|
||
### 4.2.1
|
||
|
||
### 4.2.2
|
||
|
||
### 4.2.3
|
||
|
||
### 4.2.4
|
||
|
||
### 4.2.5
|
||
|
||
### 4.2.6
|
||
|
||
### 4.2.7
|
||
|
||
### 4.2.8
|
||
|
||
### 4.2.9
|
||
|
||
### 4.2.10 系统基础功能
|
||
|
||
#### 4.2.10.1 数据字典
|
||
|
||
#### 4.2.10.2 角色权限
|
||
|
||
#### 4.2.10.3 国际化
|
||
|
||
#### 4.2.10.4 菜单
|
||
|
||
#### 4.2.10.5 日志
|
||
|
||
|
||
## 4.3 开发新组件
|
||
|
||
这里介绍开发一个新的组件的流程。 |