当前位置: 首页 > news >正文

cloud_mall-notes02

1、多条件分页查询page

    @ApiOperation("多条件分页查询xxxx")@GetMapping("page")@PreAuthorize("hasAuthority('模块权限:权限:page')")public ResponseEntity<Page<实体类>> load'xxxx'Page(Page<实体类> page,实体类 domain) {page = 'xxxx'Service.page(page,new LambdaQueryWrapper<实体类>().like(条件).eq(条件).orderByDesc(条件));return ResponseEntity.ok(page);}

=================================================================================================

项目实例:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2、新增save

controller

    @ApiOperation("新增xxxx")@PostMapping@PreAuthorize("hasAuthority('模块权限:权限:save')")@Log(operation = "新增xxxx")public ResponseEntity<Void> save'xxxx'(@RequestBody 实体类 domain) {// 获取当前用户//String userId = AuthUtil.getLoginUserId();//domain.setUserId(Long.valueof(userId));// 执行业务'xxxx'Service.save(domain);// 响应return ResponseEntity.ok().build();}

serviceimpl

	@Override@Transactional(rollbackFor = RuntimeException.class)@CacheEvict(key = xxxConstant.xxx)public boolean save(实体类 domain) {// 1、补充一些信息//1) 时间domain.setCreateTime(new Date());domain.setUpdateTime(new Date());//2) 密码加密(新增用户需要)sysUser.setPassword(passwordEncoder.encode(sysUser.getPassword()));//3) 状态、版本号domain.setStatus(1);domain.setVersion(1);//4) 分类层级domain.setGrade(1);//5) 初始数量为0domain.setXxxCount(0L);// 2、校验和处理// 比如添加用户收货地址时,会判断有没有默认收获地址,没有则默认将该新增地址设置为默认收货地址// 3、将上面补充的信息,利用mybatis新增对象int i = 'xxxx'Mapper.insert(domain);// 4、如果新增这个对象,在表中的属性有多表操作/if (i > 0) {// 比如新增一个用户,这个用户表和角色表还有一个用户角色表(3张表)// 除了操作sys_user表外,还要操作sys_user_role表...}}return i > 0;}

=================================================================================================
项目实例

新增管理员:
在这里插入图片描述
在这里插入图片描述

新增角色:
在这里插入图片描述
在这里插入图片描述

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

新增商品分组标签:
在这里插入图片描述
在这里插入图片描述

 新增商品规格:
在这里插入图片描述
在这里插入图片描述

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

    @Override@Transactional(rollbackFor = RuntimeException.class)public boolean save(Prod prod) {//新增商品对象prod.setShopId(1L);prod.setSoldNum(0);prod.setVersion(0);prod.setCreateTime(new Date());prod.setUpdateTime(new Date());Integer status = prod.getStatus();if (1 == status) {prod.setPutawayTime(new Date());}Prod.DeliveryModeVo deliveryModeVo = prod.getDeliveryModeVo();prod.setDeliveryMode(JSON.toJSONString(deliveryModeVo));int i = prodMapper.insert(prod);if (i > 0) {Long prodId = prod.getProdId();//获取商品sku对象集合List<Sku> skuList = prod.getSkuList();//判断商品sku对象集合是否有值if (!CollectionUtils.isEmpty(skuList) && skuList.size() != 0) {//循环遍历商品sku对象集合skuList.forEach(sku -> {sku.setProdId(prodId);sku.setActualStocks(sku.getStocks());sku.setStocks(0);sku.setVersion(0);sku.setRecTime(new Date());sku.setUpdateTime(new Date());sku.setIsDelete(0);});//批量添加商品sku对象集合skuService.saveBatch(skuList);}//获取商品与分组标签的关系集合List<Long> tagIdList = prod.getTagList();//判断是否有值if (!CollectionUtils.isEmpty(tagIdList) && tagIdList.size() != 0) {//循环遍历List<ProdTagReference> prodTagReferenceList = new ArrayList<>();tagIdList.forEach(tagId -> {ProdTagReference prodTagReference = new ProdTagReference();prodTagReference.setProdId(prodId);prodTagReference.setTagId(tagId);prodTagReference.setShopId(1L);prodTagReference.setStatus(1);prodTagReference.setCreateTime(new Date());prodTagReferenceList.add(prodTagReference);});//批量添加商品与分组标签的关系prodTagReferenceService.saveBatch(prodTagReferenceList);}}return i>0;}

 新增公告:
在这里插入图片描述
在这里插入图片描述

 新增自提点:
在这里插入图片描述
在这里插入图片描述

 新增轮播图:
在这里插入图片描述
在这里插入图片描述

 新增用户收货地址:
在这里插入图片描述
在这里插入图片描述

3、 查询详情info/{…}

查询管理员详情:
在这里插入图片描述
在这里插入图片描述

 查询角色详情:
在这里插入图片描述
在这里插入图片描述

 根据标识查询商品类目详情
在这里插入图片描述

 根据标识查询商品分组标签详情
在这里插入图片描述

 根据标识查询评论详情
在这里插入图片描述

 查询商品详情
在这里插入图片描述
在这里插入图片描述

 查看公告详情
在这里插入图片描述

 查询自提点详情
在这里插入图片描述

 查询收货地址详情
在这里插入图片描述

相关文章:

cloud_mall-notes02

1、多条件分页查询page ApiOperation("多条件分页查询xxxx")GetMapping("page")PreAuthorize("hasAuthority(模块权限:权限:page)")public ResponseEntity<Page<实体类>> loadxxxxPage(Page<实体类> page,实体类 domain) {pag…...

前端轻松实现文件预览(pdf、excel、word、图片)

需求&#xff1a;实现一个在线预览pdf、excel、word、图片等文件的功能。 介绍&#xff1a;支持pdf、xlsx、docx、jpg、png、jpeg。 以下使用Vue3代码实现所有功能&#xff0c;建议以下的预览文件标签可以在外层包裹一层弹窗。 图片预览 iframe标签能够将另一个HTML页面嵌入到…...

docker服务器、以及容器设置自动启动

一、docker服务设置自动启动 查看已启动的服务 systemctl list-units --typeservice 查看是否设置开机启动 systemctl list-unit-files | grep enable设置开机启动 systemctl enable docker.service关闭开机启动 systemctl disable docker.service 二、docker容器设置自…...

k8s集群证书过期后,如何更新k8s证书

对于版本 1.21.5&#xff0c;这是我的解决方案&#xff1a; 步骤1&#xff1a; ssh 到主节点&#xff0c;然后在步骤 2 中检查证书。 步骤2&#xff1a; 运行这个命令&#xff1a;kubeadm certs check-expiration rootkube-master-1:~# kubeadm certs check-expiration [c…...

5.6.webrtc三大线程

那今天呢&#xff1f;我们来介绍一下web rtc的三大线程&#xff0c;那为什么要介绍这三大线程呢&#xff1f;最关键的原因在于web rtc的所有其他线程都是由这三大线程所创建的。那当我们将这三个线程理解清楚之后呢&#xff1f;我们就知道其他线程与它们之间是怎样关系&#xf…...

@Slf4j报错:Not generating field log: A field with same name already exists

错误出处&#xff1a; 错误原因&#xff1a; 同时使用了Slf4j注解以及LittlecLogger private static final LittlecLogger log LittlecLoggerFactory.getLogger(TimeTrackController.class); 修复方法&#xff1a; 将log改为LOG&#xff0c;便于区分&#xff0c;代码即用到了…...

乖宝宠物上市,能否打破外资承包中国宠物口粮的现实

近日&#xff0c;乖宝宠物上市了&#xff0c;这是中国宠物行业成功挂牌的第三家公司。同时&#xff0c;昨日&#xff0c;宠物行业最大的盛事“亚洲宠物展”时隔3年&#xff0c;于昨日在上海成功回归。 这两件事情的叠加可谓是双喜临门&#xff0c;行业能够走到今天实属不易&…...

Ubuntu安装Apache+Php

环境&#xff1a;ubuntu 22.04 虚拟机 首先更新一下 sudo apt-get update sudo apt-get upgrade安装Apache2&#xff1a; sudo apt-get install apache2 输入y&#xff0c;继续。等着他恐龙抗浪抗浪的下载安装就好了 打开浏览器访问http://localhost/ 安装php&#xff1a; …...

open cv学习 (四)图像的几何变换

图像的几何变换 demo1 # dsize实现缩放 import cv2 img cv2.imread("./cat.jpg") dst1 cv2.resize(img, (100, 100)) dst2 cv2.resize(img, (400, 400)) # cv2.imshow("img", img) # cv2.imshow("dst1", dst1) # cv2.imshow("dst2&quo…...

matlab 检测点云中指定尺寸的矩形平面

目录 一、概述1、算法概述2、主要函数二、代码示例三、结果展示四、参数解析输入参数名称-值对应参数输出参数五、参考链接一、概述 1、算法概述 detectRectangularPlanePoints:检测点云中指定尺寸的矩形平面 <...

HCIP——STP配置案例

STP配置案例 一、简介二、实现说明1、华为实现说明2、其他厂商实现 三、STP原理1、协商原则2、角色和状态3、报文格式4、BPDU报文处理流程4.1 BPDU报文的分类4.2 BPDU报文的处理流程4.3 BPDU报文格式 四、使用注意事项五、配置举例1、组网需求2、配置思路3、操作步骤4、配置文件…...

JCTools Mpsc源码详解(二) MpscArrayQueue

MpscArrayQueue是一个固定大小的环形数组队列,继承自ConcurrentCircularArrayQueue MpscArrayQueue的特点: 环形队列底层数据结构为数组有界 看一下MpscArrayQueue的属性(填充类除外)--- //生产者索引 private volatile long producerIndex; //生产者边界 private volatile…...

前端面试的性能优化部分(13)每天10个小知识点

目录 系列文章目录前端面试的性能优化部分&#xff08;1&#xff09;每天10个小知识点前端面试的性能优化部分&#xff08;2&#xff09;每天10个小知识点前端面试的性能优化部分&#xff08;3&#xff09;每天10个小知识点前端面试的性能优化部分&#xff08;4&#xff09;每天…...

C++ STL无序关联式容器(详解)

STL无序关联式容器 继 map、multimap、set、multiset 关联式容器之后&#xff0c;从本节开始&#xff0c;再讲解一类“特殊”的关联式容器&#xff0c;它们常被称为“无序容器”、“哈希容器”或者“无序关联容器”。 注意&#xff0c;无序容器是 C 11 标准才正式引入到 STL 标…...

Python爬虫解析工具之xpath使用详解

文章目录 一、数据解析方式二、xpath介绍三、环境安装1. 插件安装2. 依赖库安装 四、xpath语法五、xpath语法在Python代码中的使用 一、数据解析方式 爬虫抓取到整个页面数据之后&#xff0c;我们需要从中提取出有价值的数据&#xff0c;无用的过滤掉。这个过程称为数据解析&a…...

Linux防火墙报错:Failed to start firewalld.service Unit is masked

Linux防火墙报错&#xff1a;Failed to start firewalld.service: Unit is masked. 1、故障现象&#xff1a; 启动防火墙失败&#xff0c;报错情况如下&#xff1a; systemctl start firewalld # 报错&#xff1a; Failed to start firewalld.service: Unit is masked.原因是…...

前端面试:【Vuex】Vue.js的状态管理利器

嗨&#xff0c;亲爱的Vuex探险家&#xff01;在Vue.js开发的旅程中&#xff0c;有一个强大的状态管理库&#xff0c;那就是Vuex。Vuex是Vue.js的官方状态管理工具&#xff0c;通过State、Mutation、Action和Module等核心概念&#xff0c;协助你轻松管理应用的状态。 1. 什么是V…...

Kotlin协程runBlocking并发launch,Semaphore同步1个launch任务运行

Kotlin协程runBlocking并发launch&#xff0c;Semaphore同步1个launch任务运行 <dependency><groupId>org.jetbrains.kotlinx</groupId><artifactId>kotlinx-coroutines-core</artifactId><version>1.7.3</version><type>pom&…...

c++ Union之妙用

union的作用基本是它里面的变量都用了同一块内存&#xff0c;跟起了别名一样&#xff0c;类型不一样的别名。 基本用法&#xff1a; struct Union{union {float a;int b;};};Union u;u.a 2.0f;std::cout << u.a << "," << u.b << std::endl…...

JSON的处理

1、JSON JSON(JavaScript Object Notation)&#xff1a;是一种轻量级的数据交换格式。 它是基于 ECMAScript 规范的一个子集&#xff0c;采用完全独立于编程语言的文本格式来存储和表示数据。 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写&#…...

光子KANs:电信组件构建的光学神经网络革命

1. 光子KANs&#xff1a;电信组件构建的光学神经网络革命 在AI算力需求爆炸式增长的今天&#xff0c;传统电子计算架构正面临带宽瓶颈和能耗墙的严峻挑战。当我第一次在实验室用示波器测量光学神经网络的响应时间时&#xff0c;23纳秒的延迟让我震惊——这比最好的GPU还要快三个…...

基于MCP协议构建STIBO STEP AI助手:打通企业主数据与自然语言交互

1. 项目概述&#xff1a;一个连接STIBO STEP与AI的桥梁最近在做一个企业级主数据管理&#xff08;MDM&#xff09;的项目&#xff0c;客户用的是STIBO STEP平台&#xff0c;团队内部讨论时&#xff0c;经常需要快速查询某个物料的标准属性、或者验证一个客户主数据的合规性。每…...

Midscene.js完整指南:5分钟掌握视觉驱动的AI自动化测试

Midscene.js完整指南&#xff1a;5分钟掌握视觉驱动的AI自动化测试 【免费下载链接】midscene AI-powered, vision-driven UI automation for every platform. 项目地址: https://gitcode.com/GitHub_Trending/mid/midscene Midscene.js是一款革命性的AI驱动、视觉驱动的…...

Pearcleaner终极指南:5步实现Mac应用彻底卸载,释放宝贵存储空间

Pearcleaner终极指南&#xff1a;5步实现Mac应用彻底卸载&#xff0c;释放宝贵存储空间 【免费下载链接】Pearcleaner A free, source-available and fair-code licensed mac app cleaner 项目地址: https://gitcode.com/gh_mirrors/pe/Pearcleaner 还在为Mac存储空间不…...

量子优化算法与经典算法在Max-Cut问题中的性能对比

1. 量子优化算法与Max-Cut问题概述 Max-Cut问题是图论中一个经典的NP难组合优化问题&#xff0c;其目标是将给定无向图的顶点划分为两个互不相交的子集&#xff0c;使得连接这两个子集的边权重之和最大。这个问题在统计物理、电路设计和网络聚类等领域有广泛应用背景。随着量子…...

AI自动化部署实战:用hermes-setup-skill解决Hermes Agent部署难题

1. 项目概述&#xff1a;让AI助手成为你的自动化部署专家 如果你和我一样&#xff0c;经常在本地或远程服务器上折腾各种AI Agent项目&#xff0c;那么对Hermes Agent这个名字一定不陌生。作为NousResearch推出的一个功能强大的多平台AI助手框架&#xff0c;它能把你的LLM能力…...

Process Explorer|微软官方免费进程神器|吊打系统任务管理器|揪出隐藏恶意软件

电脑莫名卡顿、风扇狂转、文件删不掉&#xff1f;系统任务管理器查不到元凶&#xff1f;试试 Process Explorer—— 微软官方免费进程管理工具&#xff0c;功能碾压自带任务管理器&#xff0c;轻松揪出后台隐藏恶意软件&#xff0c;普通用户也能上手&#xff01; 备用下载 一…...

3分钟搞定!PowerToys中文版终极配置指南,让Windows效率提升300%

3分钟搞定&#xff01;PowerToys中文版终极配置指南&#xff0c;让Windows效率提升300% 【免费下载链接】PowerToys-CN PowerToys Simplified Chinese Translation 微软增强工具箱 自制汉化 项目地址: https://gitcode.com/gh_mirrors/po/PowerToys-CN 你是否曾经面对Po…...

光学邻近校正(OPC)技术:原理、优化与应用

1. 光学邻近校正技术概述在半导体制造的光刻工艺中&#xff0c;光学邻近效应&#xff08;Optical Proximity Effect&#xff09;是影响图案转移精度的主要挑战之一。当特征尺寸缩小到45nm及以下节点时&#xff0c;光衍射和光阻化学反应导致的图案失真变得尤为显著。具体表现为&…...

Claude代码技能库:AI编程辅助的范式转变与工程实践

1. 项目概述&#xff1a;一个面向Claude的代码技能库最近在AI编程辅助的圈子里&#xff0c;一个名为warren618/claude-code-openclaw-skills的项目引起了我的注意。乍一看这个标题&#xff0c;你可能会有点懵——“Claude”是谁&#xff1f;“OpenClaw”又是什么&#xff1f;这…...