谷粒商城day54-商品服务-API-平台属性-规格参数新增与VO与开发中各种O的含义

谷粒商城项目实战——04商品服务之属性分组 三. 属性分组 1. 前期工作 1. 数据导入 将课件中菜单数据库中的数据导入数据库, 这样就不用自己后期一个一个的添加 2. 三级分类抽取成公共组件 1. 抽取公共类 抽取公共类 <template> <!-- :data: 获取的数据源 :props: 配置选项 @node-click: 节点被点击时的回调 node-key: 每个树节点用来作为唯一标识的属性,整棵树应该是唯一的(一定要设置) --> <el-tree :d 阅读详情

1.属性分组里的查询全部功能支持模糊查询

AttrGroupServiceImpl内代码如下
    @Override
    public PageUtils queryPage(Map<String, Object> params, Long catelogId) {
        QueryWrapper<AttrGroupEntity> queryWrapper = new QueryWrapper<AttrGroupEntity>();

        if(catelogId != 0){
            queryWrapper.eq("catelog_id", catelogId);
        }
        String key = (String) params.get("key");
        if(StringUtils.isNotEmpty(key)){
            queryWrapper.and((obj) ->{
                obj.eq("attr_group_id",key).or().like("attr_group_name",key);
            });
        }
        IPage<AttrGroupEntity> page = this.page(
                new Query<AttrGroupEntity>().getPage(params),queryWrapper

        );
        return new PageUtils(page);
    }

效果如下

 2.新增规格参数

 新增成功后发现尽管属性已经新增成功但是属性与属性分组的关联表中并无数据

原因是AttrEntity实体类中并无 attrGroupId字段 ,所以前端传递的属性分组id没有被后端接收到,那么我们新建了如下VO类

package com.atguigu.gulimall.product.vo;

import lombok.Data;

/**
 * @author rengang
 * @version 1.0
 * @date 2020/11/24 15:03
 */

@Data
public class AttrVo {

    /**
     * 属性id
     */
    private Long attrId;
    /**
     * 属性名
     */
    private String attrName;
    /**
     * 是否需要检索[0-不需要,1-需要]
     */
    private Integer searchType;
    /**
     * 属性图标
     */
    private String icon;
    /**
     * 可选值列表[用逗号分隔]
     */
    private String valueSelect;
    /**
     * 属性类型[0-销售属性,1-基本属性,2-既是销售属性又是基本属性]
     */
    private Integer attrType;
    /**
     * 启用状态[0 - 禁用,1 - 启用]
     */
    private Long enable;
    /**
     * 所属分类
     */
    private Long catelogId;
    /**
     * 快速展示【是否展示在介绍上;0-否 1-是】,在sku中仍然可以调整
     */
    private Integer showDesc;

    private Long attrGroupId;
}


为什么要新建一个类而不是直接在原实体类中像这样添加该属性呢

因为这样不规范,这里就有点讲究了,关系到Object的划分

我们逆向生成的对象就是持久对象  

业务实体的封装

比如服务直接传递的对象 

与TO差不多

视图对象,接收与返回

以上所有对象都可称为POJO

 

3.service层代码修改(controller层改为vo接收对象,这里不贴代码)

    @Override
    public void saveAttr(AttrVo attrVo) {
        AttrEntity attrEntity = new AttrEntity();
        BeanUtils.copyProperties(attrVo,attrEntity);
        this.save(attrEntity);

        AttrAttrgroupRelationEntity attrAttrgroupRelationEntity = new AttrAttrgroupRelationEntity();
        attrAttrgroupRelationEntity.setAttrGroupId(attrVo.getAttrGroupId());
        attrAttrgroupRelationEntity.setAttrId(attrEntity.getAttrId());
        attrAttrgroupRelationService.save(attrAttrgroupRelationEntity);

    }

 

 

10BASE-T1S协议中的PLCA机制:实现无碰撞网络传输的关键 本文深入解析了10BASE-T1S协议中的PLCA(物理层冲突避免)机制。作为IEEE 802.3cg标准的关键部分,PLCA通过循环调度与机会传递,从根源上避免了网络碰撞,为工业与汽车等场景提供了确定性的低延迟传输保障,是实现可靠实时通信的核心技术。 阅读详情

相关推荐

解决mamba_ssm库安装难题:两种高效方法详解

本文详细解析了mamba_ssm库安装失败的常见原因,并提供了两种高效的解决方案。针对其依赖C++/CUDA扩展编译的特性,文章手把手指导用户通过GitHub克隆源码编译安装,或寻找匹配的预编译Wheel文件直接安装,帮助开发者彻底解决环境配置难题,顺利部署Mamba模型。

weixin_29056865的博客 554

谷粒商城day50 -商品服务-API-属性分组-获取分类属性分组

实现这样一个效果,左边点击三级分类右边表格内查询出该三级分类关联的属性分组 1.controller层代码 @RequestMapping("/list/{catelogId}") public R list(@RequestParam Map<String, Object> params,@PathVariable("catelogId") Long catelogId){ // PageUtils page = attrGroupService.query

JavaCoder_juejue的博客 428

高通AI Engine SDK(QNN)使用教程(环境配置、模型转换、量化、推理、分析)

高通AI Engine使用教程

weixin_51031772的博客 1万+

9.商品服务-平台属性

介绍: 规格参数即:基本属性--有关联关系,需要属性分组 销售属性:销售属性-没有关联关系,不需要属性分组 1.规格参数新增与vo 在查询全部的时候如果带了key值,我们也应该把key带上模糊查询 修改queryPage方法 //分页查询,需要匹配key的模糊查询 @Override public PageUtils queryPage(Map<String, O...

奈斯查尔斯吴的博客 626

如何在win11中用双硬盘或移动硬盘装Ubuntu 20.04 双系统

win11 安装双系统

qq_42817360的博客 5138

汇川AM系列ethercat控制伺服的使用说明(含转矩模式)

本文以一个实际例子,介绍ethercat伺服驱动器的工作原理,以及在汇川AM系列PLC中,如何点动、定位、速度、转矩控制ethercat伺服。

qq_34047402的博客 5114

springboot常用技巧

springboot技巧

weixin_41955606的博客 591

高电压技术的面试内容整理(详细版本:57题)

涵盖了高电压技术的关键领域,包括气体放电的物理过程、液体和固体介质的绝缘特性、高压外绝缘的分类与特性、电气设备绝缘试验的方法与原理、电力系统的防雷保护措施,以及内部过电压的产生、影响与限制方法,为理解和应对高电压环境下的电气问题提供了系统的知识框架。通过深入探讨气体放电理论、介质极化与损耗、绝缘子的电气特性、绝缘试验技术、防雷策略以及内部过电压的管理。

weixin_44808274的博客 776

mybatis-plus分页方式

mybatis-plus分页方式

aiwokache的博客 3万+

【OpenFOAM】-olaFlow-算例4- irreg45degTank

不规则波浪模拟

ou_no的博客 2117

生成模型实战 | ProGAN详解与实现

Progressive GAN (ProGAN) 是一种通过渐进式增长网络结构来生成高分辨率、高保真图像的技术。传统 GAN 难以直接生成超过 256x256 分辨率的图像,而 ProGAN 创新性地从低分辨率开始训练生成器和判别器,逐步添加网络层以提高分辨率,直至达到1024x1024。该方法结合了像素归一化、小批次统计信息和均衡化学习率等关键技术,并使用 WGAN-GP 损失函数确保训练稳定性。ProGAN 是首个能生成1024x1024高保真人脸图像的模型,但其训练耗时较长,且对计算资源要求较高。

盼小辉丶的博客 1435

【精品】封装好的 通用的 前后端 分页技术 实例

本博客中使用到的JsonUtil参看博客:Jackson工具类 MyBatis 使用分页插件: <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper</artifactId> <version>5.3.0</version> </dependency> PageBean @Gett

哈 541

SpringBoot+Vue+kkFileView实现文档管理(文档上传、下载、在线预览)

上面在使用OpenOffice实现doc、excel、ppt等文档的管理和预览。除此之外可用kkFileView实现包括且更多文档的预览。

BADAO_LIUMANG_QIZHI的博客 1万+

大学生兼职管理平台-JAVA【毕业设计、快速开发、源码、开题报告】

管理员登陆后,主要模块包括首页、个人中心、学生管理、企业管理、招聘信息管理、投递简历管理、在线咨询管理、录取通知管理、资讯类型管理、资讯信息管理、系统管理等功能。企业登陆后,主要模块包括首页、个人中心、招聘信息管理、投递简历管理、在线咨询管理、录取通知管理等功能。 论文目录

laowang8的博客 281

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

谷粒商城项目(学习笔记八)

第五章:仓储服务 一、仓库维护 完善仓储服务的查询功能 /** * 列表 */ @RequestMapping("/list") public R list(@RequestParam Map<String, Object> params){ PageUtils page = wareInfoService.queryPage(params); return R.ok().put("page", page);

qq_46396128的博客 1323

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

谷粒商城-基础篇-Day06-属性分组

抽取出一个tree组件放到modules下的common下的category.vue。修改表单提交传的数据catelogId为catelogId数组的最后一个单词。在右边18列使用表格,直接复制自动生成的attrgroup.vue中的表格。在抽取的category.vue中,当树被点击后,给父组件发送一个事件。在attrgroup.vue中的左边6列使用刚才抽取的组件。在data中定义一个catId用来存放当前被点击的id。当节点的children为空时,不返回children。

qq_57907966的博客 1142

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

谷粒商城基础篇------商品服务 - 属性分组

文章目录6.1 SPU和SKU的关系6.2 前端组件抽取与父子组件交互1、前端组件抽取2、父子组件交互6.3 获取分类属性分组6.4 分组新增与修改1、 分组新增2、分组修改6.5 品牌分类关联1、品牌分页管理2、品牌的模糊查询功能3、品牌分类关联4、新增品牌与分类关联关系5、品牌级联更新(brand)6、分类级联更新 6.1 SPU和SKU的关系 SPU:就是所有具体的统称(集合); SKU:是每一个具体(集合中的元素)。 可能是一个SPU中含有多个SKU,然后某一个SKU(这个SKU就又叫SPU)下面又

JH灰色的博客 1159

谷粒商城笔记+踩坑(5)——商品服务-属性分组、品牌关联分类,spu+sku+分页拦截器

SPU和SKU、属性分组的增删改查、QueryWrapper的and和or用法、获取当前品牌关联的所有分类

种一棵树最好的时间是十年前,其次是现在 5895

谷粒商城-基础篇-商品服务4-属性分组(P71-P74)

谷粒商城 商品服务 属性分组

ljn1046016768的博客 1786

记录一下关于MybatisPlus分页查询的参数

记录一下mp的分页插件使用: 代码生成器的分页查询一般都是这样: @RequestMapping("/list") public R list(@RequestParam Map<String, Object> params,@PathVariable Long catelogId){ PageUtils page = attrGroupService.queryPage(params); return R.ok().put("page", pag

qq_17593727的博客 7437

谷粒商城-属性分组

要注意,只查询第三级的属性信息,所以要加判断。

weixin_62485485的博客 513

谷粒商城--SPU和SKU(属性分组、规格参数、销售属性)

开发接口就是开发Controller、service、dao在线接口文档如下别人告诉你需要什么功能,需要返回什么样的数据,你就通过接口的形式把他们呢实现出来即可!以后工作了也是这种形式,主要是开发接口为多,前端其实不用写太多,能看懂即可!!!

全网粉丝10W+、全栈领域优质创作者、掘金、阿里云等社区博客专家、专注于全栈领域和毕业项目实战 3633

第188天学习打卡(项目 谷粒商城30 规格参数新增与VO 规格参数列表)

规格参数新增与VO 属性分组的查询时设置模糊查询功能 gulimall.product.service.impl AttrGroupServiceImpl.java package com.doudou.gulimall.product.service.impl; import org.springframework.stereotype.Service; import java.util.Map; import com.baomidou.mybatisplus.core.conditions.query

doudoutj的博客 307

谷粒商城小心得

1.首先先把数据库的表关系整明白,然后再把表字段整明白 2.做业务逻辑操作时,能一次查询的就一次查询,查询完了在封装处理数据,例如一级分类,二级分类, 3.关于回显,可能不是简单的,回显出当前数据,可能还得展示其他的 例如,完整的分类的 path([一级,二级,三级分类]),这样可以展示出,完整的path,给用户选择 4.一般,做查询的时候,用reqeustParam() Map 来接收 数据量大的参数,但是用这种方法,前提是,你要的数据都是string类型的,不用做数据类型转化,,格式化啥的,因为Map的

Chen4852010的博客 333

8.商品服务-属性分组+品牌管理

1.SPU和SKU SPU:是商品信息聚合的最小单位,是一组可复用,易检索的标准化信息集合,该集合描述了一个产品的特性--相对于sku是类的概念--基本属性 SKU:顾客真正买的spu,比如华为的mate40蓝色 256G内存的手机--相对于spu是对象的概念---销售属性 执行admin.sql的sys_menu表获取到菜单信息 2.从这里开始前端的代码就不讲了--以后都是对...

奈斯查尔斯吴的博客 495

谷粒商城--属性分组--笔记七

谷粒商城–属性分组–笔记七 1.SPU与SKU SPU: Standard Product Unit(标准化产品单元) 是商品信息聚合的最小单位, 是一组可复用、 易检索的标准化信息的集合, 该集合描述了一个产品的特性。 iphoneX 是 SPU、 MI 8 是 SPU iphoneX 64G 黑曜石 是 SKU MI8 8+64G+黑色 是 SKU SKU: Stock Keeping Unit(库存量单位) 即库存进出计量的基本单元, 可以是以件, 盒, 托盘等为单位。 SKU 这是对于

qq_31745863的博客 1565
上一篇: vscode 与 idea 使用 git提交代码正确步骤
下一篇: 谷粒商城day55-商品服务-API-平台属性-规格参数列表
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我才是真的封不觉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值