diff --git a/pom.xml b/pom.xml index b10da2e..8a4b6f2 100644 --- a/pom.xml +++ b/pom.xml @@ -98,7 +98,6 @@ aliyun-sdk-oss ${aliyun.sdk.oss} - javax.xml.bind jaxb-api @@ -122,6 +121,7 @@ wechatpay-apache-httpclient 0.4.8 + diff --git a/sky-server/pom.xml b/sky-server/pom.xml index 3f5d194..854a620 100644 --- a/sky-server/pom.xml +++ b/sky-server/pom.xml @@ -123,6 +123,10 @@ pagehelper-spring-boot-starter 1.4.2 + + org.springframework.boot + spring-boot-starter-data-redis + diff --git a/sky-server/src/main/java/com/sky/config/RedisConfiguration.java b/sky-server/src/main/java/com/sky/config/RedisConfiguration.java new file mode 100644 index 0000000..ac62fec --- /dev/null +++ b/sky-server/src/main/java/com/sky/config/RedisConfiguration.java @@ -0,0 +1,23 @@ +package com.sky.config; + +import lombok.extern.slf4j.Slf4j; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.data.redis.connection.RedisConnectionFactory; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.serializer.StringRedisSerializer; + +@Configuration +@Slf4j +public class RedisConfiguration { + @Bean + public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){ + log.info("开始创建redis模板对象"); + RedisTemplate redisTemplate=new RedisTemplate(); + //设置redis的连接工厂对象 连接工厂负责创建与 Redis 服务器的连接 + redisTemplate.setConnectionFactory(redisConnectionFactory); + //设置redis key的序列化器 这意味着所有通过这个RedisTemplate实例存储的键都将被转换为字符串格式存储在Redis中 + redisTemplate.setKeySerializer(new StringRedisSerializer()); + return redisTemplate; + } +} diff --git a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java index 0176c44..35cbf80 100644 --- a/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java +++ b/sky-server/src/main/java/com/sky/config/WebMvcConfiguration.java @@ -47,21 +47,37 @@ public class WebMvcConfiguration extends WebMvcConfigurationSupport { * @return */ @Bean - public Docket docket() { + public Docket docket1() { ApiInfo apiInfo = new ApiInfoBuilder() .title("苍穹外卖项目接口文档") .version("2.0") .description("苍穹外卖项目接口文档") .build(); Docket docket = new Docket(DocumentationType.SWAGGER_2) + .groupName("管理端") .apiInfo(apiInfo) .select() - .apis(RequestHandlerSelectors.basePackage("com.sky.controller")) + .apis(RequestHandlerSelectors.basePackage("com.sky.controller.admin")) + .paths(PathSelectors.any()) + .build(); + return docket; + } + @Bean + public Docket docket2() { + ApiInfo apiInfo = new ApiInfoBuilder() + .title("苍穹外卖项目接口文档") + .version("2.0") + .description("苍穹外卖项目接口文档") + .build(); + Docket docket = new Docket(DocumentationType.SWAGGER_2) + .groupName("用户端") + .apiInfo(apiInfo) + .select() + .apis(RequestHandlerSelectors.basePackage("com.sky.controller.user")) .paths(PathSelectors.any()) .build(); return docket; } - /** * 设置静态资源映射 * @param registry diff --git a/sky-server/src/main/java/com/sky/controller/admin/DishController.java b/sky-server/src/main/java/com/sky/controller/admin/DishController.java index dcaef20..29d9496 100644 --- a/sky-server/src/main/java/com/sky/controller/admin/DishController.java +++ b/sky-server/src/main/java/com/sky/controller/admin/DishController.java @@ -12,6 +12,8 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.List; + @RestController @RequestMapping("/admin/dish") @Slf4j @@ -51,4 +53,17 @@ public class DishController { dishService.update(dishDTO); return Result.success(); } + @PostMapping("/status/{status}") + @ApiOperation("菜品起售/停售") + public Result startOrStop(@PathVariable("status") Integer status, Long id){ + dishService.startOrStop(status,id); + return Result.success(); + } + @GetMapping("/list") + @ApiOperation("根据分类id查询菜品") + public Result> list(Long categoryId){ + List dishList=dishService.list(categoryId); + return Result.success(dishList); + } + } diff --git a/sky-server/src/main/java/com/sky/controller/admin/SetmealController.java b/sky-server/src/main/java/com/sky/controller/admin/SetmealController.java new file mode 100644 index 0000000..d16cabf --- /dev/null +++ b/sky-server/src/main/java/com/sky/controller/admin/SetmealController.java @@ -0,0 +1,61 @@ +package com.sky.controller.admin; + +import com.sky.dto.SetmealDTO; +import com.sky.dto.SetmealPageQueryDTO; +import com.sky.result.PageResult; +import com.sky.result.Result; +import com.sky.service.SetmealService; +import com.sky.vo.SetmealVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@Slf4j +@Api("套餐相关接口") +@RequestMapping("/admin/setmeal") +public class SetmealController { + @Autowired + private SetmealService setmealService; + + @PostMapping + @ApiOperation("新增套餐") + public Result addSetmeal(@RequestBody SetmealDTO setmealDTO){ + log.info("新增套餐"); + setmealService.addSetmeal(setmealDTO); + return Result.success(); + } + @GetMapping("/page") + @ApiOperation("套餐分页查询") + public Result page(SetmealPageQueryDTO setmealPageQueryDTO){ + PageResult pageResult=setmealService.pageQuery(setmealPageQueryDTO); + return Result.success(pageResult); + } + @DeleteMapping + @ApiOperation("删除套餐") + public Result deleteByIds(@RequestParam Long[] ids){ + log.info("删除套餐"); + setmealService.deleteBatch(ids); + return Result.success(); + } + @GetMapping("/{id}") + @ApiOperation("根据id查询套餐") + public Result getById(@PathVariable Long id) { + SetmealVO setmealVO = setmealService.getByIdWithDish(id); + return Result.success(setmealVO); + } + @PutMapping + @ApiOperation("修改套餐") + public Result update(@RequestBody SetmealDTO setmealDTO) { + setmealService.update(setmealDTO); + return Result.success(); + } + @PostMapping("/status/{status}") + @ApiOperation("套餐起售停售") + public Result startOrStop(@PathVariable Integer status, Long id) { + setmealService.startOrStop(status, id); + return Result.success(); + } +} diff --git a/sky-server/src/main/java/com/sky/controller/admin/ShopController.java b/sky-server/src/main/java/com/sky/controller/admin/ShopController.java new file mode 100644 index 0000000..4700b78 --- /dev/null +++ b/sky-server/src/main/java/com/sky/controller/admin/ShopController.java @@ -0,0 +1,34 @@ +package com.sky.controller.admin; + +import com.sky.result.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.web.bind.annotation.*; + +@RestController("adminShopController") +@RequestMapping("/admin/shop") +@Api(tags = "店铺相关接口") +@Slf4j +public class ShopController { + public static final String KEY="SHOP_STATUS"; + + @Autowired + private RedisTemplate redisTemplate; + @PutMapping("/{status}") + @ApiOperation("设置店铺营业状态") + public Result setStatus(@PathVariable Integer status){ + log.info("设置店铺的营业状态:{}",status==1? "营业中":"打烊中"); + redisTemplate.opsForValue().set(KEY,status); + return Result.success(); + } + @GetMapping("/status") + @ApiOperation("获取店铺营业状态") + public Result getStatus(){ + Integer status= (Integer) redisTemplate.opsForValue().get(KEY); + log.info("获取店铺的营业状态:{}",status==1? "营业中":"打烊中"); + return Result.success(status); + } +} diff --git a/sky-server/src/main/java/com/sky/controller/user/ShopController.java b/sky-server/src/main/java/com/sky/controller/user/ShopController.java new file mode 100644 index 0000000..4269256 --- /dev/null +++ b/sky-server/src/main/java/com/sky/controller/user/ShopController.java @@ -0,0 +1,27 @@ +package com.sky.controller.user; + +import com.sky.result.Result; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.web.bind.annotation.*; + +@RestController("userShopController") +@RequestMapping("/user/shop") +@Api(tags = "店铺相关接口") +@Slf4j +public class ShopController { + public static final String KEY="SHOP_STATUS"; + @Autowired + private RedisTemplate redisTemplate; + + @GetMapping("/status") + @ApiOperation("获取店铺营业状态") + public Result getStatus(){ + Integer status= (Integer) redisTemplate.opsForValue().get(KEY); + log.info("获取店铺的营业状态:{}",status==1? "营业中":"打烊中"); + return Result.success(status); + } +} diff --git a/sky-server/src/main/java/com/sky/mapper/DishMapper.java b/sky-server/src/main/java/com/sky/mapper/DishMapper.java index 22e42ff..fe03304 100644 --- a/sky-server/src/main/java/com/sky/mapper/DishMapper.java +++ b/sky-server/src/main/java/com/sky/mapper/DishMapper.java @@ -16,11 +16,21 @@ public interface DishMapper { @AutoFill(OperationType.INSERT) void insert(Dish dish); + /** + * 分类查询 + * @param dishPageQueryDTO + * @return + */ List list(DishPageQueryDTO dishPageQueryDTO); + @Select("select * from dish where id=#{id}") Dish queryById(Long id); @Delete("delete from dish where id=#{id}") void deleteById(Long id); @AutoFill(OperationType.UPDATE) void update(Dish dish); + @Select("select * from dish where category_id=#{categoryId}") + List listByType(Long categoryId); + @Select("select a.* from dish a left join setmeal_dish b on a.id = b.dish_id where b.setmeal_id = #{setmealId}") + List getBySetmealId(Long setmealId); } diff --git a/sky-server/src/main/java/com/sky/mapper/SetmealMapper.java b/sky-server/src/main/java/com/sky/mapper/SetmealMapper.java new file mode 100644 index 0000000..b9e2586 --- /dev/null +++ b/sky-server/src/main/java/com/sky/mapper/SetmealMapper.java @@ -0,0 +1,26 @@ +package com.sky.mapper; + +import com.sky.annotation.AutoFill; +import com.sky.dto.SetmealPageQueryDTO; +import com.sky.entity.Setmeal; +import com.sky.enumeration.OperationType; +import com.sky.vo.SetmealVO; +import org.apache.ibatis.annotations.Delete; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +@Mapper +public interface SetmealMapper { + @AutoFill(OperationType.INSERT) + void insert(Setmeal setmeal); + + List queryByCond(SetmealPageQueryDTO setmealPageQueryDTO); + @Select("select * from setmeal where id=#{id}") + Setmeal getById(Long id); + @Delete("delete from setmeal where id=#{id};") + void deleteById(Long id); + @AutoFill(OperationType.UPDATE) + void update(Setmeal setmeal); +} diff --git a/sky-server/src/main/java/com/sky/mapper/Setmeal_dishMapper.java b/sky-server/src/main/java/com/sky/mapper/Setmeal_dishMapper.java index 76884a1..7b79e7f 100644 --- a/sky-server/src/main/java/com/sky/mapper/Setmeal_dishMapper.java +++ b/sky-server/src/main/java/com/sky/mapper/Setmeal_dishMapper.java @@ -1,11 +1,21 @@ package com.sky.mapper; import com.sky.entity.SetmealDish; +import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; +import java.util.List; + @Mapper public interface Setmeal_dishMapper { - @Select("select * from setmeal_dish where dish_id=#{id}") - SetmealDish queryByDishId(Long id); + @Select("select setmeal_id from setmeal_dish where dish_id=#{id}") + List queryByDishId(Long id); + + void add(SetmealDish setmealDish); + @Delete("delete from setmeal_dish where setmeal_id=#{id}") + void deleteByDishId(Long id); + + @Select("select * from setmeal_dish where setmeal_id = #{setmealId}") + List getBySetmealId(Long setmealId); } diff --git a/sky-server/src/main/java/com/sky/service/DishService.java b/sky-server/src/main/java/com/sky/service/DishService.java index bf3b8a1..dd7705d 100644 --- a/sky-server/src/main/java/com/sky/service/DishService.java +++ b/sky-server/src/main/java/com/sky/service/DishService.java @@ -2,9 +2,12 @@ package com.sky.service; import com.sky.dto.DishDTO; import com.sky.dto.DishPageQueryDTO; +import com.sky.entity.Dish; import com.sky.result.PageResult; import com.sky.vo.DishVO; +import java.util.List; + public interface DishService { void addDish(DishDTO dishDTO); @@ -15,4 +18,8 @@ public interface DishService { DishVO queryByIdWithFlavor(Long id); void update(DishDTO dishDTO); + + void startOrStop(Integer status, Long id); + + List list(Long categoryId); } diff --git a/sky-server/src/main/java/com/sky/service/SetmealService.java b/sky-server/src/main/java/com/sky/service/SetmealService.java new file mode 100644 index 0000000..0d30301 --- /dev/null +++ b/sky-server/src/main/java/com/sky/service/SetmealService.java @@ -0,0 +1,25 @@ +package com.sky.service; + +import com.sky.dto.SetmealDTO; +import com.sky.dto.SetmealPageQueryDTO; +import com.sky.result.PageResult; +import com.sky.vo.SetmealVO; + +public interface SetmealService { + void addSetmeal(SetmealDTO setmealDTO); + + PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO); + + void deleteBatch(Long[] ids); + + SetmealVO getByIdWithDish(Long id); + + + /** + * 修改套餐 + * @param setmealDTO + */ + void update(SetmealDTO setmealDTO); + + void startOrStop(Integer status, Long id); +} diff --git a/sky-server/src/main/java/com/sky/service/impl/DishServiceImpl.java b/sky-server/src/main/java/com/sky/service/impl/DishServiceImpl.java index 3117279..14c814d 100644 --- a/sky-server/src/main/java/com/sky/service/impl/DishServiceImpl.java +++ b/sky-server/src/main/java/com/sky/service/impl/DishServiceImpl.java @@ -8,10 +8,13 @@ import com.sky.dto.DishDTO; import com.sky.dto.DishPageQueryDTO; import com.sky.entity.Dish; import com.sky.entity.DishFlavor; +import com.sky.entity.Setmeal; import com.sky.entity.SetmealDish; import com.sky.exception.DeletionNotAllowedException; +import com.sky.exception.SetmealEnableFailedException; import com.sky.mapper.DishFlavorMapper; import com.sky.mapper.DishMapper; +import com.sky.mapper.SetmealMapper; import com.sky.mapper.Setmeal_dishMapper; import com.sky.result.PageResult; import com.sky.service.DishService; @@ -31,6 +34,8 @@ public class DishServiceImpl implements DishService { private DishFlavorMapper dishFlavorMapper; @Autowired private Setmeal_dishMapper setmeal_dishMapper; + @Autowired + private SetmealMapper setmealMapper; @Override public void addDish(DishDTO dishDTO) { Dish dish=new Dish(); @@ -61,8 +66,8 @@ public class DishServiceImpl implements DishService { if(dish.getStatus()== StatusConstant.ENABLE) throw new DeletionNotAllowedException(MessageConstant.DISH_ON_SALE); else{ - SetmealDish setmealDish=setmeal_dishMapper.queryByDishId(id); - if(setmealDish!=null) + List setmealids=setmeal_dishMapper.queryByDishId(id); + if(setmealids!=null && setmealids.size() > 0) throw new DeletionNotAllowedException(MessageConstant.DISH_BE_RELATED_BY_SETMEAL); else { dishMapper.deleteById(id); @@ -97,4 +102,28 @@ public class DishServiceImpl implements DishService { dishFlavorMapper.insertBatch(flavors); } } + + @Override + public void startOrStop(Integer status, Long id) { + Dish dish=new Dish(); + dish.setId(id); + dish.setStatus(status); + if(status==StatusConstant.DISABLE){ //如果菜品停售,正在起售的套餐也要停售 + List setmealids=setmeal_dishMapper.queryByDishId(id); + for(Long setmealid:setmealids){ + Setmeal setmeal=setmealMapper.getById(setmealid); + if(StatusConstant.ENABLE == setmeal.getStatus()){ //若菜品停售,则套餐起售失败! + setmeal.setStatus(StatusConstant.DISABLE); + setmealMapper.update(setmeal); + } + } + } + dishMapper.update(dish); + } + + @Override + public List list(Long categoryId) { + List dishList=dishMapper.listByType(categoryId); + return dishList; + } } diff --git a/sky-server/src/main/java/com/sky/service/impl/SetmealServiceImpl.java b/sky-server/src/main/java/com/sky/service/impl/SetmealServiceImpl.java new file mode 100644 index 0000000..45766b7 --- /dev/null +++ b/sky-server/src/main/java/com/sky/service/impl/SetmealServiceImpl.java @@ -0,0 +1,129 @@ +package com.sky.service.impl; + +import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; +import com.sky.constant.MessageConstant; +import com.sky.constant.StatusConstant; +import com.sky.dto.SetmealDTO; +import com.sky.dto.SetmealPageQueryDTO; +import com.sky.entity.Dish; +import com.sky.entity.Setmeal; +import com.sky.entity.SetmealDish; +import com.sky.exception.DeletionNotAllowedException; +import com.sky.exception.SetmealEnableFailedException; +import com.sky.mapper.DishMapper; +import com.sky.mapper.SetmealMapper; +import com.sky.mapper.Setmeal_dishMapper; +import com.sky.result.PageResult; +import com.sky.service.SetmealService; +import com.sky.vo.SetmealVO; +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; + +@Service +public class SetmealServiceImpl implements SetmealService { + @Autowired + private SetmealMapper setmealMapper; + @Autowired + private Setmeal_dishMapper setmeal_dishMapper; + @Autowired + private DishMapper dishMapper; + @Override + public void addSetmeal(SetmealDTO setmealDTO) { + Setmeal setmeal=new Setmeal(); + BeanUtils.copyProperties(setmealDTO,setmeal); + setmealMapper.insert(setmeal); + List setmealDishList =setmealDTO.getSetmealDishes(); + for(SetmealDish setmealDish:setmealDishList){ + setmealDish.setSetmealId(setmeal.getId()); + setmeal_dishMapper.add(setmealDish); + } + } + + @Override + public PageResult pageQuery(SetmealPageQueryDTO setmealPageQueryDTO) { + PageHelper.startPage(setmealPageQueryDTO.getPage(),setmealPageQueryDTO.getPageSize()); + List setmealVOList=setmealMapper.queryByCond(setmealPageQueryDTO); + Page p= (Page) setmealVOList; + PageResult pageResult=new PageResult(p.getTotal(),p.getResult()); + return pageResult; + } + + @Override + @Transactional + public void deleteBatch(Long[] ids) { + for(Long id:ids){ + Setmeal setmeal = setmealMapper.getById(id); + if(StatusConstant.ENABLE == setmeal.getStatus()){ + //起售中的套餐不能删除 + throw new DeletionNotAllowedException(MessageConstant.SETMEAL_ON_SALE); + } + else{ + Long setmealId=id; + setmealMapper.deleteById(id); + setmeal_dishMapper.deleteByDishId(id); + } + } + } + + @Override + public SetmealVO getByIdWithDish(Long id) { + Setmeal setmeal = setmealMapper.getById(id); + List setmealDishes = setmeal_dishMapper.getBySetmealId(id); + SetmealVO setmealVO = new SetmealVO(); + BeanUtils.copyProperties(setmeal, setmealVO); + setmealVO.setSetmealDishes(setmealDishes); + + return setmealVO; + } + + @Override + public void update(SetmealDTO setmealDTO) { + Setmeal setmeal = new Setmeal(); + BeanUtils.copyProperties(setmealDTO, setmeal); + + //1、修改套餐表,执行update + setmealMapper.update(setmeal); + + //套餐id + Long setmealId = setmealDTO.getId(); + + //2、删除套餐和菜品的关联关系,操作setmeal_dish表,执行delete + setmeal_dishMapper.deleteByDishId(setmealId); + + List setmealDishes = setmealDTO.getSetmealDishes(); + setmealDishes.forEach(setmealDish -> { + setmealDish.setSetmealId(setmealId); + }); + //3、重新插入套餐和菜品的关联关系,操作setmeal_dish表,执行insert + for(SetmealDish setmealDish:setmealDishes){ + setmeal_dishMapper.add(setmealDish); + } + } + + @Override + public void startOrStop(Integer status, Long id) { + //起售套餐时,判断套餐内是否有停售菜品,有停售菜品提示"套餐内包含未启售菜品,无法启售" + if(status == StatusConstant.ENABLE){ + //select a.* from dish a left join setmeal_dish b on a.id = b.dish_id where b.setmeal_id = ? + List dishList = dishMapper.getBySetmealId(id); + if(dishList != null && dishList.size() > 0){ + dishList.forEach(dish -> { + if(StatusConstant.DISABLE == dish.getStatus()){ //若菜品停售,则套餐起售失败! + throw new SetmealEnableFailedException(MessageConstant.SETMEAL_ENABLE_FAILED); + } + }); + } + } + + Setmeal setmeal = Setmeal.builder() + .id(id) + .status(status) + .build(); + setmealMapper.update(setmeal); + } +} diff --git a/sky-server/src/main/resources/application-dev.yml b/sky-server/src/main/resources/application-dev.yml index 41fb2b2..f87f08f 100644 --- a/sky-server/src/main/resources/application-dev.yml +++ b/sky-server/src/main/resources/application-dev.yml @@ -6,6 +6,11 @@ sky: database: sky_take_out username: root password: 123456 + redis: + host: localhost + port: 6379 + auth: 123456 + database: 0 alioss: access-key-id: LTAI5tR43XPATPy2NwTSiTqY diff --git a/sky-server/src/main/resources/application.yml b/sky-server/src/main/resources/application.yml index 30cf104..fc0acc6 100644 --- a/sky-server/src/main/resources/application.yml +++ b/sky-server/src/main/resources/application.yml @@ -12,6 +12,11 @@ spring: url: jdbc:mysql://${sky.datasource.host}:${sky.datasource.port}/${sky.datasource.database}?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowPublicKeyRetrieval=true username: ${sky.datasource.username} password: ${sky.datasource.password} + redis: + host: ${sky.redis.host} + port: ${sky.redis.port} + auth: ${sky.redis.auth} + database: ${sky.redis.database} mybatis: #mapper配置文件 diff --git a/sky-server/src/main/resources/mapper/SetmealMapper.xml b/sky-server/src/main/resources/mapper/SetmealMapper.xml new file mode 100644 index 0000000..71682c5 --- /dev/null +++ b/sky-server/src/main/resources/mapper/SetmealMapper.xml @@ -0,0 +1,32 @@ + + + + + + insert into setmeal (name, category_id, price, image ,description, create_time, update_time, create_user,update_user, status) + values (#{name}, #{categoryId}, #{price}, #{image}, #{description}, #{createTime}, #{updateTime}, #{createUser}, #{updateUser}, #{status}) + + + update setmeal + + name=#{name}, + category_id=#{categoryId}, + price=#{price}, + image=#{image}, + description=#{description}, + status = #{status}, + update_time = #{updateTime}, + update_user = #{updateUser}, + + where id=#{id} + + + \ No newline at end of file diff --git a/sky-server/src/main/resources/mapper/Setmeal_dishMapper.xml b/sky-server/src/main/resources/mapper/Setmeal_dishMapper.xml new file mode 100644 index 0000000..3016750 --- /dev/null +++ b/sky-server/src/main/resources/mapper/Setmeal_dishMapper.xml @@ -0,0 +1,10 @@ + + + + + + insert into setmeal_dish (setmeal_id,dish_id,name,price,copies) + values (#{setmealId},#{dishId},#{name},#{price},#{copies}) + + \ No newline at end of file