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

news2025/1/13 19:59:05

目录

A1.整体业务逻辑

 B1.模块整理

C1.运营后台

C2.店铺后台

C3.买方平台

B2.重点模块梳理图

C1.订单模块

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

C3.促销活动模块

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

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

B1.运营的用户管理

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

B3.商品管理

B4.订单管理

B5.零散模块

C1.行政区划

C2.物流公司

C3.消息

C4.日志


A1.整体业务逻辑

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

 B1.模块整理

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

重点就是以下模块

C1.运营后台

C2.店铺后台

C3.买方平台

B2.重点模块梳理图

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

C1.订单模块

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

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

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

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

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

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

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

 

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

C3.促销活动模块

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

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

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

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

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

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

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

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

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

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

B1.运营的用户管理

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

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

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

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

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

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

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

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

B3.商品管理

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

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

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

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

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

B4.订单管理

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

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

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

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

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

B5.零散模块

C1.行政区划

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

C2.物流公司

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

C3.消息

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

C4.日志

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


剩下的的后面补充

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/24421.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法设计与分析 SCAU11079 可以移动的石子合并(优先做)

11079 可以移动的石子合并(优先做) 时间限制:1000MS 代码长度限制:10KB 提交次数:25 通过次数:9 题型: 编程题 语言: G;GCC;VC;JAVA Description 有n堆石子形成一行(a1,a2,…,an,ai为第i堆石子个数),现要将石子合并成一堆&…

Android App开发手机阅读中贝塞尔曲线的原理讲解及实现波浪起伏动画实战(附源码和演示视频 可直接使用)

需要图片集和源码请点赞关注收藏后评论区留言~~~ 一、贝塞尔曲线的原理 贝塞尔曲线是一种用于二维图形的数学曲线。贝塞尔曲线由节点和线段构成,其中节点是可拖动的支点,而线段彷佛有弹性的牛皮筋。它除了起点和终点之外,不再描绘中间的折现…

嵌入式(驱动开发)(中断处理)

一、什么是中断 一种硬件上的通知机制,用来通知CPU发生了某种需要立即处理的事件 分为: 内部中断 CPU执行程序的过程中,发生的一些硬件出错、运算出错事件(如分母为0、溢出等等),不可屏蔽外部中断 外设发…

SpringBoot怎么整合第三方缓存技术/EhCache缓存技术使用以及Redis缓存技术使用怎么在SpringBoot中使用

写在前面: 继续记录自己的SpringBoot学习之旅,这次是SpringBoot应用相关知识学习记录。若看不懂则建议先看前几篇博客,详细代码可在我的Gitee仓库SpringBoot克隆下载学习使用! 3.5 整合第三方技术 3.5.1 缓存 3.5.1.1 介绍 缓…

2022/11/21[指针] 多维数组与指针的联系

1、指向数组元素的指针变量 #include<stdio.h> int main() {int* p;int a[3][4] { {1,2,3,4},{5,6,7,8},{9,10,11,12} };int i, j;//将第0行第0列的地址赋给pfor (p a[0]; p < a[0] 12; p)//注意是a[0]{if ((p - a[0]) % 4 0)printf("\n");printf("…

java--Lambda(2)表达式语法

文章目录0 写在前面1 Lambda 表达式的五种形式1.1 不包含参数&#xff1a;1.2 包含一个参数&#xff1a;1.3 有多个参数1.4 表达式主体是不是一个代码块1.5 不声明参数类型2 写在末尾0 写在前面 最基本的 Lambda 表达式&#xff0c;它由三部分组成具体格式是这样子的&#xff…

【Py】使用flask-apscheduler动态调整作业参数(附源码)

之前的项目常使用Apscheduler进行定时任务调度&#xff0c;但最近想通过接口对这些任务进行动态调整&#xff0c;比如调整任务启停、调整任务执行时间、间隔时间等等 flask-apscheduler这个基于flask的库能够满足上面的需求&#xff0c;而且由于基于flask&#xff0c;所以我常…

查题校园免费题库接口

查题校园免费题库接口 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 查题校园题库&#xff1a;查题校园题库后台&#xff08;点…

ButterKnife依赖注入框架源码解析

BuffterKnife 采用 注解 APT技术 APT&#xff1a;Annotation Processor tool 注解处理器&#xff0c;是javac的一个工具&#xff0c;每个处理器都是继承于AbstractProcessor 注解处理器是运行在自己的java虚拟机中 APT如何生成字节码文件&#xff1a; Annotation Processing 不…

李立宗《讲给入门者的深度学习》

14天学习训练营导师课程&#xff1a; 李立宗《讲给入门者的深度学习》 一、什么是深度学习&#xff1f; 1、传统方法、机器学习、深度学习的区别&#xff1f; 以取暖为例&#xff0c;来说明三者的不同之处。 传统方法&#xff1a;通过火炉生火&#xff0c;需要生火、添柴、…

公众号免费题库使用

公众号免费题库使用 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 题库&#xff1a;题库后台&#xff08;点击跳转&#xff09;…

Python实现点选验证码识别, 模拟登陆小破站并自动发弹幕

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 开发环境: Python 3.8 Pycharm 2021.2 谷歌浏览器 谷歌驱动 模块使用: selenium >>> pip install selenium3.141.0 指定版本安装 time 打码平台 如果安装python第三方模块: win R 输入 cmd 点击确定, 输入…

【白话科普】从“熊猫烧香”聊聊计算机病毒

大家还记得2006年在网络上肆虐的“熊猫烧香”病毒吗&#xff1f; 虽然图标是一只小熊猫举着三根香&#xff0c;但是它是一款拥有自动传播、自动感染硬盘能力和强大的破坏能力的病毒&#xff0c;它不但能感染系统中exe&#xff0c;com&#xff0c;pif&#xff0c;src&#xff0c…

STM32实战总结:HAL之I2C

I2C基础知识参考&#xff1a; 嵌入式常见接口协议总结_路溪非溪的博客-CSDN博客 电路图 扩展的I2C接口&#xff0c;可以连接支持I2C的设备。常见于传感器等。 参考手册 目前大部分MCU都带有IIC总线接口&#xff0c;STM32F1也不例外。但是这里我们不使用STM32F1的硬件IIC&#x…

Linux查看磁盘、文件系统、文件夹、文件大小的命令(lsblk、df、du、ll)

记录&#xff1a;325 场景&#xff1a;在CentOS 7.9操作系统上&#xff0c;使用lsblk命令查看磁盘大小和磁盘挂载情况&#xff1b;使用df查看文件系统大小和挂载情况&#xff1b;使用du命令查看文件夹(目录)大小&#xff1b;使用ll和ls查看文件大小。 版本&#xff1a; 操作…

XXL-JOB任务有效期支持实现方案

概述 在做数据产品或平台系统时&#xff0c;经常会遇到类似如下截图中&#xff0c;有截至日期的定时调度任务的需求。即定时任务只在指定的开始日期-截至日期里指定的时间里执行。具体的业务需求场景&#xff0c;如营销活动的看板数据的订阅邮件&#xff0c;推送名单的活动&am…

实验(五):外部中断实验

一、实验目的与任务 实验目的&#xff1a; 1&#xff0e;掌握外部中断的工作原理&#xff1b; 2&#xff0e;学会中断程序设计。 任务&#xff1a; 1&#xff0e;运行Keil开发环境&#xff0c;完成外部中断响应软件编程&#xff1b; 2&#xff0e;外部中断接口分别接按键K1、K2…

Hibernate基本使用

注&#xff1a;本文使用maven创建项目。 目录&#xff1a;Hibernate简介&#xff1a;Hibernate使用&#xff1a;一、手动创建&#xff1a;1.建表&#xff1a;2.pom.xml中导入相关依赖&#xff1a;3.创建Hibernate核心配置文件hibernate.cfg.xml&#xff1a;4.创建实体类UserEnt…

Ubuntu系统、CentOS系统双网卡的配置

虚机双网卡配置前言一、CentOS系统1.配置网卡信息1.1编辑eth0网卡1.2查看eth0网卡信息1.3编辑eth1网卡1.4查看eth1网卡信息2.关闭网卡arp代答和rp_filter校验2.1编辑配置文件2.2查看配置文件3.重启网络服务4.配置路由4.1 配置路由4.2 查看路由二、Ubuntu系统1.配置网卡信息1.1.…

微信小程序运行机制和生命周期

一. 运行机制 首先了解下小程序的运行机制&#xff0c;小程序从启动到最终被销毁&#xff0c;会经历很多不同的状态&#xff0c;小程序在不同状态下会有不同的表现。大致运行机制如下图。 小程序生命周期图 接下来我们是图中概念讲解&#xff0c;项目中也会经常遇到。 1&…