diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java index 3215da1..e506c12 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/PayService.java @@ -385,7 +385,7 @@ public class PayService { } // 获取店铺霸王餐配置 - TbFreeDineConfig freeDineConfig = freeDineConfigService.getById(orderInfo.getShopId()); + TbFreeDineConfig freeDineConfig = freeDineConfigService.getByShopId(orderInfo.getShopId()); if (freeDineConfig == null || freeDineConfig.getEnable() == null || freeDineConfig.getEnable() == 0) { throw new MsgException("店铺未开启霸王餐配置"); } @@ -403,6 +403,11 @@ public class PayService { if (payDTO.getUsePoints() && freeDineConfig.getWithPoints() == 0) { throw new MsgException("当前店铺未开启与积分同享"); } + + // 校验就餐模式是否满足 + if (!freeDineConfig.getUseType().contains(orderInfo.getUseType())) { + throw new MsgException("当前店铺未开启此就餐模式霸王餐"); + } BigDecimal shouldPayAmount = orderInfo.getOriginAmount().multiply(BigDecimal.valueOf(freeDineConfig.getRechargeTimes())); if (!payDTO.getCouponIds().isEmpty()) { diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/TbFreeDineConfigService.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/TbFreeDineConfigService.java index ae3dc02..906dd53 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/TbFreeDineConfigService.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/TbFreeDineConfigService.java @@ -10,4 +10,10 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface TbFreeDineConfigService extends IService { + /** + * 根据店铺id查询 + * @param shopId 店铺id + * @return 霸王餐配置 + */ + TbFreeDineConfig getByShopId(String shopId); } diff --git a/src/main/java/com/chaozhanggui/system/cashierservice/service/impl/TbFreeDineConfigServiceImpl.java b/src/main/java/com/chaozhanggui/system/cashierservice/service/impl/TbFreeDineConfigServiceImpl.java index 17d63f1..e9853fe 100644 --- a/src/main/java/com/chaozhanggui/system/cashierservice/service/impl/TbFreeDineConfigServiceImpl.java +++ b/src/main/java/com/chaozhanggui/system/cashierservice/service/impl/TbFreeDineConfigServiceImpl.java @@ -1,5 +1,6 @@ package com.chaozhanggui.system.cashierservice.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.chaozhanggui.system.cashierservice.entity.TbFreeDineConfig; import com.chaozhanggui.system.cashierservice.service.TbFreeDineConfigService; @@ -17,6 +18,11 @@ import org.springframework.stereotype.Service; public class TbFreeDineConfigServiceImpl extends ServiceImpl implements TbFreeDineConfigService{ + @Override + public TbFreeDineConfig getByShopId(String shopId) { + return getOne(new LambdaQueryWrapper() + .eq(TbFreeDineConfig::getShopId, shopId)); + } }