谷粒商城之分布式基础篇p51

news/2024/11/23 5:18:28/

p51分类删除效果细化

添加删除确认框
在这里插入图片描述
删除后任然展示父级节点,而不是收缩菜单,添加一个expend key属性即可
在这里插入图片描述

p52三级分类 新增

后端就是简单的插入,前端先获取新增菜单的父级分类id和菜单的level级别等

p53修改分类

后端也是简单的修改

p54三级分类 拖拽效果

在这里插入图片描述

p55 拖拽数据收集 这集有点晕

这集有点难搞,利用node节点和data数据
核心就在于拖动节点时候,1 修改节点自身的父节点,2 以及自己节点的level发生变化的时候,及时修改,3 并且重新把当前节点所在的兄弟节点排序
这里有个好处就是element拖动时候,饿了么已经给我们排好了node的level,我们只需要把data的catelevel修改为level的值就可以了
在这里插入图片描述

p56拖拽功能完成

利用前端逻辑处理后,要发送给后端的分类数据,是一个数组,兄弟分类只需要重新排序,修改的分类除了排序sort还要额外修改父级分类parentid,级别catlevel(其实数据库只是修改这3个字段)
在这里插入图片描述

p57修改拖拽效果

添加关闭开启按钮 以及批量保存按钮
在这里插入图片描述

p58三级分类 删除 批量删除

后端就是简单的删除

p59 逆向工程生成前后端代码

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

逆向生成了商品 品牌的前后端代码

p60品牌管理 添加显示开关

切换开关按钮时会向后台发送请求.修改品牌的 显示状态字段
在这里插入图片描述

p61品牌管理 云服务存储

在这里插入图片描述
项目中上传方式
第一种:要先将文件上传到我们的服务器,占用带宽
在这里插入图片描述
第二种:访问我们的服务器取得签名,使用签名后前端在再上传到阿里云,用这种比较好
在这里插入图片描述

p62 品牌管理 oss测试

使用了阿里云的原生oss上传
在这里插入图片描述

使用cloud alibaba 结合oss

依赖

<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alicloud-oss</artifactId>
<version>2.2.0.RELEASE</version>

配置
在这里插入图片描述

上传
在这里插入图片描述

p63 建立第三方服务

建立了一个第三方服务
在这里插入图片描述

p64 前后端联调上传图片

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

P65 前端表单校验 自定义校验器

前端自定义一些校验器

p66 品牌管理 JSR303校验

使用方法
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可以使用bindingresult自己我们自己来处理返回指定格式的数据
在这里插入图片描述

p67统一异常处理

在这里插入图片描述

p68 JSR303分组校验

定义一个空接口.做标识用
在这里插入图片描述
在实体类上加上注解
在这里插入图片描述
在controller方法上加上这个**@Validated**注解,指定分组
在这里插入图片描述

p69自定义校验注解

正则校验
在这里插入图片描述
自定义校验注解
在这里插入图片描述

1.自定义一个注解,指定可以使用的0 ,1两种值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
上面这个注解需要依赖
在这里插入图片描述
配置注解默认的message
在这里插入图片描述

2自定义一个校验器

需要实现一个接口ConstrainValidator
在这里插入图片描述
只要提交的值包含在规定的值,返回true
在这里插入图片描述

3校验器和校验注解关联

在这里插入图片描述

p70 spu sku 规格属性 销售属性

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

p71属性组

把分类树形菜单提取出来.作为一个组件,点击改变分类时,应该查询分类对应的属性组
前端要使用父子节点通信
在这里插入图片描述

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

p72获取分类的属性组

一个商品分类下面有多个属性分组
在这里插入图片描述

p73新增属性组

主要是前端
在这里插入图片描述
eleme级联标签cascader介绍
在这里插入图片描述
在这里插入图片描述
prop会拿到分类数组的每一个分类,渲染出级联效果
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
后端结果为空时 不返回该字段
在这里插入图片描述

p74修改属性组

在这里插入图片描述

修改时,应该回显完整的三级分类

在这里插入图片描述
用递归获取该属性组的所属三级分类
在这里插入图片描述

p75品牌与分类关联 mybatisplus分页

在这里插入图片描述

mybatisplus分页

@Configuration
@MapperScan("com.atguigu.gulimall.product.dao")
@EnableTransactionManagement
public class MybatisConfig {@Beanpublic PaginationInterceptor paginationInterceptor() {PaginationInterceptor paginationInterceptor = new PaginationInterceptor();// 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求  默认falsepaginationInterceptor.setOverflow(true);// 设置最大单页限制数量,默认 500 条,-1 不受限制paginationInterceptor.setLimit(1000);return paginationInterceptor;}
}

品牌与分类关联 (多对多)

查询品牌对应哪些分类
在这里插入图片描述

在这里插入图片描述
中间表 表做了冗余字段
在这里插入图片描述
新增品牌与分类关联
在这里插入图片描述
###修改分类与品牌时,也要记得更新中间表的冗余字段

p76属性新增

一个属性对应一个分类,添加时,属性表中插入了分类id,还需要 属性与属性组中间表 插入,

在这里插入图片描述
后端用一个vo来接受

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

p77 查询属性列表

条件查询+是否是某个分类下的属性

 @Overridepublic PageUtils queryAttrPage(Map<String, Object> map, Long catelogId) {QueryWrapper<AttrEntity> queryWrapper = new QueryWrapper<>();//是否携带分类if (catelogId!=0){queryWrapper.eq("catelog_id",catelogId);}//条件String key = (String) map.get("key");if (StringUtils.isNotEmpty(key)){queryWrapper.and((obj)->{obj.eq("attr_id",key).or().like("attr_name",key);});}IPage<AttrEntity> page = this.page(new Query<AttrEntity>().getPage(map), queryWrapper);return new PageUtils(page);}

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

在这里插入图片描述

p78 属性修改

修改前先查询 回显
在这里插入图片描述

在这里插入图片描述

再修改
在这里插入图片描述

p79 销售属性维护

主要是后端 销售属性 的查询 添加和修改,这里销售属性没有分组,只有基本属性有分组
定义了一个枚举
在这里插入图片描述

在这里插入图片描述

p80 查询属性组关联属性 &删除关联

查询
在这里插入图片描述
删除
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

p81查询属性组在该分类下没有关联的属性

在这里插入图片描述

p82新增属性组与属性的关联

在这里插入图片描述

p83 新增商品-调试会员等级接口

配置网关路由
在这里插入图片描述
新增了几个会员等级数据
在这里插入图片描述

p84 新增发布商品-获取分类关联的品牌

新增商品
在这里插入图片描述
在这里插入图片描述

p85查询分类下的属性组 属性

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

p86新增商品

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

p87商品新增业务流程分析

在这里插入图片描述

p88保存商品基本spu信息

在这里插入图片描述

p89保存sku信息

在这里插入图片描述

p90 调用远程保存spu积分信息 与 sku优惠信息

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

p91商品新增debug

为了方便看数据,设置隔离级别为 读未提交
在这里插入图片描述
取消主键自增,让我们手动添加主键字段
在这里插入图片描述

p92 商品保存完善-过滤空数据

防止数据库保存空数据
在这里插入图片描述

p93 spu检索

在这里插入图片描述

p94 sku检索

在这里插入图片描述

p95 仓库管理&整合仓库&仓库列表查询

简单的条件查询
在这里插入图片描述

p96 库存查询&创建采购需求

商品库存查询

在这里插入图片描述

在这里插入图片描述

采购需求(采购详情)查询

在这里插入图片描述

p97 合并采购需求到采购单

在这里插入图片描述

p98 领取采购单

在这里插入图片描述
完善之前的合并采购单
在这里插入图片描述

p99 仓库管理 完成采购

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

p100 spu规格查询与修改

查询spu的规格给前端,没啥好说的
在这里插入图片描述

在这里插入图片描述


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

相关文章

ThinkPad P51 成功黑苹果

这里写自定义目录标题 ThinkPad P51 成功黑苹果资源地址安装安装完结语 ThinkPad P51 成功黑苹果 本文并不在于提供具体问题的解决方案&#xff0c;只是列出一些资源地址&#xff0c;这往往是小白难以搜集到的。 通用的适用于小白的折腾过程就是bilibili看视频&#xff0c;找E…

C++ Primer Plus第五版笔记(p51-100)

45 46 常量指针必须初始化 47 一条语句可以定义出不同类型的变量 int i10, *p&i,&r i; 48 应该是int p 而不是int p 49 **表示指向指针的指针 p52 50 指针是对象&#xff0c;所以存在对于指针的引用 int *p; int *&rp; 51 在默认状态下 &#xff0c;const对象只…

16、DMA直接存储区访问

0x01、DMA简介 DMA(Direct Memory Access)一直接存储器存取&#xff0c;是单片机的一个外设&#xff0c;它的主要功能是用来搬数据&#xff0c;但是不需要占用 CPU&#xff0c;即在传输数据的时候&#xff0c;CPU 可以于其他的事情&#xff0c;好像是多线程一样数据传输支持从…

JavaScript全解析——Ajax(下)

Ajax(下) ●http 传输协议 ○http(s) 协议规定了, 只能由前端主动发起 ○并且在传输的过程中, 只能传递 字符串 ●http 协议过程 1.建立连接 浏览器和服务器进行连接建立 基于 TCP/IP 协议的三次握手 2.发送请求 要求前端必须以 请求报文 的形式发送 报文由浏览器组装,…

相机靶面尺寸与镜头尺寸之间的选择关系

为保证画面整体的可应用性&#xff0c;选用镜头的像面尺寸应大于相机芯片的对角线尺寸&#xff08;以下简称靶面&#xff09;&#xff0c;否则会出现边缘暗角/黑角等情况&#xff0c;影响使用。 ———————————————— 版权声明&#xff1a;本文为博主「hackpig」…

工业相机的镜头接口知识介绍

工业相机的镜头接口知识介绍 物镜的接口尺寸是有国际标准的&#xff0c;共有三种接口型式&#xff0c;即F型、C型、CS型。F型接口是通用型接口&#xff0c;一般适用于焦距大于25mm的镜头&#xff1b;而当物镜的焦距约小于25mm时&#xff0c;因物镜的尺寸不大&#xff0c;便采用…

机器视觉工业相机和镜头选型

一、视野计算 1、倍率芯片尺寸&#xff08;靶面&#xff09;/视野----远心镜头选择 2、焦距倍率x相机高度&#xff08;工作距离&#xff09; 2、像素精度要求检查精度/&#xff08;3-5&#xff09;个像素 3、相机分辨率视野/像素精度 4、芯片尺寸&#xff08;靶面&#xff09;…

工业相机及镜头的相关概念与相机及镜头的选型

工业相机及镜头的相关概念与相机及镜头的选型 一、相机的主要参数 1.像素&#xff08;pixel&#xff09; ​ 像素是图像上的最小组成单元。图像由小方格即像素组成的&#xff0c;这些小方块都有一个明确的位置和被分配的色彩数值&#xff0c;小方格颜色和位置就决定该图像所…