From 94e6a9428d0ab1d82ba04655d292c44fc66a6b4c Mon Sep 17 00:00:00 2001 From: zjf <1799650030@qq.com> Date: Tue, 12 Aug 2025 15:11:00 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A3=9F=E5=A0=82=E9=A2=84=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../CanteenOnlineSpuController.java | 5 +++-- .../service/CanteenOnlineSpuService.java | 2 +- .../impl/CanteenOnlineSpuServiceImpl.java | 20 +++++++++++++++++-- 3 files changed, 22 insertions(+), 5 deletions(-) diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenOnlineSpuController.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenOnlineSpuController.java index b152d679d..8019f5f1c 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenOnlineSpuController.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/controller/CanteenOnlineSpuController.java @@ -155,8 +155,9 @@ public class CanteenOnlineSpuController { @GetMapping("/app/getCanteenSpuList") @Operation(summary = "获取在线点餐的菜品列表", description = "1.通过分类id,可以不填,默认查全部,2.商户id,必传") public R> getCanteenSpuList(@RequestParam(value = "categoryId", required = false) String categoryId, - @RequestParam(value = "merchantId") String merchantId) { - return canteenOnlineSpuService.getCanteenOnlineSpuList(categoryId, merchantId); + @RequestParam(value = "merchantId") String merchantId, + @RequestParam(value = "time")String time) { + return canteenOnlineSpuService.getCanteenOnlineSpuList(categoryId, merchantId,time); } diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenOnlineSpuService.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenOnlineSpuService.java index f202a84af..f97770add 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenOnlineSpuService.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/CanteenOnlineSpuService.java @@ -21,7 +21,7 @@ public interface CanteenOnlineSpuService extends IService> getCanteenOnlineSpuList(String categoryId, String merchantId); + R> getCanteenOnlineSpuList(String categoryId, String merchantId,String time); /** diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java index 51fb152ba..c78827025 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenOnlineSpuServiceImpl.java @@ -7,9 +7,11 @@ import com.bsd.pjcloud.canteen.dto.CanteenOnlineSpuUpdateStockReqDTO; import com.bsd.pjcloud.canteen.dto.canteenonline.CanteenOnlineSpuSaveDto; import com.bsd.pjcloud.canteen.dto.canteenonline.CanteenOnlineSpuSaveItemDto; import com.bsd.pjcloud.canteen.entity.CanteenCategoryEntity; +import com.bsd.pjcloud.canteen.entity.CanteenDailyMenuEntity; import com.bsd.pjcloud.canteen.entity.CanteenOnlineCategoryEntity; import com.bsd.pjcloud.canteen.entity.CanteenOnlineSpuEntity; import com.bsd.pjcloud.canteen.mapper.CanteenCategoryMapper; +import com.bsd.pjcloud.canteen.mapper.CanteenDailyMenuMapper; import com.bsd.pjcloud.canteen.mapper.CanteenOnlineCategoryMapper; import com.bsd.pjcloud.canteen.mapper.CanteenOnlineSpuMapper; import com.bsd.pjcloud.canteen.service.CanteenOnlineSpuService; @@ -40,13 +42,27 @@ public class CanteenOnlineSpuServiceImpl extends ServiceImpl> getCanteenOnlineSpuList(String categoryId, String merchantId) { + public R> getCanteenOnlineSpuList(String categoryId, String merchantId,String time) { LambdaQueryWrapper canteenOnlineSpuEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); canteenOnlineSpuEntityLambdaQueryWrapper.eq(StringUtils.isNotEmpty(categoryId), CanteenOnlineSpuEntity::getCategoryId, categoryId); canteenOnlineSpuEntityLambdaQueryWrapper.eq(CanteenOnlineSpuEntity::getMerchantId, merchantId); List canteenSpuEntities = baseMapper.selectList(canteenOnlineSpuEntityLambdaQueryWrapper); - List bean = BeanUtils.toBean(canteenSpuEntities, APPOnlineSpuVO.class); + + //根据商户查询当前日期的每日菜谱,查询每日菜谱上架的菜的id,然后在从在线订餐的列表筛选出今天有上新的数据 + LambdaQueryWrapper dailyMenuEntityLambdaQueryWrapper = new LambdaQueryWrapper<>(); + dailyMenuEntityLambdaQueryWrapper.eq(CanteenDailyMenuEntity::getMerchantId, merchantId); + dailyMenuEntityLambdaQueryWrapper.eq(CanteenDailyMenuEntity::getStartTime,time); + List dailyMenuEntities = canteenDailyMenuMapper.selectList(dailyMenuEntityLambdaQueryWrapper); + List linkSpuIds = dailyMenuEntities.stream().map(d -> d.getSpuId()).collect(Collectors.toList()); + //从canteenSpuEntities中筛选出今天有上新的数据 + List finallyCanteenSpuEntities = + canteenSpuEntities.stream().filter(c -> { + return c.getLinkSpuId() == null || linkSpuIds.contains(c.getLinkSpuId()); + }).collect(Collectors.toList()); + List bean = BeanUtils.toBean(finallyCanteenSpuEntities, APPOnlineSpuVO.class); return R.ok(bean); }