From 842947e6ecf0bdf8fd98049c0e47eb3893a8cbdb Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期三, 25 九月 2024 18:13:14 +0800
Subject: [PATCH] 修改接口

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFoundationPersonServiceImpl.java |   29 +++++++++++++++++++++++++++--
 1 files changed, 27 insertions(+), 2 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFoundationPersonServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFoundationPersonServiceImpl.java
index dc4ab1f..c65349e 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFoundationPersonServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TFoundationPersonServiceImpl.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.system.domain.TFoundationConfig;
 import com.ruoyi.system.domain.TFoundationPerson;
 import com.ruoyi.system.dto.TFoundationPersonDTO;
@@ -33,10 +34,22 @@
 
     @Override
     public void add(TFoundationPersonDTO dto) {
+
+        long count1 = this.count(Wrappers.lambdaQuery(TFoundationPerson.class)
+                .eq(TFoundationPerson::getShopId, dto.getShopId())
+                .eq(TFoundationPerson::getMealCount, dto.getMealCount()));
+        if(count1>0){
+            throw new ServiceException("该店铺已存在该用餐人数设置");
+        }
+
+        List<TFoundationConfig> foundationConfigs = dto.getFoundationConfigs();
+        long count = foundationConfigs.stream().map(TFoundationConfig::getTypeId).distinct().count();
+        if(foundationConfigs.size()!=count){
+            throw new ServiceException("菜品重复设置");
+        }
         // 添加人数
         this.save(dto);
         // 添加菜品
-        List<TFoundationConfig> foundationConfigs = dto.getFoundationConfigs();
         foundationConfigs.forEach(item -> {
             item.setPersonId(dto.getId());
         });
@@ -45,13 +58,25 @@
 
     @Override
     public void edit(TFoundationPersonDTO dto) {
+        long count1 = this.count(Wrappers.lambdaQuery(TFoundationPerson.class)
+                .eq(TFoundationPerson::getShopId, dto.getShopId())
+                .eq(TFoundationPerson::getMealCount, dto.getMealCount())
+                .ne(TFoundationPerson::getId,dto.getId()));
+        if(count1>0){
+            throw new ServiceException("该店铺已存在该用餐人数设置");
+        }
+
+        List<TFoundationConfig> foundationConfigs = dto.getFoundationConfigs();
+        long count = foundationConfigs.stream().map(TFoundationConfig::getTypeId).distinct().count();
+        if(foundationConfigs.size()!=count){
+            throw new ServiceException("菜品重复设置");
+        }
         // 添加人数
         this.updateById(dto);
         // 删除菜品
         foundationConfigService.remove(Wrappers.lambdaQuery(TFoundationConfig.class)
                 .eq(TFoundationConfig::getPersonId,dto.getId()));
         // 添加菜品
-        List<TFoundationConfig> foundationConfigs = dto.getFoundationConfigs();
         foundationConfigs.forEach(item -> {
             item.setPersonId(dto.getId());
         });

--
Gitblit v1.7.1