今天是刘小爱自学Java的第154天。
感谢你的观看,谢谢你。
学习计划安排如下:
继续接着昨天的学习,因为该业务实现较为复杂,还要花一天的时间才能搞定。
一、新增商品数据
关于新增数据一共是划分成了4块内容:
①基本信息
这个也就是昨天实现了的内容。
当然,上述数据都是我自己瞎填的,正式项目的话就填和产品相关的数据就好。
其中商品分类和该分类下所属的品牌都是从数据库中查询到的。
而商品标题、商品卖点和包装清单是我们自己要填的数据,也就是要添加到数据库中的。
基本信息这块的数据算是填写完成了,后面还有三块数据内容。
②商品描述
这里是一个富文本编辑器,填写的也就是商品的卖点,这个在电商网站中就太常见了。
基本就是夸商品很厉害很好,还有视频可以播放,以及各种图片接受什么的。
这个商品比如说手机,无论是买低配置的还是买高配的,关于描述一般都是配置最高的那个,也就是这里面需要填的内容。
此处使用的富文本编辑器是Vue-Quill-Editor,其在GitHub上就可以完成下载。
至于具体如何使用?
因为其牵扯到前端代码的编写,就不展开讲述了,我们主要以后台数据为主。
③规格参数
如果我们直接点进去是没有显示数据的,具体原因看网页请求:
昨天讲解和实现了上述4个请求,确定了商品分类和品牌,其中还有一个请求报错,就是和规格参数相关的请求。
我们看请求路径初步就能判断是根据cid查询商品规格参数。
而规格参数是我们前几天就实现了增删改查的,不过没有根据cid查询的业务。
二、根据cid查询规格参数
规格参数是属于SpercController处理器的:
1Controller层代码
我们以前就实现了查询业务,不过当时是根据gid查询,也就是规格参数组id。
现在又新增了一个查询,是根据cid查询。
并且它们的请求路径是一致的,只是参数不一样,如果像上图中这样写是不行的。
所以要将这两个方法合并成一个方法:
使用required=false设定参数,表示该参数不强制要求一定要有,可有可无。
都是查询规格参数,只不过参数不一样,所以将这多个参数集合在一起了,统一查询。
其中这里有一个参数是searching,根据搜索条件查询,这是以后需要学到的一个知识点。
总之凡是查询规格参数的,都可以使用该方法来实现,无外乎就是增加一个参数而已。
因为这个参数可以有也可以没有,所以要记得用required来说明。
2Service层代码
因为gid和cid以及searching这三个参数都是SpecParam这个实体类里的属性。
所以使用通用mapper查询数据,查询条件是包含这些属性的对象即可。
3页面测试
再次测试时,会发现商品对应的规格参数名都出现了,只需要填写对应的值即可。
当然上述都是我自己瞎写的,也就是商品规格参数中的一些数据。
但是呢还有三个规格参数是和商品息息相关的,其中就牵扯到了第④点SKU属性。
三、SKU属性
关于规格参数还有手机颜色、内存以及存储空间这三个数据,上述中并未填写。
而是划分到了SKU属性中,如下图:
SKU就是指具体的某个确定的商品。
比如说手机颜色有2种,内存有1种,手机存储大小也有2种,通过这三个属性可以组合出2*1*2一共4个SKU。
当然我这边因为页面受限作为测试只填写了这几种,实际上一般都可以组合成3*3*3一共27个SKU。
而这些在前端页面都帮我们自动组合好了,如下图:
其中在对应的SKU中添加价格和库存,以及该商品是否启用。
不同的配置价格肯定不一样,这也好理解。
点击对应的商品也能添加该SKU对应的图片。
以上就是对商品新增业务中的数据说明。
点击保存商品信息,会向后台发送新增请求,将我们填写的数据发送给服务器,从而添加到数据库中,具体实现后续再学习。
最后
行有不得反求诸己,我是@刘小爱
一个白天上班晚上学习的95后沪漂,不为其它,只为学会自律做好自己,也愿我的每日打卡能给你带来勇气,欢迎点赞关注和评论。
本文使用 mdnice 排版