From 5ecfa7ab361ff4149f18d4eb1379be935689f4bc Mon Sep 17 00:00:00 2001 From: lizhenhua <1075222162@qq.com> Date: Thu, 7 Aug 2025 16:03:35 +0800 Subject: [PATCH] =?UTF-8?q?bug=20=E9=A3=9F=E5=A0=82=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../canteen/core/common/utils/DateUtil.java | 6 +++++- .../canteen/core/cook/domain/CookDishes.java | 3 ++- .../cook/service/impl/CookDishesServiceImpl.java | 2 +- .../canteen/core/ims/domain/OrderGoods.java | 2 ++ .../domain/param/ReportProductionPlanQuery.java | 5 ++++- .../ims/service/impl/OrderGoodsServiceImpl.java | 12 ++++++++++++ .../ims/service/impl/ReportPlanServiceImpl.java | 16 +++++++++++++++- .../resources/mapper/ims/OrderGoodsMapper.xml | 4 ++-- .../resources/mapper/ims/ReportPlanMapper.xml | 6 +++--- 9 files changed, 46 insertions(+), 10 deletions(-) diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/common/utils/DateUtil.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/common/utils/DateUtil.java index f57b794..f62ae88 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/common/utils/DateUtil.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/common/utils/DateUtil.java @@ -4,6 +4,7 @@ import com.bonus.common.houqin.constant.GlobalConstants; import java.time.DayOfWeek; import java.time.LocalDate; +import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; import java.util.ArrayList; @@ -23,7 +24,10 @@ public class DateUtil { } return objects; } - + public static String parseLocalDateTimeToStr(LocalDateTime time) { + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); + return time.format(formatter); + } public static List getLastWeek() { List dates = new ArrayList<>(); LocalDate now = LocalDate.now(); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/domain/CookDishes.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/domain/CookDishes.java index 3c65485..be28c6d 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/domain/CookDishes.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/domain/CookDishes.java @@ -17,7 +17,7 @@ import javax.validation.constraints.Max; /** * 菜品信息对象 cook_dishes - * + * * @author xsheng * @date 2025-05-25 */ @@ -392,6 +392,7 @@ public class CookDishes extends BaseEntity { private String salesNum; @ApiModelProperty(value = "胡萝卜素(μg/100g)") private BigDecimal carotene; + private String hasInventory; diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/service/impl/CookDishesServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/service/impl/CookDishesServiceImpl.java index 17c93e6..72c8d67 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/service/impl/CookDishesServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/cook/service/impl/CookDishesServiceImpl.java @@ -649,7 +649,7 @@ public class CookDishesServiceImpl implements ICookDishesService { } List cookDishesMaterialModelList = this.cookDishesMapper.listDishesMaterial(dishesIdList); if (CollectionUtils.isEmpty(cookDishesMaterialModelList)) { - throw new ServiceException("原料列表不能为空"); + throw new ServiceException("菜品缺少组成原料信息,无法生成采购计划"); } Iterator ite10 = cookDishesMaterialModelList.iterator(); while(true) { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/OrderGoods.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/OrderGoods.java index b5f130f..0ce0575 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/OrderGoods.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/OrderGoods.java @@ -190,4 +190,6 @@ public class OrderGoods extends BaseEntity { @ApiModelProperty(value = "是否全部验货 1是2否") private String isInspect ; + private String startTime; + private String endTime; } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/param/ReportProductionPlanQuery.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/param/ReportProductionPlanQuery.java index a8f4178..b3c3d2a 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/param/ReportProductionPlanQuery.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/param/ReportProductionPlanQuery.java @@ -13,7 +13,7 @@ import java.util.Date; /** * 生产计划主对象 ims_production_plan - * + * * @author xsheng * @date 2025-07-14 */ @@ -50,4 +50,7 @@ public class ReportProductionPlanQuery implements Serializable { @ApiModelProperty("结束时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime endDateTime; + + private String startTime; + private String endTime; } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/OrderGoodsServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/OrderGoodsServiceImpl.java index 4d31816..22be395 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/OrderGoodsServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/OrderGoodsServiceImpl.java @@ -1,6 +1,8 @@ package com.bonus.canteen.core.ims.service.impl; import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -9,6 +11,7 @@ import java.util.stream.Collectors; import cn.hutool.core.collection.CollUtil; import com.alibaba.fastjson2.JSON; +import com.bonus.canteen.core.common.utils.DateUtil; import com.bonus.canteen.core.ims.domain.OrderGoodsDetail; import com.bonus.canteen.core.ims.domain.OrderGoodsPayStyle; import com.bonus.canteen.core.ims.domain.ProductionPurchaseOrder; @@ -157,6 +160,15 @@ public class OrderGoodsServiceImpl implements IOrderGoodsService { */ @Override public List selectOrderGoodsList(OrderGoods orderGoods) { + LocalDateTime startDateTime = orderGoods.getStartDateTime(); + LocalDateTime endDateTime = orderGoods.getEndDateTime(); + if(startDateTime != null && endDateTime != null) { + //获取时间字符串格式 + String startTime = DateUtil.parseLocalDateTimeToStr(startDateTime); + String endTime = DateUtil.parseLocalDateTimeToStr(endDateTime); + orderGoods.setStartTime(startTime); + orderGoods.setEndTime(endTime); + } List purchasePlanVOList = orderGoodsMapper.selectOrderGoodsList(orderGoods); if(CollUtil.isNotEmpty(purchasePlanVOList)) { for(OrderGoodsVO orderGoodsVO : purchasePlanVOList) { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ReportPlanServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ReportPlanServiceImpl.java index 6b82d44..ad8be39 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ReportPlanServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ReportPlanServiceImpl.java @@ -1,6 +1,7 @@ package com.bonus.canteen.core.ims.service.impl; import cn.hutool.core.collection.CollUtil; +import com.bonus.canteen.core.common.utils.DateUtil; import com.bonus.canteen.core.ims.domain.OrderGoods; import com.bonus.canteen.core.ims.domain.ProductionPurchaseOrder; import com.bonus.canteen.core.ims.domain.PurchasePlan; @@ -14,6 +15,8 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Collections; import java.util.List; import java.util.Objects; @@ -21,7 +24,7 @@ import java.util.stream.Collectors; /** * 生产计划主Service业务层处理 - * + * * @author xsheng * @date 2025-07-14 */ @@ -45,9 +48,20 @@ public class ReportPlanServiceImpl implements IReportPlanService { @Override public List selectProductionPlanList(ReportProductionPlanQuery productionPlan) { + LocalDateTime startDateTime = productionPlan.getStartDateTime(); + LocalDateTime endDateTime = productionPlan.getEndDateTime(); + if (startDateTime != null && endDateTime != null) { + // 转换为字符串格式 + String startStr = DateUtil.parseLocalDateTimeToStr(startDateTime); + String endStr = DateUtil.parseLocalDateTimeToStr(endDateTime); + // 可选:设置回 query 中的 String 字段用于 Mapper(如果你有 String 类型的字段) + productionPlan.setStartTime(startStr); + productionPlan.setEndTime(endStr); + } return reportPlanMapper.selectProductionPlanList(productionPlan); } + @Override public List selectPurchasePlanList(ReportPurchasePlanQuery productionPlan) { return reportPlanMapper.selectPurchasePlanList(productionPlan); diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/OrderGoodsMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/OrderGoodsMapper.xml index 1dff1ba..f2c5a9f 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/OrderGoodsMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/OrderGoodsMapper.xml @@ -94,10 +94,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and iog.total_num ]]> iog.totalIntoNum - and iog.create_time = ]]> #{startDateTime} + and iog.request_arrival_time = ]]> #{startTime} - and iog.create_time #{endDateTime} + and iog.request_arrival_time #{endTime} and iog.order_goods_code in diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ReportPlanMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ReportPlanMapper.xml index f0c4296..52cd91a 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ReportPlanMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ReportPlanMapper.xml @@ -35,8 +35,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and exists (select 1 from ims_production_plan_detail ippd where ipp.plan_id = ippd.production_plan_id - and ippd.detail_date = ]]> #{startDateTime} - and ippd.detail_date #{endDateTime} ) + and ippd.detail_date = ]]> #{startTime} + and ippd.detail_date #{endTime} ) group by ipp.plan_id, @@ -160,4 +160,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - \ No newline at end of file +