预订餐时间

This commit is contained in:
sxu 2025-04-18 11:11:26 +08:00
parent 36651eafb5
commit 05d652a3c6
4 changed files with 70 additions and 5 deletions

View File

@ -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() + ")";
}
}

View File

@ -3,6 +3,7 @@ package com.bonus.canteen.core.menu.controller;
import java.util.List; import java.util.List;
import javax.servlet.http.HttpServletResponse; 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.domain.MenuAppRecipe;
import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO; import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO;
import com.bonus.canteen.core.menu.service.IMenuAppRecipeService; import com.bonus.canteen.core.menu.service.IMenuAppRecipeService;
@ -117,11 +118,12 @@ public class MenuAppRecipeController extends BaseController {
return toAjax(menuAppRecipeService.deleteMenuAppRecipeByIds(ids)); return toAjax(menuAppRecipeService.deleteMenuAppRecipeByIds(ids));
} }
/** @ApiOperation("移动端-查询预订日期列表")
* @author jsk @PostMapping({"/reserve-date/list"})
* @param content public AjaxResult listReserveDate(@RequestBody AllocMobileCanteenQueryDTO bean) {
* @return return AjaxResult.success(this.menuAppRecipeService.listReserveDate(bean));
*/ }
@ApiOperation("获取预定餐菜谱详情") @ApiOperation("获取预定餐菜谱详情")
@PostMapping({"/reserve/recipe/detail"}) @PostMapping({"/reserve/recipe/detail"})
public TableDataInfo getReserveRecipeDetailList(@RequestBody AppletReserveRecipeDTO content) { public TableDataInfo getReserveRecipeDetailList(@RequestBody AppletReserveRecipeDTO content) {

View File

@ -1,6 +1,9 @@
package com.bonus.canteen.core.menu.service; package com.bonus.canteen.core.menu.service;
import java.time.LocalDate;
import java.util.List; 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.domain.MenuAppRecipe;
import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO; import com.bonus.canteen.core.menu.dto.AppletReserveRecipeDTO;
import com.bonus.canteen.core.menu.vo.AppletReserveRecipeVO; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeVO;
@ -60,5 +63,7 @@ public interface IMenuAppRecipeService {
*/ */
public int deleteMenuAppRecipeById(Long id); public int deleteMenuAppRecipeById(Long id);
public List<LocalDate> listReserveDate(AllocMobileCanteenQueryDTO queryDTO);
public List<AppletReserveRecipeVO> getReserveRecipeDetailList(AppletReserveRecipeDTO content); public List<AppletReserveRecipeVO> getReserveRecipeDetailList(AppletReserveRecipeDTO content);
} }

View File

@ -9,6 +9,7 @@ import java.util.stream.Collectors;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; 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.AllocStall;
import com.bonus.canteen.core.alloc.domain.AllocStallMealtime; import com.bonus.canteen.core.alloc.domain.AllocStallMealtime;
import com.bonus.canteen.core.alloc.mapper.AllocStallMapper; 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.AppletReserveRecipeDishesVO;
import com.bonus.canteen.core.menu.vo.AppletReserveRecipeTypeVO; import com.bonus.canteen.core.menu.vo.AppletReserveRecipeTypeVO;
import com.bonus.canteen.core.menu.vo.AppletReserveRecipeVO; 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.exception.ServiceException;
import com.bonus.common.core.utils.DateUtils; import com.bonus.common.core.utils.DateUtils;
import com.bonus.common.houqin.constant.DelFlagEnum; import com.bonus.common.houqin.constant.DelFlagEnum;
@ -118,6 +120,30 @@ public class MenuAppRecipeServiceImpl implements IMenuAppRecipeService {
return menuAppRecipeMapper.deleteMenuAppRecipeById(id); return menuAppRecipeMapper.deleteMenuAppRecipeById(id);
} }
@Override
public List<LocalDate> listReserveDate(AllocMobileCanteenQueryDTO queryDTO) {
return this.listMatchData(queryDTO.getReserveLimitDayNum(), queryDTO.getIfAllowReserveToday());
}
private List<LocalDate> listMatchData(Integer reserveLimitDayNum, String ifAllowReserveToday) {
log.info(String.format("查询日期,天数:%d", reserveLimitDayNum));
List<LocalDate> 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 @Override
public List<AppletReserveRecipeVO> getReserveRecipeDetailList(AppletReserveRecipeDTO content) { public List<AppletReserveRecipeVO> getReserveRecipeDetailList(AppletReserveRecipeDTO content) {
List<AppletReserveRecipeVO> resultList = menuAppRecipeMapper.selectReserveRecipe(content.getApplyDate(), content.getRecipeId()); List<AppletReserveRecipeVO> resultList = menuAppRecipeMapper.selectReserveRecipe(content.getApplyDate(), content.getRecipeId());