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

培训网站建设方案模板下载百度软件市场

培训网站建设方案模板下载,百度软件市场,天津市住房和城乡建设委员会网站,太原做网站的网络工作室需求分析 在后台中,通过新增功能来添加一个新的菜品,在添加菜品时需要选择当前菜品所属的菜品分类,并且需要上传的菜品图片。 代码开发 需要添加的类和基本接口:实体类DishFlavor、Mapper接口DishFlavorMapper、业务层接口Dish…

需求分析

在后台中,通过新增功能来添加一个新的菜品,在添加菜品时需要选择当前菜品所属的菜品分类,并且需要上传的菜品图片。

代码开发

需要添加的类和基本接口:实体类DishFlavor、Mapper接口DishFlavorMapper、业务层接口DishFlavorService、业务层实现类DishFlavorServiceImpl、控制层DishController

  • 页面发送ajax请求,请求服务器端获取菜品分类数据并展示到下拉框
  • 页面发送请求进行图片上传,请求服务端将图片保存到服务器
  • 页面发送请求进行图片下载,将上传的图片进行回显
  • 点击保存按钮,发送ajax请求,将菜品相关数据以json形式提交到服务端

获取菜品分类列表(下拉框)

// 获取菜品分类列表
const getCategoryList = (params) => {return $axios({url: '/category/list',method: 'get',params})
}

前端发送aiax请求的地址是'/category/list',所以应该在CategoryController中写这个方法
添加菜品功能,通过调试前端发现查看菜品分类没有报错。
在这里插入图片描述在这里插入图片描述

 /*** 根据条件,获取菜品分类列表* @param category* @return*/@GetMapping("/list")public R<List<Category>> list(Category category){//条件构造器LambdaQueryWrapper<Category> queryWrapper = new LambdaQueryWrapper<>();//添加条件queryWrapper.eq(category.getType() != null,Category::getType,category.getType());//添加排序条件 优先使用sort排序 当sort相同的情况下 使用更新时间进行排序queryWrapper.orderByAsc(Category::getSort).orderByDesc(Category::getUpdateTime);List<Category> list = categoryService.list(queryWrapper);return R.success(list);}

排序也是正确的
在这里插入图片描述

上传图片

这里我上传了两次,第一次上传的图片超过了2MB,所以报错了,然后我只能上传大笨狗,上传成功了。下图分别是上传和浏览请求成功的提示。
在这里插入图片描述在这里插入图片描述在这里插入图片描述

接受页面提交的数据

在这里插入图片描述数据格式:
在这里插入图片描述此时save()的参数不能直接使用Dish dish,因为通过前端传送的数据格式可以看到有flavors这个参数。
在这里插入图片描述解决办法:导入DishDto,用于封装页面提交的数据
检查封装的数据是否有问题:
在这里插入图片描述

2023-08-01 10:18:03.969  INFO 8552 --- [nio-8060-exec-2] c.s.reggie.controller.DishController     : DishDto(flavors=[DishFlavor(id=null, dishId=null, name=甜味, value=["无糖","少糖","半糖","多糖","全糖"], createTime=null, updateTime=null, createUser=null, updateUser=null, isDeleted=null), DishFlavor(id=null, dishId=null, name=温度, value=["热饮","常温","去冰","少冰","多冰"], createTime=null, updateTime=null, createUser=null, updateUser=null, isDeleted=null)], categoryName=null, copies=null)

测试代码:

 @PostMappingpublic R<String> save(@RequestBody DishDto dishDto)//记得封装要加RequestBody注解{log.info(dishDto.toString());return null;}

在这里插入图片描述新增大笨狗成功。

/*** 菜品管理*/
@RestController
@RequestMapping("/dish")
@Slf4j
public class DishController {@Autowiredprivate DishService dishService;//菜品服务@Autowiredprivate DishFlavorService dishFlavorService;//菜品口味@PostMappingpublic R<String> save(@RequestBody DishDto dishDto)//记得封装要加RequestBody注解{log.info(dishDto.toString());dishService.saveWithFlavor(dishDto);return R.success("新增菜品成功...");}
package com.springboot.reggie.service.impl;import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.springboot.reggie.dto.DishDto;
import com.springboot.reggie.entity.Dish;
import com.springboot.reggie.entity.DishFlavor;
import com.springboot.reggie.mapper.DishMapper;
import com.springboot.reggie.service.DishFlavorService;
import com.springboot.reggie.service.DishService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import java.util.List;
import java.util.stream.Collectors;@Service
@Slf4jpublic class DishServiceImpl extends ServiceImpl<DishMapper, Dish> implements DishService {@Autowiredprivate DishFlavorService dishFlavorService;/*** 新增菜品 同时保存对应的口味* @param dishDto*/@Transactional //需要加上事务控制 因为涉及到多张表的操作public void saveWithFlavor(DishDto dishDto){//保存菜品的基本信息到菜品表this.save(dishDto);Long dishId = dishDto.getId();//给菜品id赋值//菜品口味List<DishFlavor> flavors = dishDto.getFlavors();flavors =  flavors.stream().map((item)->{item.setDishId(dishId);return  item;}).collect(Collectors.toList());//保存菜品口味数据到菜品口味表dishFlavorService.saveBatch(flavors);}}
http://www.zhongyajixie.com/news/25885.html

相关文章:

  • 自学网站建设工资乐陵seo外包
  • 北京app网站建设谷歌chrome浏览器
  • 个人免费域名空间建站百度排名服务
  • 学校校园网站建设服务舆情信息
  • 新手搭建网站教程关键词查网址
  • 太原网站运营优化免费建站哪个网站最好
  • 无后台网站的维护seo优化一般多少钱
  • 网站如何做优化排名网络营销解释
  • 友情链接对网站的作用适合小学生摘抄的新闻2022年
  • 百度有没有做游戏下载网站吗美业推广平台
  • 工信部网站实名认证怎么做新手怎样做网络推广
  • 做网站跟桌面程序差别大吗谷歌在线浏览器免费入口
  • 佛山网络优化推广公司宁波seo怎么做推广渠道
  • 常见网站建设公司术语市场调研的方法有哪些
  • 怎样查公司注册信息查询百度seo泛解析代发排名
  • wordpress 3麒麟seo外推软件
  • 网站建设和销售有关吗北京seo优化分析
  • 做一款网站注意啥seo关键词选取工具
  • 品牌营销策划网站外贸网站平台都有哪些
  • b站推广mmmm自己有产品怎么网络销售
  • ps做网站顶部seo是怎么优化上去
  • wordpress阅读次数seo关键词优化培训
  • 如何在ftp给网站做百度自动推送互联网营销策划是做什么的
  • 常州网站制作包括哪些怎么推广销售
  • 网站模版购买创意营销策划方案
  • 做外贸相关的网站互联网舆情信息
  • 长沙网站建设哪家最好河南品牌网络推广外包
  • 网站收录有什么好处最有效的广告宣传方式
  • 水陆运输类网站如何建设电商平台推广费用大概要多少
  • 网站建设的价值体现在哪一媒体app软件下载老版本