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

那些网站可以做0首付分期手机北京网站开发哪家好薇

那些网站可以做0首付分期手机,北京网站开发哪家好薇,苏州做网站的公司有哪些,wordpress 多级分类需求分析 在菜品管理列表页面点击修改按钮,跳转到修改页面,在修改页面回显菜品相关信息并进行修改,在最后点击确定按钮完成修改操作 代码设计 页面发送ajax请求,请求服务端获取分类数据,用于菜品分类下拉框中数据显…

需求分析

在菜品管理列表页面点击修改按钮,跳转到修改页面,在修改页面回显菜品相关信息并进行修改,在最后点击确定按钮完成修改操作

代码设计

  • 页面发送ajax请求,请求服务端获取分类数据,用于菜品分类下拉框中数据显示
  • 页面发送ajax请求,请求服务端,根据id查询当前菜品信息,用于菜品信息回显
  • 页面发送请求,请求服务端进行图片下载,用于页面图片回显
  • 点击保存按钮,页面发送ajax请求,将修改后的菜品相关数据以json形式提交到服务端

wrong code

@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);}/*** 根据id查询菜品信息以及对应的口味信息* @param id* @return*/public DishDto getByIdWithFlavor(Long id){//查询菜品基本信息 dishDish dish = this.getById(id);DishDto dishDto = new DishDto();BeanUtils.copyProperties(dish,dishDto);//查询当前菜品对应的口味信息 从dish_falvor查询LambdaQueryWrapper<DishFlavor> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(DishFlavor::getDishId,dish.getId());List<DishFlavor> flavors =  dishFlavorService.list(queryWrapper);dishDto.setFlavors(flavors);return dishDto;}@Override@Transactionalpublic void updateWithFlavor(DishDto dishDto) {//更新dish表基本信息this.updateById(dishDto);//清理当前菜品对应口味数据---dish_flavor表的delete操作LambdaQueryWrapper<DishFlavor> queryWrapper = new LambdaQueryWrapper();queryWrapper.eq(DishFlavor::getDishId,dishDto.getId());dishFlavorService.remove(queryWrapper);//添加当前提交过来的口味数据---dish_flavor表的insert操作List<DishFlavor> flavors = dishDto.getFlavors();flavors = flavors.stream().map((item) -> {item.setDishId(dishDto.getId());return item;}).collect(Collectors.toList());dishFlavorService.saveBatch(flavors);}}
/*** 菜品管理*/
@RestController
@RequestMapping("/dish")
@Slf4j
public class DishController {@Autowiredprivate DishService dishService;//菜品服务@Autowiredprivate DishFlavorService dishFlavorService;//菜品口味@Autowiredprivate CategoryService categoryService;//菜品分类@PostMappingpublic R<String> save(@RequestBody DishDto dishDto)//记得封装要加RequestBody注解{log.info(dishDto.toString());dishService.saveWithFlavor(dishDto);return R.success("新增菜品成功...");}/*** 菜品信息分页查询* @param page* @param pageSize* @param name* @return*/@GetMapping("/page")public R<Page> page(int page, int pageSize,String name){//构造分页构造器对象Page<Dish> pageInfo = new Page<>(page,pageSize);Page<DishDto> dishDtoPage = new Page<>();//条件构造器LambdaQueryWrapper<Dish> queryWrapper = new LambdaQueryWrapper<>();//添加过滤条件//使用模糊查询queryWrapper.like(name != null,Dish::getName,name);//添加排序条件 根据更新时间进行降序排序queryWrapper.orderByDesc(Dish::getUpdateTime);//执行分页查询dishService.page(pageInfo,queryWrapper);//将上面pageInfo对象中的属性拷贝到dishDtoPage中去BeanUtils.copyProperties(pageInfo,dishDtoPage,"records");List<Dish> records = pageInfo.getRecords();List<DishDto> list =  records.stream().map((item)->{DishDto dishDto = new DishDto();BeanUtils.copyProperties(item,dishDto);Long categoryId  =  item.getCategoryId();//分类id//根据id查询分类对象Category category =  categoryService.getById(categoryId);if(category != null){String categoryName = category.getName();dishDto.setCategoryName(categoryName);}return  dishDto;//String categoryName = category.getName();//dishDto.setCategoryName(categoryName);// return  dishDto;}).collect(Collectors.toList());//  List<DishDto> list = null;dishDtoPage.setRecords(list);return R.success(dishDtoPage);}/*** 根据id查询菜品信息和对应的口味信息* @param id* @return*/@GetMapping("/id")public R<DishDto> get(@PathVariable  Long id){DishDto dishDto = dishService.getByIdWithFlavor(id);return R.success(dishDto);}/*** 修改菜品* @param dishDto* @return*/@PutMappingpublic R<String> update(@RequestBody DishDto dishDto){log.info(dishDto.toString());dishService.updateWithFlavor(dishDto);return R.success("修改菜品成功...");}}

找了很久找不到错误,直接用现成的了。。。
在这里插入图片描述

package com.springboot.reggie.controller;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.springboot.reggie.common.R;
import com.springboot.reggie.entity.Employee;
import com.springboot.reggie.service.EmployeeService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.DigestUtils;
import org.springframework.web.bind.annotation.*;import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;@Slf4j
@RestController
@RequestMapping("/employee")
public class EmployeeController {@Autowiredprivate EmployeeService employeeService;/*** 员工登录* @param request* @param employee* @return*/@PostMapping("/login")public R<Employee> login(HttpServletRequest request,@RequestBody Employee employee){//1、将页面提交的密码password进行md5加密处理String password = employee.getPassword();password = DigestUtils.md5DigestAsHex(password.getBytes());//2、根据页面提交的用户名username查询数据库LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(Employee::getUsername,employee.getUsername());Employee emp = employeeService.getOne(queryWrapper);//3、如果没有查询到则返回登录失败结果if(emp == null){return R.error("登录失败");}//4、密码比对,如果不一致则返回登录失败结果if(!emp.getPassword().equals(password)){return R.error("登录失败");}//5、查看员工状态,如果为已禁用状态,则返回员工已禁用结果if(emp.getStatus() == 0){return R.error("账号已禁用");}//6、登录成功,将员工id存入Session并返回登录成功结果request.getSession().setAttribute("employee",emp.getId());return R.success(emp);}/*** 员工退出* @param request* @return*/@PostMapping("/logout")public R<String> logout(HttpServletRequest request){//清理Session中保存的当前登录员工的idrequest.getSession().removeAttribute("employee");return R.success("退出成功");}/*** 新增员工* @param employee* @return*/@PostMappingpublic R<String> save(HttpServletRequest request,@RequestBody Employee employee){log.info("新增员工,员工信息:{}",employee.toString());//设置初始密码123456,需要进行md5加密处理employee.setPassword(DigestUtils.md5DigestAsHex("123456".getBytes()));// employee.setCreateTime(LocalDateTime.now());//employee.setUpdateTime(LocalDateTime.now());//获得当前登录用户的id//Long empId = (Long) request.getSession().getAttribute("employee");//employee.setCreateUser(empId);//employee.setUpdateUser(empId);employeeService.save(employee);return R.success("新增员工成功");}/*** 员工信息分页查询* @param page* @param pageSize* @param name* @return*/@GetMapping("/page")public R<Page> page(int page,int pageSize,String name){log.info("page = {},pageSize = {},name = {}" ,page,pageSize,name);//构造分页构造器Page pageInfo = new Page(page,pageSize);//构造条件构造器LambdaQueryWrapper<Employee> queryWrapper = new LambdaQueryWrapper();//添加过滤条件queryWrapper.like(StringUtils.isNotEmpty(name),Employee::getName,name);//添加排序条件queryWrapper.orderByDesc(Employee::getUpdateTime);//执行查询employeeService.page(pageInfo,queryWrapper);return R.success(pageInfo);}/*** 根据id修改员工信息* @param employee* @return*/@PutMappingpublic R<String> update(HttpServletRequest request,@RequestBody Employee employee){log.info(employee.toString());//Long empId = (Long)request.getSession().getAttribute("employee");// employee.setUpdateTime(LocalDateTime.now());//employee.setUpdateUser(empId);employeeService.updateById(employee);return R.success("员工信息修改成功");}/*** 根据id查询员工信息* @param id* @return*/@GetMapping("/{id}")public R<Employee> getById(@PathVariable Long id){log.info("根据id查询员工信息...");Employee employee = employeeService.getById(id);if(employee != null){return R.success(employee);}return R.error("没有查询到对应员工信息");}
}
package com.springboot.reggie.service.impl;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.BeanUtils;
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
@Slf4j
public class DishServiceImpl extends ServiceImpl<DishMapper,Dish> implements DishService {@Autowiredprivate DishFlavorService dishFlavorService;/*** 新增菜品,同时保存对应的口味数据* @param dishDto*/@Transactionalpublic void saveWithFlavor(DishDto dishDto) {//保存菜品的基本信息到菜品表dishthis.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());//保存菜品口味数据到菜品口味表dish_flavordishFlavorService.saveBatch(flavors);}/*** 根据id查询菜品信息和对应的口味信息* @param id* @return*/public DishDto getByIdWithFlavor(Long id) {//查询菜品基本信息,从dish表查询Dish dish = this.getById(id);DishDto dishDto = new DishDto();BeanUtils.copyProperties(dish,dishDto);//查询当前菜品对应的口味信息,从dish_flavor表查询LambdaQueryWrapper<DishFlavor> queryWrapper = new LambdaQueryWrapper<>();queryWrapper.eq(DishFlavor::getDishId,dish.getId());List<DishFlavor> flavors = dishFlavorService.list(queryWrapper);dishDto.setFlavors(flavors);return dishDto;}@Override@Transactionalpublic void updateWithFlavor(DishDto dishDto) {//更新dish表基本信息this.updateById(dishDto);//清理当前菜品对应口味数据---dish_flavor表的delete操作LambdaQueryWrapper<DishFlavor> queryWrapper = new LambdaQueryWrapper();queryWrapper.eq(DishFlavor::getDishId,dishDto.getId());dishFlavorService.remove(queryWrapper);//添加当前提交过来的口味数据---dish_flavor表的insert操作List<DishFlavor> flavors = dishDto.getFlavors();flavors = flavors.stream().map((item) -> {item.setDishId(dishDto.getId());return item;}).collect(Collectors.toList());dishFlavorService.saveBatch(flavors);}
}
http://www.yayakq.cn/news/868374/

相关文章:

  • 做国外服务器网站医药企业网站建设要哪些备案
  • 企业网站的宣传功能体现在哪里ip域名找网站
  • 设计师网站介绍支持 wordpress
  • 安卓门户网站开发郑州网站开发定制
  • 昆明网站建设哪个公司好免费国内linux服务器
  • 北京免费网站建设模板下载公司年会宣传软文
  • 天津网站建设举措营销策划首选
  • php网站开发和js创意策划是做什么的
  • 中为网站建设摄影作品共享网站开发背景
  • 织梦网站模板安装本地黑龙江省住房和城乡建设部网站
  • 网站 导航条网站 美化
  • 广东建设执业资格中心网站南昌外贸网站建设
  • 卖建材的网站seo信息是什么
  • 用phpmysql做网站wordpress id重置
  • 上海福州路附近做网站的公司长春网站网站推广公司设计
  • 网站关于 模板魏县做网站的
  • 潍坊中小型网站建设公司百度网站前三名权重一般在多少
  • 网站开发工程师代码网站建设项目实施方案
  • 免费网站2021年能用的网址常州市建设局网站6
  • 网站建设广告方案怎么删除建站网站程序
  • 用织梦系统做的2个网站要把它都上传到服务器上吗wordpress底部插件
  • 摄影网站设计报告辽宁建设工程信息网中标通知书
  • 腾达建设集团股份有限公司网站南江移动网站建设
  • 手机怎么自己做网站北京康迪建设监理咨询有限公司网站6
  • 网站备案系统验证码出错好视通视频会议app下载安装
  • 官方网站后台怎样做超链接优化关键词可以选择哪个工具
  • 海晏县公司网站建设潍坊 专业网站建设
  • 张家界网站开发河北建设厅八大员报名网站
  • 如何做起一个网站推广金沙江支付 WordPress
  • 本地dedecms网站北京建筑设计公司排行榜