diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/alloc/domain/AllocMobileCanteenQueryDTO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/alloc/domain/AllocMobileCanteenQueryDTO.java new file mode 100644 index 0000000..3090e90 --- /dev/null +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/alloc/domain/AllocMobileCanteenQueryDTO.java @@ -0,0 +1,32 @@ +package com.bonus.canteen.core.alloc.domain; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDate; + +@Data +@ApiModel("移动端查询食堂相关信息 DTO") +public class AllocMobileCanteenQueryDTO { + @ApiModelProperty("食堂id") + private Long canteenId; + @ApiModelProperty("档口id") + private Long stallId; + @ApiModelProperty("报餐天数") + private Integer reportMealDays; + @ApiModelProperty("开始日期") + private LocalDate startDate; + @ApiModelProperty("报餐是否跳过节假日 默认:是") + private String ifBookSkipHoliday; + @ApiModelProperty("订餐限制天数") + private Integer reserveLimitDayNum; + @ApiModelProperty("是否允许预定当天") + private String ifAllowReserveToday; + + @Override + public String toString() { + Long var10000 = this.getCanteenId(); + return "AllocMobileCanteenQueryDTO(canteenId=" + var10000 + ", stallId=" + this.getStallId() + ", reportMealDays=" + this.getReportMealDays() + ", startDate=" + String.valueOf(this.getStartDate()) + ", ifBookSkipHoliday=" + this.getIfBookSkipHoliday() + ")"; + } +} diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/controller/MenuAppRecipeController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/controller/MenuAppRecipeController.java index d0d8e44..77b7b1e 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/controller/MenuAppRecipeController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/controller/MenuAppRecipeController.java @@ -3,6 +3,7 @@ package com.bonus.canteen.core.menu.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.bonus.canteen.core.alloc.domain.AllocMobileCanteenQueryDTO; import com.bonus.canteen.core.menu.domain.MenuAppRecipe; import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO; import com.bonus.canteen.core.menu.service.IMenuAppRecipeService; @@ -117,11 +118,12 @@ public class MenuAppRecipeController extends BaseController { return toAjax(menuAppRecipeService.deleteMenuAppRecipeByIds(ids)); } - /** - * @author jsk - * @param content - * @return - */ + @ApiOperation("移动端-查询预订日期列表") + @PostMapping({"/reserve-date/list"}) + public AjaxResult listReserveDate(@RequestBody AllocMobileCanteenQueryDTO bean) { + return AjaxResult.success(this.menuAppRecipeService.listReserveDate(bean)); + } + @ApiOperation("获取预定餐菜谱详情") @PostMapping({"/reserve/recipe/detail"}) public TableDataInfo getReserveRecipeDetailList(@RequestBody AppletReserveRecipeDTO content) { diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/IMenuAppRecipeService.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/IMenuAppRecipeService.java index 095ff94..7a0c122 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/IMenuAppRecipeService.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/IMenuAppRecipeService.java @@ -1,6 +1,9 @@ package com.bonus.canteen.core.menu.service; +import java.time.LocalDate; import java.util.List; + +import com.bonus.canteen.core.alloc.domain.AllocMobileCanteenQueryDTO; import com.bonus.canteen.core.menu.domain.MenuAppRecipe; import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeVO; @@ -60,5 +63,7 @@ public interface IMenuAppRecipeService { */ public int deleteMenuAppRecipeById(Long id); + public List listReserveDate(AllocMobileCanteenQueryDTO queryDTO); + public List getReserveRecipeDetailList(AppletReserveRecipeDTO content); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/impl/MenuAppRecipeServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/impl/MenuAppRecipeServiceImpl.java index cebbf40..5fe3451 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/impl/MenuAppRecipeServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/menu/service/impl/MenuAppRecipeServiceImpl.java @@ -9,6 +9,7 @@ import java.util.stream.Collectors; import cn.hutool.core.util.ObjectUtil; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.bonus.canteen.core.alloc.domain.AllocMobileCanteenQueryDTO; import com.bonus.canteen.core.alloc.domain.AllocStall; import com.bonus.canteen.core.alloc.domain.AllocStallMealtime; import com.bonus.canteen.core.alloc.mapper.AllocStallMapper; @@ -18,6 +19,7 @@ import com.bonus.canteen.core.menu.service.IMenuAppRecipeService; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeDishesVO; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeTypeVO; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeVO; +import com.bonus.canteen.core.utils.BnsConstants; import com.bonus.common.core.exception.ServiceException; import com.bonus.common.core.utils.DateUtils; import com.bonus.common.houqin.constant.DelFlagEnum; @@ -118,6 +120,30 @@ public class MenuAppRecipeServiceImpl implements IMenuAppRecipeService { return menuAppRecipeMapper.deleteMenuAppRecipeById(id); } + @Override + public List listReserveDate(AllocMobileCanteenQueryDTO queryDTO) { + return this.listMatchData(queryDTO.getReserveLimitDayNum(), queryDTO.getIfAllowReserveToday()); + } + + private List listMatchData(Integer reserveLimitDayNum, String ifAllowReserveToday) { + log.info(String.format("查询日期,天数:%d", reserveLimitDayNum)); + List reserveDateList = new ArrayList(); + LocalDate startDate; + if (BnsConstants.COMMON_YES.equals(ifAllowReserveToday)) { + log.info("允许预定当天"); + startDate = LocalDate.now(); + } else { + log.info("不允许预定当天"); + startDate = LocalDate.now().plusDays(1L); + } + + for(int i = 0; i < reserveLimitDayNum; ++i) { + reserveDateList.add(startDate.plusDays((long)i)); + } + + return reserveDateList; + } + @Override public List getReserveRecipeDetailList(AppletReserveRecipeDTO content) { List resultList = menuAppRecipeMapper.selectReserveRecipe(content.getApplyDate(), content.getRecipeId());