徐滕 5 дней назад
Родитель
Сommit
1d135a8f31

+ 10 - 1
jeeplus-modules/jeeplus-psi-management/src/main/java/com/jeeplus/psimanage/dishManage/service/PsiDishLibraryService.java

@@ -1,5 +1,6 @@
 package com.jeeplus.psimanage.dishManage.service;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -18,8 +19,10 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.Date;
+import java.util.List;
 import java.util.UUID;
 
 /**
@@ -45,7 +48,13 @@ public class PsiDishLibraryService extends ServiceImpl<PsiDishLibraryMapper, Psi
             wrapper.like("a.dish_code", info.getDishCode());
         }
         if (StringUtils.isNotBlank(info.getTypeId())) {
-            wrapper.eq("a.type_id", info.getTypeId());
+            // 左树点击父分类时,需连同其所有下级分类的菜品一起查询
+            List<String> typeIds = new ArrayList<>();
+            typeIds.add(info.getTypeId());
+            LambdaQueryWrapper<PsiDishType> typeWrapper = new LambdaQueryWrapper<>();
+            typeWrapper.like(PsiDishType::getParentIds, info.getTypeId());
+            dishTypeMapper.selectList(typeWrapper).forEach(item -> typeIds.add(item.getId()));
+            wrapper.in("a.type_id", typeIds);
         }
         if (StringUtils.isNotBlank(info.getStatus())) {
             wrapper.eq("a.status", info.getStatus());

+ 11 - 1
jeeplus-modules/jeeplus-psi-management/src/main/java/com/jeeplus/psimanage/dishManage/service/PsiDishMenuService.java

@@ -14,6 +14,7 @@ import com.jeeplus.psimanage.dishManage.domain.PsiDishType;
 import com.jeeplus.psimanage.dishManage.mapper.PsiDishLibraryMapper;
 import com.jeeplus.psimanage.dishManage.mapper.PsiDishMenuDishMapper;
 import com.jeeplus.psimanage.dishManage.mapper.PsiDishMenuMapper;
+import com.jeeplus.psimanage.dishManage.mapper.PsiDishTypeMapper;
 import com.jeeplus.sys.feign.IUserApi;
 import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.utils.StringUtils;
@@ -46,6 +47,9 @@ public class PsiDishMenuService extends ServiceImpl<PsiDishMenuDishMapper, PsiDi
     @Resource
     private PsiDishLibraryMapper dishLibraryMapper;
 
+    @Resource
+    private PsiDishTypeMapper dishTypeMapper;
+
     public IPage<PsiDishMenuDish> list(Page<PsiDishMenuDish> page, PsiDishMenuDish info) {
         getOrCreateCurrentMenu();
         QueryWrapper<PsiDishMenuDish> wrapper = buildMenuDishQuery(info);
@@ -349,7 +353,13 @@ public class PsiDishMenuService extends ServiceImpl<PsiDishMenuDishMapper, PsiDi
             wrapper.like("dl.dish_name", info.getDishName());
         }
         if (StringUtils.isNotBlank(info.getTypeId())) {
-            wrapper.eq("dl.type_id", info.getTypeId());
+            // 左树点击父分类时,需连同其所有下级分类的菜品一起查询
+            List<String> typeIds = new ArrayList<>();
+            typeIds.add(info.getTypeId());
+            LambdaQueryWrapper<PsiDishType> typeWrapper = new LambdaQueryWrapper<>();
+            typeWrapper.like(PsiDishType::getParentIds, info.getTypeId());
+            dishTypeMapper.selectList(typeWrapper).forEach(item -> typeIds.add(item.getId()));
+            wrapper.in("dl.type_id", typeIds);
         }
         if (StringUtils.isNotBlank(info.getStatus())) {
             wrapper.eq("dl.status", info.getStatus());

+ 3 - 0
jeeplus-modules/jeeplus-psi-management/src/main/java/com/jeeplus/psimanage/dishManage/service/PsiDishRoomService.java

@@ -76,6 +76,9 @@ public class PsiDishRoomService extends ServiceImpl<PsiDishRoomMapper, PsiDishRo
             if (StringUtils.isBlank(info.getStatus())) {
                 info.setStatus("0");
             }
+            if (StringUtils.isBlank(info.getUseStatus())) {
+                info.setUseStatus("0");
+            }
             mapper.insert(info);
         }
         return "操作完成";