|
@@ -0,0 +1,51 @@
|
|
|
+package com.sky.service.impl;
|
|
|
+
|
|
|
+import com.sky.dto.DishDTO;
|
|
|
+import com.sky.entity.Dish;
|
|
|
+import com.sky.entity.DishFlavor;
|
|
|
+import com.sky.mapper.DishFlavorsMapper;
|
|
|
+import com.sky.mapper.DishMapper;
|
|
|
+import com.sky.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;
|
|
|
+
|
|
|
+@Service
|
|
|
+@Slf4j
|
|
|
+public class DishServiceImpl implements DishService {
|
|
|
+ @Autowired
|
|
|
+ private DishMapper dishMapper;
|
|
|
+ @Autowired
|
|
|
+ private DishFlavorsMapper dishFlavorsMapper;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 新增菜品
|
|
|
+ * @param dishDTO
|
|
|
+ */
|
|
|
+ @Transactional
|
|
|
+ @Override
|
|
|
+ public void saveWithFlavor(DishDTO dishDTO) {
|
|
|
+ Dish dish = new Dish();
|
|
|
+ BeanUtils.copyProperties(dishDTO,dish);
|
|
|
+ //向菜品表插入一条数据
|
|
|
+ dishMapper.insert(dish);
|
|
|
+
|
|
|
+ //获取insert语句生成的主键值
|
|
|
+ Long dishId = dish.getId();
|
|
|
+
|
|
|
+
|
|
|
+ List<DishFlavor> flavors = dishDTO.getFlavors();
|
|
|
+ if(flavors != null && flavors.size() > 0){
|
|
|
+ flavors.forEach(dishFlavor -> {
|
|
|
+ dishFlavor.setDishId(dishId);
|
|
|
+ });
|
|
|
+ //向口味表插入n条数据
|
|
|
+ dishFlavorsMapper.insertBatch(flavors);
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+}
|