linux怎么查看本机内存大小
429
2022-11-30
【第七篇】商城系统-商品发布-SKU和SPU管理
商品服务
1.新增商品
1.1 品牌的关联
1.1.1 PubSub依赖缺失
打开新增商品页面的时候会出现的错误提示:
原因是缺少:PubSub相关依赖
解决办法
1.1.2 品牌关联
拷贝对应的前端页面文件
添加后端对应的服务
然后service中查询处理
最后的显示效果
1.1.3 会员等级
首先我们需要启动会员模块,并且配置对应的网关路由信息
1.1.4 规格参数
在新增商品的第二步我们就需要设置对应的规格参数,而这些规格参数是根据前面一步选择的三级分类来查询出来的。
响应对应的数据,我们需要先创建对应的VO对象。
package com.msb.mall.product.vo;import com.baomidou.mybatisplus.annotation.TableId;import com.msb.mall.product.entity.AttrEntity;import lombok.Data;import java.util.List;@Datapublic class AttrGroupWithAttrsVo { /** * 分组id */ @TableId private Long attrGroupId; /** * 组名 */ private String attrGroupName; /** * 排序 */ private Integer sort; /** * 描述 */ private String descript; /** * 组图标 */ private String icon; /** * 所属分类id */ private Long catelogId; // 关联对应的属性信息 private List
然后创建对应的controller
然后创建对应的service
1.2 发布商品
1.2.1 VO 接收数据
前端页面提交的JSON数据非常复杂,我们需要在后端服务通过对应的VO对象来接收这些相关的数据。
然后通过在线的json格式处理工具生成对应的VO工具类
1.2.2 保存对应的数据
需要保存的数据拆解为一下六个部分。
1.2.3 保存商品基本信息
1.2.4 保存商品描述
需要注意的地方:
1.2.4 保存图集信息
1.2.5 保存规格参数
1.2.6 SKU基本信息存储
1.2.7 SKU的图集
1.2.8 SKU的销售属性
1.3 远程服务调用
1.3.1 满减,折扣,会员价保存
在coupon服务中定义相关的接口及处理的service
然后我们在Product服务中来处理接口的调用
然后在商品的service中完成服务的调用
完成满减折扣和会员价的service存储
public void saveSkuReduction(SkuReductionDTO dto) { // 5.3 保存满减信息,折扣,会员价 // mall_sms: sms_sku_ladder sms_full_reduction sms_member_price // 1.折扣 SkuLadderEntity ladderEntity = new SkuLadderEntity(); ladderEntity.setSkuId(dto.getSkuId()); ladderEntity.setFullCount(dto.getFullCount()); ladderEntity.setDiscount(dto.getDiscount()); ladderEntity.setAddOther(dto.getCountStatus()); if(ladderEntity.getFullCount() > 0){ ladderService.save(ladderEntity); } // 2.满减 SkuFullReductionEntity fullReductionEntity = new SkuFullReductionEntity(); BeanUtils.copyProperties(dto,fullReductionEntity); if(fullReductionEntity.getFullPrice().compareTo(new BigDecimal(0)) == 1){ this.save(fullReductionEntity); } // 3.会员价 List
1.3.2 会员积分存储
会员积分信息也是存储在Coupon服务中,我们同样需要通过Fegin来调用。
2.SPU管理
提供不同条件的检索,分类,品牌,状态,关键字检索。
后台我们需要在Service中完成对应的操作。
/** * SPU信息检索 * 分页查询 * 分类 品牌 状态 关键字查询 * @param params * @return */ @Override public PageUtils queryPageByCondition(Map
然后解决页面显示数据的问题,比如类别和品牌显示的编号,创建时间和更新时间显示格式问题。
重启服务
上面的是设置全局的格式化方式,如果我也特殊设置,这时我们可以在对应的entity对象的属性上通过@JsonFormat 来指定,此处指定的会覆盖掉全局的设置。
针对显示的分类和品牌显示id的问题,我们需要通过对应的vo对象来传输,同时我们需要在service中完成对应的逻辑
显示的效果
3.商品管理
商品管理也就是我们讲的SKU管理。实现多条件的检索,比如 类别,品牌,价格区间。关键字等查询。
/** * SKU 信息检索的方法 * 类别 * 品牌 * 价格区间 * 检索的关键字 * 分页查询 * * @param params * @return */ @Override public PageUtils queryPageByCondition(Map
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~