【Lilishop商城】No1-1.业务了解+划分各模块逻辑

目录

A1.整体业务逻辑

 B1.模块整理

C1.运营后台

C2.店铺后台

C3.买方平台

B2.重点模块梳理图

C1.订单模块

C2.退货/退款模块(即售后模块)

C3.促销活动模块

A2.模块划分(自己思考的)

A3.数据结构划分(自己思考的)

B1.运营的用户管理

B2.店铺管理-店员管理-会员管理

B3.商品管理

B4.订单管理

B5.零散模块

C1.行政区划

C2.物流公司

C3.消息

C4.日志


A1.整体业务逻辑

结合着系统提供的三个演示系统和使用文档,抽时间把三个端的业务功能了解了一下,lilishop整个项目分为:运营后台、店铺后台、买方平台,各个平台的业务逻辑大多相关联。

 B1.模块整理

我用思维导图的方式整理了一下,并且把不懂的逻辑重点标了一下。

重点就是以下模块

C1.运营后台

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第1张图片

C2.店铺后台

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第2张图片

C3.买方平台

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第3张图片

B2.重点模块梳理图

虽然他提供了使用文档,但是描述的也不是特别清楚,其中的复杂的业务逻辑也没标注清楚,例如商品的状态流转、订单的流转状态、结算等,毕竟每个系统的状态不一定是一致的,所以需要先搞清楚,所以还是要把重点的业务流程画一下。

C1.订单模块

下面的是实物商品的订单状态流转,在开始前,需要先了解订单之间的关联:

一次付款生成一份交易单:包括本次付款的所有商品;

一份交易单根据店铺分为多个订单:每份订单包含本次交易下的一个店铺下的所有商品;

一份订单根据商品分为多个子订单:每份子订单包含当前订单下的一个商品;

注意哦,在当前商城中,如果退款单个子订单商品是不会影响当前订单的状态的。在某些商城的逻辑中是会影响的,比如说淘宝,在淘宝中购买多个商品,如果仅退款部分商品子订单,订单的状态是不会变得,但是退款全部商品子订单,订单就会变成退款中,退款成功后会变成交易关闭。

在本系统中,如果订单是待收货中退款的话,是不影响继续收货的,这也是不太精细的一点吧。

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第4张图片

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第5张图片

 PS:根据网上的逻辑,修改了一下本系统的订单流程,加了一个已关闭状态

 【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第6张图片

C2.退货/退款模块(即售后模块)

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第7张图片

C3.促销活动模块

这个模块流程不复杂,但是逻辑很复杂,涉及的东西太多了,所以也重点标一下

  1. 优惠券:店铺、平台都能创建
  2. 优惠券活动:平台能创建
  3. 积分商品:平台能添加商品,一个积分商品对应一个积分活动
  4. 满额活动:店铺能创建活动
  5. 秒杀:系统创建活动,店铺能添加商品
  6. 拼团:店铺能创建活动
  7. 砍价:平台能添加商品,一个砍价商品对应一个砍价活动

在这里面最重要的就是,付款前需要根据商品参加活动来计算付款值,付款后需要根据这些计算日后的结算值,如果中间退款退货还要根据这些进行积分等的回退值 。

A2.模块划分(自己思考的)

各个端的小模块可以单独思考,但是关联的模块就要合并思考,例如商品、订单、促销互动等模块。

当然单独小模块也不一定完全单独的哦,有些就是设置相关的就可以提前思考放一起。

我一开始大概的思考是分为这四个模块,有一些配置类也属于零散模块的,暂时没有列出来。

数据库结构也会根据模块以及业务进行相关联的。

【Lilishop商城】No1-1.业务了解+划分各模块逻辑_第8张图片

A3.数据结构划分(自己思考的)

这里我没有列的很详细,就只把最主要的逻辑列出来了

B1.运营的用户管理

用户管理这里和普通的一样,就是分为:用户、部门、菜单、角色,其中需要有用户-角色关联表、角色-菜单关联表、角色-部门关联表。

1.菜单是作为操作权限的,例如导航栏、按钮等;

2.这里仅操作权限,没有数据权限。所以角色与部门关联也是为了操作权限;(也有的系统是为了数据权限,可以看若依项目)

B2.店铺管理-店员管理-会员管理

先要知道,在本系统中店铺的创建人是店主,店主是需要先要有会员账号,也就是买方账号。而一个会员账号只能关联一个店铺,无论他是店主还是店员,都只能关联一个。

所以,要有店铺表、会员表、店员表,还有要部门表、角色表、菜单表,和角色-部门关联表、角色-菜单关联表。

其中店铺表里面要关联一个会员,店员表包含该店铺所有人的信息包括店主。

同时要加一个店铺详情表,因为店铺有很多附属信息,例如审核信息等,放一起会导致业务复杂,所以可以将信息拆分。

B3.商品管理

商品信息就太多,但是要注意一个主要的。要有商品表、商品sku表,一个商品包含多个商品sku信息。

其余的就根据业务管理分析即可。

例如商品分类,是由运营管理的,商品这里就关联个 id 就行。

但要在本系统中,商品分类这里的逻辑,商品分三级别,最后一的级别是会关联商品品牌、参数、规格的。

最后发布商品的时候,和在商品里面进行关联设置。注意一点有些只拿取数据设置就行,不用关联设置~~~~

B4.订单管理

首先说一下,购物车的信息存储在 redis 里面。购物车里面需要存储商品及商品sku,会员信息。

而下单之后就会生成交易表、订单表、子订单表,然后还包括售后表、投诉表、评论表,其中子订单表包含关联的订单表,订单表包含关联的交易表。售后表、投诉表、评论表包含关联的子订单表。

促销这一块儿,除了券活动以外,其余的促销活动都会包含商品sku信息。

优惠券表、券活动表、满减活动表、拼团表、秒杀表、砍价表、砍价参与表,最后会有促销商品表。

促销商品表用来存储促销活动关联的商品信息,而且要兼顾所有促销活动。

B5.零散模块

C1.行政区划

行政区划表,一开始就想用行政区划表就行,里面用区划编码定义唯一。但是如果是要看物流,这个可能就不够了。

C2.物流公司

物流表,直接就是一个物流公司表。

C3.消息

消息表,里面定义一个接收人和发送人。

C4.日志

日志表,里面定义操作人和操作内容。


剩下的的后面补充

你可能感兴趣的:(lilishop商城学习,spring,后端,java)