菜品回显
CategoryController
@GetMapping(name=“根据type查询指定的分类”,value = “/category/list”)
public ResultInfo findCategorybyType(int type){
List list = categoryService.findCategorybyType(type);
return ResultInfo.success(list);
}
CategoryService
// 根据type查询分类列表
List findCategorybyType(int type);
CategoryServiceImpl
// 根据type查询分类列表
@Override
public List findCategorybyType(int type) {
QueryWrapper qw = new QueryWrapper<>();
qw.eq(“type”,type);
List list = categoryMapper.selectList(qw);
return list;
}
新增菜品
DishController
// 新增菜品
@PostMapping(name=“添加菜品”,value = “/dish”)
public ResultInfo addDish(@RequestBody Dish dish){
dishService.addDish(dish);
return ResultInfo.success(null);
}
DishService
// 新增菜品
void addDish(Dish dish);
DishServiceImpl
@Service
@Transactional //添加事务
public class DishServiceImpl implements DishService {
}
开启事务注解
@SpringBootApplication
@MapperScan(“com.itheima.reggie.mapper”)
@Slf4j
@EnableTransactionManagement //开启事务注解
public class WebManageApplication {
public static void main(String[] args) {
SpringApplication.run(WebManageApplication.class,args);
//输入日志
log.info(“服务启动成功啦~~~”);
}
菜品修改
回显
DishController
@GetMapping(name=“回显菜品和口味”,value = “/dish/{id}”)
public ResultInfo showDish(@PathVariable(“id”) long id){
Dish dish=dishService.showDish(id);
return ResultInfo.success(dish);
}
DishService
// 菜品回显
Dish showDish(long id);
DishServiceImpl
@Override
public Dish showDish(long id) {
//查询菜品
Dish dish = dishMapper.selectById(id);
//查询菜品的口味
QueryWrapper qw = new QueryWrapper<>();
qw.eq(“dish_id”,id);
List list = dishFlavorMapper.selectList(qw);
//将口味封装给菜品
dish.setFlavors(list);
return dish;
}
修改菜品信息
// 菜品修改
@PutMapping(name=“修改菜品”,value = “/dish”)
public ResultInfo updateDish(@RequestBody Dish dish){
dishService.updateDish(dish);
return ResultInfo.success(null);
}
DishService
// 菜品修改
void updateDish(Dish dish);
DishServiceImpl
// 菜品修改
@Override
public void updateDish(Dish dish) {
//先修改菜品
dishMapper.updateById(dish);
//删除该菜品以前选择的口味
QueryWrapper qw = new QueryWrapper<>();
qw.eq(“dish_id”,dish.getId());
dishFlavorMapper.delete(qw);
//添加该菜品新修改的口味
List list = dish.getFlavors();
if(list.size()>0){
for (DishFlavor dishFlavor : list) {
dishFlavor.setDishId(dish.getId());
//保存菜品新的口味
dishFlavorMapper.insert(dishFlavor);
}
}
}
菜品删除
DishController
@DeleteMapping(name=“菜品删除/批量删除”,value = “/dish”)
public ResultInfo deleteDish(@RequestParam List ids){
dishService.deleteDish(ids);
return ResultInfo.success(null);
}
DishService
void deleteDish(List ids);
DishServiceImpl
@Override
public void deleteDish(List ids) {
//先删除菜品
dishMapper.deleteBatchIds(ids);
//再删除菜品的口味
QueryWrapper qw = new QueryWrapper<>();
qw.in(“dish_id”,ids);
dishFlavorMapper.delete(qw);
}
菜品起售、停售
DishController
@PostMapping(name=“菜品停售/起售、批量停售/起售”,value = “/dish/status/{zt}”)
public ResultInfo dishStatus(@PathVariable(“zt”) int status,
@RequestParam List ids){
dishService.dishStatus(status,ids);
return ResultInfo.success(null);
}
DishService
void dishStatus(int status, List ids);
DishServiceImpl
@Override
public void dishStatus(int status, List ids) {
//条件修改
//1 设定根据多个id条件
QueryWrapper qw = new QueryWrapper<>();
qw.in(“id”,ids);
//2 修改多个id的菜品状态
Dish dish = new Dish();
dish.setStatus(status);
dishMapper.update(dish,qw);
}