电商项目8:平台属性

news/2024/11/9 10:01:47/

电商项目8:平台属性

  • 1、后端
    • 1.1、属性分组模糊查询
    • 1.2、商品属性新增功能:保存关联关系

1、后端

1.1、属性分组模糊查询

需要改造。当前端传0时候。模糊查询功能有点问题

AttrGroupServiceImpl

 @Overridepublic PageUtils queryPage(Map<String, Object> params, Long catelogId) {QueryWrapper<AttrGroupEntity> wrapper = new QueryWrapper<AttrGroupEntity>();// 当前端传了keyString key = (String)params.get("key");if (!StringUtils.isEmpty(key)){// select * from pms_attr_group where catelog_id = ? and (attr_gruop_id = ? or attr_group_name like %%)wrapper.and((obj)->{obj.eq("attr_group_id",key).or().like("attr_group_name",key);});}// 当前端的catelogId为0,没传的时候,查询所有if (catelogId == 0){return new PageUtils(this.page(new Query<AttrGroupEntity>().getPage(params),wrapper));}// 当前端cateLogId不为0,则wrapper.eq("catelog_id",catelogId);IPage<AttrGroupEntity> page = this.page(new Query<AttrGroupEntity>().getPage(params),wrapper);return new PageUtils(page);}

1.2、商品属性新增功能:保存关联关系

在这里插入图片描述

在这里插入图片描述
没有插入关联关系,需重写方法

1、创建vo文件夹。
接收页面传递来的数据,封装对象
将业务处理完成的对象,封装成页面要用的数据

AttrVo

package com.ljs.gulimall.product.vo;import lombok.Data;@Data
public class AttrVo {private Long attrId;/*** 属性名*/private String attrName;/*** 是否需要检索[0-不需要,1-需要]*/private Integer searchType;/*** 值类型[0-为单个值,1-可以选择多个值]*/private Integer valueType;/*** 属性图标*/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;/*** 属性分组id*/private Long attrGroupId;
}

AttrController

 /*** 保存*/@RequestMapping("/save")// @RequiresPermissions("product:attr:save")public R save(@RequestBody AttrVo attr){attrService.saveDetail(attr);return R.ok();}

AttrService

void saveDetail(AttrVo attr);

AttrServiceImpl

##@Transactional生效的前提是

@EnableTransactionManagement注解在配置类上。并且扫描到指定的dao层

@Transactional一般用于一次多个写操作

    @Transactional@Overridepublic void saveDetail(AttrVo attr) {// 1、保存分组信息AttrEntity attrEntity = new AttrEntity();BeanUtils.copyProperties(attr,attrEntity);this.save(attrEntity);// 2、保存关联关系AttrAttrgroupRelationEntity relationEntity = new AttrAttrgroupRelationEntity();relationEntity.setAttrGroupId(attr.getAttrGroupId());relationEntity.setAttrId(attrEntity.getAttrId());relationService.save(relationEntity);}

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述


http://www.ppmy.cn/news/42739.html

相关文章

【JVM】JMM

一、JMM JVM 内存模型是用来屏蔽掉各种硬件和操作系统的内存访问差异&#xff0c;以实现让 Java 程序在各个平台下都能达到一致的内存访问效果。JVM 内存模型规定了所有的共享变量都是存储在主内存&#xff0c;每个线程还有自己的工作内存&#xff0c;线程的工作内存保存了该线…

【JSON学习笔记】2.JSON vs XML及JSON的对象和数组

前言 本章介绍JSON vs XML及JSON的对象和数组。 JSON vs XML JSON 和 XML 都用于接收 web 服务端的数据。 JSON 和 XML在写法上有所不同&#xff0c;如下所示&#xff1a; JSON 实例 {"sites": [{ "name":"csdn教程" , "url":&q…

Nginx安装注意事项

一.看你是什么系统,先从官网下载你想要的版本 二.windows系统 直接解压就行了 conf 是放配置文件的地方 html是 放页面的位置 ,欢迎页也在这里 有什么静态资源也可以放这里 logs 放日志文件 在路径栏位置直接cmd 开启命令窗口 注意这里是在nginx.exe文件所在目录进行的…

结构型模式-桥接模式

结构型模式-桥接模式 结构型模式:桥接模式(Bridge)解决抽象和实现分离问题描述适用环境优点:缺点:违反原则:代码实现结构型模式: 桥接模式(Bridge) 解决抽象和实现分离问题 描述 将一个对象的抽象部分和实现部分分离开来,使得它们能够独立地变化,从而增强了系统…

产品经理必读|用户研究方法总结①

众所周知&#xff0c;理解用户需求&#xff0c;识别用户痛点&#xff0c;是产品或功能成型之前绕不开的过程。而要获取到用户真实的需求和痛点&#xff0c;唯一的方法就是做用户调研。而用研的方法都有哪些呢&#xff1f;今天我就来给大家分享一下行业中常见的用研方法。 用研的…

Pytorch实现FCN图像语义分割网络

针对图像的语义分割网络&#xff0c;本节将介绍PyTorch中已经预训练好网络的使用方式&#xff0c;然后使用VOC2012数据集训练一个FCN语义分割网络。 一、使用预训练好的语义分割网络 PyTorch提供了已预训练好的图像语义分割网络&#xff0c;已经预训练好的可供使用的网络模型…

[学习笔记]计算机图形学(一)

计算机图形学学习笔记&#xff08;一&#xff09; 什么是计算机图形学 计算机图形学的主要研究内容就是研究如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法。 什么是好的画面&#xff1f; 从技术层面简单的评判标准&#xff1a;直接看画面…

蓝桥杯真题——三角形的面积

题目描述 平面直角坐标系中有一个三角形&#xff0c; 请你求出它的面积。 输入描述 第一行输入一个 T ,代表测试数据量. 每组测试数据输入有三行&#xff0c;每行一个实数坐标 (x,y) 代表三角形三个顶点。 1≤T≤10^3, −10^5≤x,y≤10^5 输出描述 输出一个实数表示三角形面积…