[release]: v1.7.0
This commit is contained in:
29
CHANGELOG.md
29
CHANGELOG.md
@@ -1,8 +1,35 @@
|
||||
# 更新日志
|
||||
|
||||
## V 1.7.0
|
||||
|
||||
*2020-02-15* 支持docker部署、售后管理、通知管理、数据库七天备份。
|
||||
|
||||
#### Bug 修复
|
||||
|
||||
* `小商城`后端接口部分存在水平越权漏洞
|
||||
* `小商城`验证码未超时仍会发送验证码
|
||||
* `小商城`显示管理员评论回复(#340 by sunyinggang)
|
||||
* `管理后台`管理员评论回复(#340 by sunyinggang)
|
||||
* `轻商城`添加收货地址返回不正确(#320 by kevinleeex)
|
||||
|
||||
#### 优化
|
||||
|
||||
* `管理后台`专题支持排序、批量删除
|
||||
* `基础系统`数据库四个表索引(#328 #330 #332 #334 by wtune)
|
||||
|
||||
#### 新特性
|
||||
|
||||
* `基础系统`支持docker部署(参考实现 #321 by yuana1)
|
||||
* `基础系统`自动备份7天数据到backup文件夹
|
||||
* `管理后台`通知中心和通知管理
|
||||
* `管理后台`登录页面增加版权内容
|
||||
* `管理后台`售后管理
|
||||
* `小商城`订单售后列表、售后详情、申请售后
|
||||
* `轻商城`实现账号注册功能(#324 by yelongbao)
|
||||
|
||||
## V 1.6.1
|
||||
|
||||
*2019-01-01*
|
||||
*2020-01-01*
|
||||
|
||||
#### Bug 修复
|
||||
|
||||
|
||||
@@ -76,7 +76,7 @@ litemall = Spring Boot后端 + Vue管理员前端 + 微信小程序用户前端
|
||||
* 商品详情、商品评价、商品分享
|
||||
* 购物车
|
||||
* 下单
|
||||
* 订单列表、订单详情
|
||||
* 订单列表、订单详情、订单售后
|
||||
* 地址、收藏、足迹、意见反馈
|
||||
* 客服
|
||||
|
||||
@@ -154,7 +154,7 @@ litemall = Spring Boot后端 + Vue管理员前端 + 微信小程序用户前端
|
||||
|
||||
## 开发计划
|
||||
|
||||
当前版本[v1.6.1](https://linlinjava.gitbook.io/litemall/changelog)
|
||||
当前版本[v1.7.0](https://linlinjava.gitbook.io/litemall/changelog)
|
||||
|
||||
目前项目开发中,存在诸多不足,以下是目前规划的开发计划。
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
* vue-router
|
||||
* axios
|
||||
* element
|
||||
* vue-element-admin 3.9.3
|
||||
* vue-element-admin 4.2.1
|
||||
* 其他,见package.json
|
||||
* 管理后台后端, 即litemall-admin-api模块
|
||||
* Spring Boot 2.x
|
||||
@@ -21,8 +21,6 @@
|
||||
* `改善`管理员登录页面打开慢,优化速度
|
||||
* `改善`地址优化,目前每一次点击都会请求后台,应该缓存已有的数据
|
||||
* `改善`vue和vue-element-admin等及时更新
|
||||
* `功能`系统数据字典功能
|
||||
* `功能`支持数据库备份
|
||||
|
||||
## 4.1 litemall-admin-api
|
||||
|
||||
|
||||
12
doc/api.md
12
doc/api.md
@@ -2,8 +2,6 @@
|
||||
|
||||
本项目前后端接口规范和接口文档。
|
||||
|
||||
本项目没有采用Swagger技术,开发者可以自行集成。
|
||||
|
||||
注意:
|
||||
> 1. 以下API部分基于nideshop开源项目的API设计;
|
||||
> 2. 以下API是参考API,可能不是很合理,欢迎开发者交流。
|
||||
@@ -417,9 +415,9 @@ API应该存在版本控制,以保证兼容性。
|
||||
|
||||
* 团购API完善
|
||||
|
||||
### 1.11 NO Swagger
|
||||
### 1.11 Not Like Swagger
|
||||
|
||||
暂不支持Swagger,基于以下考虑:
|
||||
本项目不是很接受Swagger,基于以下考虑:
|
||||
|
||||
* 前后端中立
|
||||
|
||||
@@ -440,7 +438,11 @@ API应该存在版本控制,以保证兼容性。
|
||||
如果使用Swagger,为了得到完整的文档,需要在每一个方法前面加上多个文档注解,文档越是详尽,则注解越多,
|
||||
造成代码不是很简洁。特别是具备代码属性的注解和Swagger文档注解混杂在一起,可能不是很好。
|
||||
|
||||
如果开发者需要Swagger,可以自行接入。
|
||||
当然,本项目也简单地配置了Swagger(见`WxSwagger2Configuration`和`AdminSwagger2Configuration`),
|
||||
在线Swagger文档链接:http://122.51.199.160:8080/swagger-ui.html
|
||||
|
||||
当然正如上文讨论,本项目不是很接受Swagger的理念,所以后端没有使用Swagger的相关文档注解,
|
||||
这也导致了Swagger接口文档的不具可读性。如果开发者需要,可以自行在后端补充Swagger注解。
|
||||
|
||||
## 2 商城API服务
|
||||
|
||||
|
||||
@@ -363,15 +363,48 @@ litemall_region表保存了行政区域信息,包括省级、市级、县级
|
||||
|
||||
* 401
|
||||
|
||||
用户可以`删除`、`去评价`、`再次购买`
|
||||
用户可以`删除`、`去评价`、`申请售后`、`再次购买`
|
||||
|
||||
* 402
|
||||
|
||||
用户可以`删除`、`去评价`、`再次购买`
|
||||
用户可以`删除`、`去评价`、`申请售后`、`再次购买`
|
||||
|
||||
#### 2.1.4.3 售后处理
|
||||
#### 2.1.4.3 申请售后
|
||||
|
||||
目前不支持退货售后相关业务。
|
||||
当用户确认收货或者系统自动确认收货以后,订单可以申请售后。
|
||||
目前仅支持订单整体售后,而不支持订单商品独立售后。
|
||||
这是因为:订单存在商品售价、优惠券减免、团购减免以及物流运费属性,
|
||||
如果要支持单个商品退款,那么存在一个需要解决的问题就是单个商品的
|
||||
退款金额如何计算。如果开发者这里考虑清楚,也可以参考当前代码实现
|
||||
订单商品独立售后
|
||||
|
||||
litemall_order表中存在`aftersale_status`字段,记录订单售后状态。
|
||||
而具体的售后记录则是litemall_aftersale表记录。
|
||||
|
||||
这里`type`字段表示当前售后类型,目前存在三种类型:
|
||||
|
||||
* 如果type=0,即“未收货退款”,通常是系统超时自动确认收货,而实际上用户没有收货,因此可以选择这个;
|
||||
* 如果type=1,即“无需退货退款”,通常是用户确认收货后申请售后,而管理员同意可以不需要退货,直接退款给用户;
|
||||
* 如果type=2,即“退货退款”,通常是用户确认收货后申请售后,管理员同意用户退货,当管理员收到货以后再退款给用户。
|
||||
|
||||
需要注意的是:当前实现中,如果是“退货退款”类型,那么管理员在进行退款以后,系统会自动恢复货品数量。
|
||||
这是因为管理员完成“退货退款”售后,说明管理员已经收到用户的退货。
|
||||
开发者可以改变这里的实现逻辑,例如采用独立的退货入库流程。
|
||||
|
||||
`status`字段表示当前售后状态,分别是:
|
||||
|
||||
* 如果status=0,未申请售后;
|
||||
* 如果status=1,用户申请售后,等待管理员审核;
|
||||
* 如果status=2,管理员审核通过,等待管理员退款;
|
||||
* 如果status=3,管理员已退款,售后完成;
|
||||
* 如果status=4,管理员审核不通过,售后完成;
|
||||
* 如果status=5,用户已取消售后,当用户在申请售后以后可以在管理员审核前申请取消。
|
||||
|
||||
这里需要补充的是:订单litemall_order表的`aftersale_status`字段,和订单售后litemall_aftersale
|
||||
表的`status`字段是完全一致的,方便前端分别查询订单状态和订单售后状态。
|
||||
|
||||
`amount`字段表示当前售后退款金额,正如前面所述当前仅支持订单整体售后,因此目前设计的退款金额是
|
||||
订单实际付款-订单运费。
|
||||
|
||||
#### 2.1.4.4 商品评价
|
||||
|
||||
@@ -386,11 +419,12 @@ litemall_region表保存了行政区域信息,包括省级、市级、县级
|
||||
|
||||
评论表litemall_comment保存评论相关的信息,其中最关键的是`type`字段和`value_id`字段。
|
||||
|
||||
这里`type`字段表示当前评论类型,目前存在三种类型:
|
||||
这里`type`字段表示当前评论类型,目前存在两种类型:
|
||||
|
||||
* 如果type=0,则当前评论是订单商品评论,value_id是订单商品ID;
|
||||
* 如果type=1,则当前评论是专题评论,value_id是专题ID;
|
||||
* 如果type=2,则当前评论是订单商品评论的回复,value_id是订单商品的评论ID。
|
||||
|
||||
`admin_content`字段则拥有记录管理后台管理员对用户评论的回复。
|
||||
|
||||
### 2.1.6 团购设计
|
||||
|
||||
|
||||
@@ -87,7 +87,7 @@ litemall是一个简单的商场系统,基于现有的开源项目,重新实
|
||||
* 购物车
|
||||
* 下单
|
||||
* 个人
|
||||
* 订单列表、订单详情
|
||||
* 订单列表、订单详情、订单售后
|
||||
* 地址列表、地址添加、地址删除
|
||||
* 收藏、足迹、关于
|
||||
|
||||
@@ -142,6 +142,7 @@ litemall是一个简单的商场系统,基于现有的开源项目,重新实
|
||||
* 团购活动
|
||||
* 系统管理
|
||||
* 管理员
|
||||
* 通知管理
|
||||
* 对象存储
|
||||
* 权限管理
|
||||
* 定时任务(待定)
|
||||
@@ -155,6 +156,9 @@ litemall是一个简单的商场系统,基于现有的开源项目,重新实
|
||||
* 用户统计
|
||||
* 订单统计
|
||||
* 商品统计
|
||||
* 个人
|
||||
* 通知中心
|
||||
* 密码修改
|
||||
|
||||
## 1.3 项目技术
|
||||
|
||||
@@ -303,11 +307,11 @@ Spring Boot技术栈参考以下文档或者项目:
|
||||
如果开发者运行litemall_schema.sql失败,可以打开该文件:
|
||||
```
|
||||
drop database if exists litemall;
|
||||
drop user if exists 'litemall'@'localhost';
|
||||
drop user if exists 'litemall'@'%';
|
||||
create database litemall default character set utf8mb4 collate utf8mb4_unicode_ci;
|
||||
use litemall;
|
||||
create user 'litemall'@'localhost' identified by 'litemall123456';
|
||||
grant all privileges on litemall.* to 'litemall'@'localhost';
|
||||
create user 'litemall'@'%' identified by 'litemall123456';
|
||||
grant all privileges on litemall.* to 'litemall'@'%';
|
||||
flush privilege
|
||||
```
|
||||
可以看到几个命令,用于创建数据库、用户和访问权限,因此开发者可以利用
|
||||
@@ -315,7 +319,7 @@ flush privilege
|
||||
|
||||
### 1.4.2 Spring Boot开发环境
|
||||
|
||||
1. 安装JDK8
|
||||
1. 安装JDK8(可以是Oracle JDK或者OpenJDK)
|
||||
2. 安装Maven
|
||||
3. 安装Git(可选)
|
||||
4. 安装IDEA Community,建议安装Maven插件和Git插件。
|
||||
@@ -955,7 +959,7 @@ sudo mysql_secure_installation
|
||||
> 这里很可能是开发者litemall-admin模块的`config/dep.env.js`或者`condig/prod.env.js`
|
||||
> 没有设置正确的管理后台后端地址,例如这里的`http://xxx.xxx.xxx.xxx:8080/admin`
|
||||
|
||||
#### 1.5.1.6 项目辅助脚本
|
||||
#### 1.5.1.6 deploy部署脚本
|
||||
|
||||
在前面的项目打包和项目部署中都是采用手动命令来部署。
|
||||
这里可以写一些脚本简化:
|
||||
@@ -992,6 +996,10 @@ cd litemall
|
||||
不过由于需要设置的信息会包含敏感安全信息,强烈建议开发者参考这里的deploy文件夹,
|
||||
然后实现自己的deploy文件夹,妥善处置外部配置文件和脚本中的敏感安全信息!!!
|
||||
|
||||
#### 1.5.1.7 docker部署脚本
|
||||
|
||||
本项目也简单实现了docker部署方案,具体可以看docker文件夹。
|
||||
|
||||
### 1.5.2 单机多服务部署方案
|
||||
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
|
||||
目前发现存在的一些问题:
|
||||
|
||||
* `缺失`商品评价中管理员回复功能,进一步地用户之间相互评价回复
|
||||
* `缺失`后台服务返回的token存在有效期,小商场应该自动刷新
|
||||
* `缺失`账号多次登录失败,应该小商城出现图片验证码限制,或者后台账号锁定
|
||||
* `改善`商品搜索中采用更好的搜索机制
|
||||
@@ -24,8 +23,6 @@
|
||||
* `改善`商品好评计算与显示,例如90%好评
|
||||
* `改善`商品的评论列表中显示评价的评论分数、商品规格
|
||||
* `改善`商品的评论列表中的图片点击可放大,同时用户评价的多个图片可以选择左右滑动查看。
|
||||
* `改善`当一些页面查询数据没有更新时,底部显示相应的提醒,例如“没有更多数据”。
|
||||
* `改善`个人页面中实现订单部件,显示用户订单数量,同时点击以后跳转到订单的相应页面。
|
||||
* `改善`商品的订单中支持订单号搜索功能
|
||||
* `改善`在一些内容比较多的页面中支持“顶部”功能
|
||||
|
||||
|
||||
Reference in New Issue
Block a user