ソースを参照

[release]: v1.7.0

Junling Bu 5 年 前
コミット
0f2caa4a56
7 ファイル変更92 行追加26 行削除
  1. 28 1
      CHANGELOG.md
  2. 2 2
      README.md
  3. 1 3
      doc/admin.md
  4. 7 5
      doc/api.md
  5. 40 6
      doc/platform.md
  6. 14 6
      doc/project.md
  7. 0 3
      doc/wxmall.md

+ 28 - 1
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 修复
 

+ 2 - 2
README.md

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

+ 1 - 3
doc/admin.md

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

+ 7 - 5
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服务
 

+ 40 - 6
doc/platform.md

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

+ 14 - 6
doc/project.md

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

+ 0 - 3
doc/wxmall.md

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