600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > 【Lilishop商城】No3-5.模块详细设计 商品模块-1(商品分类 品牌管理 规格管理 参

【Lilishop商城】No3-5.模块详细设计 商品模块-1(商品分类 品牌管理 规格管理 参

时间:2023-01-19 21:22:47

相关推荐

【Lilishop商城】No3-5.模块详细设计 商品模块-1(商品分类 品牌管理 规格管理 参

仅涉及后端,全部目录看顶部专栏,代码、文档、接口路径在:

【Lilishop商城】记录一下B2B2C商城系统学习笔记~_清晨敲代码的博客-CSDN博客

全篇会结合业务介绍重点设计逻辑,其中重点包括接口类、业务类,具体的结合源代码分析,读起来也不复杂~

谨慎:源代码中有一些注释是错误的,有的注释意思完全相反,有的注释对不上号,我在阅读过程中就顺手更新了,并且在我不会的地方添加了新的注释,所以在读源代码过程中一定要谨慎啊!

目录

A1.计量单位

B1.M端(属于显式操作)

B2.S端(属于显式操作)

A2.品牌管理

B1.M端(属于显式操作)

A3.规格管理

B1.M端(属于显式操作)

B2.S端(属于显式操作)

A4.参数(强属于商品分类)

B1.M端(属于显式操作)

C1.商品分类参数组的接口

C2.商品分类参数组里面的参数的接口

B2.S端(属于显式操作)

A5.商品分类

B1.M端(属于显式操作)

C1.商品分类接口

C2.商品分类-品牌接口

C3.商品分类-规格接口

C4.商品分类-参数接口

B2.S端(属于显式操作)

C1.商品分类接口(里面包含了查询所关联品牌接口)

C2.商品分类-规格接口

C3.商品分类-参数组接口

A6.店铺分类

B1.S端(属于显式操作)

商品信息的管理主要在店铺S端,商品关联的附属信息例如商品分类等是由运营M端和店铺S端共同管理的,买方B端主要是查看、下单会用到,所以本篇不包含B端的查看接口,买方B端前台的接口回单开一篇文章说明的。【但是购物车、下单这些会跟随地订单一起说明的~】

开始前先说一下这几个模块之间的关联:

1.规格和商品分类里面的参数,虽然跟商品分类强关联,但是由于跟商品是弱关联(规格直接转化成json保存到goods_sku里面,参数转化成json保存到goods里面),所以他们的修改不影响分类和商品;计量单位也是,直接保存值到goods里面;

2.品牌直接与商品关联,并且还与商品分类关联,商品和商品分类又是直接对展示操作,所以删除/禁用品牌需要判断是否有关联的商品与分类,删除商品分类需要判断是呦呦关联的商品(禁用之所以不影响是因为禁不禁用不影响前端查看,到时候商品再重新选择罢了)

3.商品的相关联信息,例如图册、sku等等,都是依附于商品,并且不会单独修改。

接下来先从关联最小的模块说起~~~商品放到下一篇~~~

A1.计量单位

这个没啥好说的,就是计量单位的增查改删,而且商品选择时直接保存的文本内容不是id(没有必要绑定id,因为不需要那么强的绑定关系)

B1.M端(属于显式操作)

分页获取商品计量单位、获取商品计量单位、添加商品计量单位、编辑商品计量单位、删除商品计量单位

B2.S端(属于显式操作)

只在发布商品页面获取单位列表,这里后端用了分页,但是前端没有进行分页或懒加载,所以前端还是获取的所有~

分页获取商品计量单位

A2.品牌管理

运营M端管理品牌,然后将品牌绑定到商品分类里面。店铺S端发布商品时先选择商品分类,然后再获取该商品分类绑定的品牌,进行选择绑定。所以品牌是通过商品分类绑定到商品上面的。

品牌和商品分类的这一块的操作在商品分类(见商品分类)。

删除/禁用品牌需要判断是否有关联的商品与分类~~~这个放在代码开发中

B1.M端(属于显式操作)

运营M端管理品牌

通过id获取品牌详情、获取所有未禁用品牌、分页获取、新增品牌、更新数据、后台启用/禁用品牌、批量删除

获取所有未禁用品牌用于商品分类页面调用

B2.S端(此端不需要接口)

S端本身就是根据商品分类获取的品牌,所以未提供专门的controller,并且把这个接口放到了商品分类里面(见商品分类S端)

A3.规格管理

之前也说了规格与商品的联系,是可选择商品分类里面的规格的。而且,发布商品时的规格是可以自定义的,也就是说这里的规格就是个方便快捷的选择,自然不用与商品强关联。

规格和商品分类的这一块的操作在商品分类(见商品分类)。

B1.M端(属于显式操作)

规则值使用逗号分割更方便。

获取所有可用规格、分页搜索规格、保存规格、更改规格、批量删除

获取所有可用规格用于商品分类页面调用

B2.S端(属于显式操作)

S端的只会在发布商品页面查看

根据categoryId获取分类规格

A4.参数(强属于商品分类)

之前也提过了,商品分类与参数、规格、品牌关联,现在还差一个参数。

参数模块由参数组和参数组成,一个商品分类可以添加多个参数组;数据表见:li_category_parameter_group、li_parameters【这两个表的名字都放不到一起去,很难关联想像】

B1.M端(属于显式操作)

C1.商品分类参数组的接口

查询某分类下绑定的参数组信息、保存参数组数据、更新参数组数据、通过id删除参数组

C2.商品分类参数组里面的参数的接口

添加参数、编辑参数、通过id删除参数

但是要注意哦,代码里有bug,参数里面应该有个参数类型,用来标注该参数是可选择的还是手动填写的,数据库表里面也有,但是实体类里面却没有这个字段,所以最终保存时这个参数就是null,如果想要恢复使用可自行添加

B2.S端(属于显式操作)

S端也是根据商品分类获取的,并且只能编辑参数值,不能自定义参数项。

S端的只会在发布商品页面查看。

查询某分类下绑定的参数信息

A5.商品分类

商品分类与参数、规格、品牌关联,并且关联操作与分类的增查改删是分开的,所以商品分类单独的controller接口,其余的关联有自己的controller接口

B1.M端(属于显式操作)

C1.商品分类接口

查询某分类下的全部子分类列表、添加商品分类、修改商品分类、通过id删除分类、后台 禁用/启用 分类

C2.商品分类-品牌接口

查询某分类下绑定的品牌信息、保存某分类下绑定的品牌信息

C3.商品分类-规格接口

查询某分类下绑定的规格信息、保存某分类下绑定的规格信息

C4.商品分类-参数接口

就是A4.里面的参数接口~

B2.S端(属于显式操作)

C1.商品分类接口(里面包含了查询所关联品牌接口)

店铺S端发布商品时先获取商品分类,这个商品分类时注册时选择的经营分类里面的,不是平台所有的哦~

获取店铺经营的分类、获取所选分类关联的品牌信息

C2.商品分类-规格接口

查询某分类下绑定的规格信息

C3.商品分类-参数组接口

查询某分类下绑定的参数信息

A6.店铺分类

店铺分类时只属于店铺管理的,用于在B端前台店铺主页展示,这个就很简单了。是按照层级分类。

在业务逻辑上来说,发布商品时可以绑定店铺分类,而删除店铺分类时,绑定他的商品不会有影响,因为在任意端不会影响查看~所以不会强关联影响~~~

B1.S端(属于显式操作)

获取当前店铺商品分类列表、获取店铺商品分类详情、添加店铺商品分类、修改店铺商品分类、删除店铺商品分类

【Lilishop商城】No3-5.模块详细设计 商品模块-1(商品分类 品牌管理 规格管理 参数 计量单位 店铺分类)的详细设计

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。