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

手机网站模板制作企业网站建设移动

手机网站模板制作,企业网站建设移动,在手机上开发app,长春财经学院是一本还是二本前言 目录 新增套餐 需求分析和设计 代码开发 根据分类id查询菜品 Controller层 Service层 ServiceImpl层 Mapper层 DishMapper.xml 新增套餐 实体类 mapper层 Service层 ServiceImpl层 Mapper层 SetmealMapper.xml setmealDishMapper.xml 套餐分页查询 需求分…

前言

目录

新增套餐

需求分析和设计

代码开发

根据分类id查询菜品

Controller层

Service层

ServiceImpl层

Mapper层

DishMapper.xml

新增套餐

实体类

mapper层

Service层

 ServiceImpl层

Mapper层

SetmealMapper.xml

 setmealDishMapper.xml

套餐分页查询

需求分析和设计

代码开发

设计DTO类

Controller层

Service层

ServiceImpl

Mapper

SetmealMapper.xml

功能测试


   
1--苍穹外卖-SpringBoot项目介绍及环境搭建 详解-CSDN博客

2--苍穹外卖-SpringBoot项目中员工管理 详解(一)-CSDN博客

3--苍穹外卖-SpringBoot项目中员工管理 详解(二)-CSDN博客

4--苍穹外码-SpringBoot项目中分类管理 详解-CSDN博客

5--苍穹外卖-SpringBoot项目中菜品管理 详解(一)-CSDN博客

6--苍穹外卖-SpringBoot项目中菜品管理 详解(二)-CSDN博客

7--苍穹外卖-SpringBoot项目中套餐管理 详解(一)-CSDN博客

8--苍穹外卖-SpringBoot项目中套餐管理 详解(二)-CSDN博客

9--苍穹外卖-SpringBoot项目中Redis的介绍及其使用实例 详解-CSDN博客

10--苍穹外卖-SpringBoot项目中微信登录 详解-CSDN博客

新增套餐

需求分析和设计

 在页面原型中看到

业务规则:

  • 套餐名称必须是唯一的

  • 新增套餐时可以根据情况选择需要添加的菜品

  • 每个套餐必须对应一张图片

接口设计:

  • 根据类型查询分类(已完成)

  • 文件上传(已完成)

  • 新增套餐

  • 根据分类id查询菜品

代码开发

根据分类id查询菜品

Controller层
 //根据分类id查询菜品@GetMapping("/list")@ApiOperation("根据分类id查询菜品")public Result<List<Dish>> getByCategoryId(Long categoryId){log.info("根据分类id查询菜品;{}",categoryId);List<Dish> list=dishService.getByCategoryId(categoryId);return Result.success(list);}
Service层
 //根据分类id查询菜品List<Dish> getByCategoryId(Long categoryId);
ServiceImpl层
//根据分类id查询菜品@Overridepublic List<Dish> getByCategoryId(Long categoryId) {return dishMapper.getByCategoryId(categoryId);}
Mapper层
 //根据分类id查询菜品List<Dish> getByCategoryId(Long categoryId);
DishMapper.xml
  <select id="getByCategoryId" resultType="com.sky.entity.Dish">select *from dishwhere status=1<if test="categoryId!=null">and category_id=#{categoryId}</if>order by create_time desc</select>

新增套餐

实体类

在sky-pojo的DTO中新建SetmealDTO

package com.sky.dto;import com.sky.entity.SetmealDish;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;@Data
public class SetmealDTO implements Serializable {private Long id;//分类idprivate Long categoryId;//套餐名称private String name;//套餐价格private BigDecimal price;//状态 0:停用 1:启用private Integer status;//描述信息private String description;//图片private String image;//套餐菜品关系private List<SetmealDish> setmealDishes = new ArrayList<>();}
mapper层

在sky-server中

//新增套餐@PostMapping@ApiOperation("新增套餐")public Result<String> save(@RequestBody SetmealDTO setmealDTO){log.info("新增套餐:{}",setmealDTO);setmealService.saveWithDish(setmealDTO);return Result.success();}
Service层

在sky-server中

 //新增套餐void saveWithDish(SetmealDTO setmealDTO);
 ServiceImpl层
 //新增套餐@Overridepublic void saveWithDish(SetmealDTO setmealDTO) {Setmeal setmeal = new Setmeal();BeanUtils.copyProperties(setmealDTO,setmeal);//向套餐表中插入1条数据setmealMapper.insert(setmeal);//获取insert语句生成的主键值Long setmealId = setmeal.getId();List<SetmealDish> setmealDishes = setmealDTO.getSetmealDishes();/* setmealDishes.forEach(setmealDish -> {setmealDish.setDishId(setmealId);*/setmealDishes.forEach(setmealDish -> {setmealDish.setDishId(setmealId);});//向套餐关联的菜品表中插入n条数据SetmealDishMapper.insertBatch(setmealDishes);}
Mapper层
 //插入套餐数据@AutoFill(value = OperationType.INSERT)void insert(Setmeal setmeal);
SetmealMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="com.sky.mapper.SetmealMapper"><insert id="insert" useGeneratedKeys="true" keyProperty="id">
insert into setmeal(category_id, name, price, description, image,create_time, update_time, create_user, update_user)
VALUES (#{categoryId},#{name},#{price},#{description},#{image},#{createTime},#{updateTime},#{createUser},#{updateUser})</insert>
</mapper>
 setmealDishMapper.xml
<insert id="insertBatch">insert into setmeal_dish(setmeal_id, dish_id, name, price, copies)VALUES<foreach collection="setmealDishs" item="sd" separator=",">(#{sd.setmealId},#{sd.dishId},#{sd.name},#{sd.price},#{sd.copies})</foreach></insert>

套餐分页查询

需求分析和设计

业务规则:

  • 根据页码展示菜品信息

  • 每页展示10条数据

  • 分页查询时可以根据需要输入套餐名称、套餐分类、套餐状态进行查询

代码开发

设计DTO类

根据菜品分页查询接口定义设计对应的DTO:

在sky-pojo模块中

package com.sky.dto;import lombok.Data;import java.io.Serializable;@Data
public class SetmealPageQueryDTO implements Serializable {private int page;private int pageSize;private String name;//分类idprivate Integer categoryId;//状态 0表示禁用 1表示启用private Integer status;}

Controller层

 //套餐分页查询@GetMapping("/page")@ApiOperation("套餐分页查询")public Result<PageResult> page(SetmealPageQueryDTO setmealPageQueryDTO){log.info("套餐分页查询:{}",setmealPageQueryDTO);PageResult pageResult=setmealService.pageQuery(setmealPageQueryDTO);return Result.success(pageResult);}

Service层

 //套餐分页查询PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO);

ServiceImpl

//套餐分页查询@Overridepublic PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO) {PageHelper.startPage(setmealPageQueryDTO.getPage(),setmealPageQueryDTO.getPageSize());Page<SetmealVO> page=setmealMapper.pageQuery(setmealPageQueryDTO);return new PageResult(page.getTotal(),page.getResult());}

Mapper

 //套餐分页查询Page<SetmealVO> pageQuery(SetmealPageQueryDTO setmealPageQueryDTO);

SetmealMapper.xml

<select id="pageQuery" resultType="com.sky.vo.SetmealVO">select s.*,c.name as categoryName from setmeal s left join category c on s.category_id=c.id<where><if test="name!=null and name!=''">and s.name like concat('%',#{name},'%')</if><if test="categoryId!=null">and s.category_id=#{categoryId}</if><if test="status!=null ">and s.status=#{status}</if></where>order by s.create_time desc</select>

功能测试

http://www.yayakq.cn/news/295758/

相关文章:

  • 建一个营销网站多少钱WordPress无法加载插件js
  • 招商网站设计黄骅贴吧海鲜城
  • 公司网站如何seorp网站自动跳转图片怎么做
  • 网站建设话术宝典e福州首页
  • 网站营销推广网站开发 北京
  • 网文封面制作网站海报设计图片简单
  • 为什么企业网站不是开源系统wordpress如何在文章底部添加目录
  • 精选赣州网站建设免费的平面设计网站
  • 宁波企业网站制作wordpress wp footer
  • 如何创建游戏网站wordpress主页显示博客
  • 广东企业网站seo点击软件织梦网如何把做网站的删掉
  • 宿迁网站seo名城苏州网站
  • 专业企业网站建设多少钱服务西安制作网站的公司有
  • 网站开发项目流程图模板免费视频素材下载的网站
  • 网站开发用什么数据库1.网站开发的详细流程
  • 互联网门户网站模板谷德设计网介绍
  • 建站之星怎么弄相册网站商城建设基本流程
  • 专业网站有哪些平台网络公司的名字
  • 贷款平台推广代理手机网站如何做优化
  • 网站的建设思想网站开发的课程设置
  • 佛山自定义网站建设c2c电子商务网站建设栏目结构图
  • 电商网站增加客户网站建站助手
  • 文创产品创意设计佛山市seo网站设计哪家好
  • dedecms 食品网站模板wordpress后台网址
  • 邯郸网站群晖修改wordpress端口
  • 太仓市住房和城乡建设局网站做网站设置时间
  • 深圳手机网站建设服务如何创建自媒体手机网站
  • 网站设计示例盐城网站建设jsxmt
  • 网站改版引导有什么网站可以兼职做翻译
  • 如何获得网站后台密码网站流量刷