[release]: v1.7.0

This commit is contained in:
Junling Bu
2020-02-15 19:48:22 +08:00
parent 6d35c40efc
commit 0f2caa4a56
7 changed files with 92 additions and 26 deletions

View File

@@ -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 修复

View File

@@ -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)
目前项目开发中,存在诸多不足,以下是目前规划的开发计划。

View File

@@ -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

View File

@@ -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服务

View File

@@ -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 团购设计

View File

@@ -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 单机多服务部署方案

View File

@@ -12,7 +12,6 @@
目前发现存在的一些问题:
* `缺失`商品评价中管理员回复功能,进一步地用户之间相互评价回复
* `缺失`后台服务返回的token存在有效期小商场应该自动刷新
* `缺失`账号多次登录失败,应该小商城出现图片验证码限制,或者后台账号锁定
* `改善`商品搜索中采用更好的搜索机制
@@ -24,8 +23,6 @@
* `改善`商品好评计算与显示例如90%好评
* `改善`商品的评论列表中显示评价的评论分数、商品规格
* `改善`商品的评论列表中的图片点击可放大,同时用户评价的多个图片可以选择左右滑动查看。
* `改善`当一些页面查询数据没有更新时,底部显示相应的提醒,例如“没有更多数据”。
* `改善`个人页面中实现订单部件,显示用户订单数量,同时点击以后跳转到订单的相应页面。
* `改善`商品的订单中支持订单号搜索功能
* `改善`在一些内容比较多的页面中支持“顶部”功能