每日统计

This commit is contained in:
seesaw
2024-10-16 09:58:09 +08:00
parent fc2819a4c7
commit 185520f436
21 changed files with 310 additions and 10 deletions

View File

@ -36,4 +36,6 @@ public class DishImagePageReqVO extends PageParam {
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
private Long carteenId;
}

View File

@ -41,4 +41,6 @@ public class DishImageRespVO {
@ExcelProperty("创建时间")
private LocalDateTime createTime;
private Long carteenId;
}

View File

@ -27,4 +27,6 @@ public class DishImageSaveReqVO {
@Schema(description = "备注", example = "随便")
private String remark;
private Long carteenId;
}

View File

@ -20,4 +20,16 @@ public class AppUpdateVO {
@Schema(description = "总价格", example = "1")
private BigDecimal dishesSumPrice;
@Schema(description = "菜品类型", example = "1")
private String dishecType;
@Schema(description = "菜品图片", example = "1")
private String dishesImageUrl;
@Schema(description = "周几", example = "星期一")
private String weekTime;
@Schema(description = "时段", example = "")
private String timeSlot;
}

View File

@ -0,0 +1,49 @@
package cn.iocoder.yudao.module.system.controller.app.dishimage;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
import cn.iocoder.yudao.module.system.controller.admin.dishimage.vo.DishImagePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dishimage.vo.DishImageRespVO;
import cn.iocoder.yudao.module.system.controller.admin.dishimage.vo.DishImageSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dishimage.DishImageDO;
import cn.iocoder.yudao.module.system.service.dishimage.DishImageService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.util.List;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import static cn.iocoder.yudao.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
@Tag(name = "管理后台 - 本周菜单")
@RestController
@RequestMapping("/t/dish-image")
@Validated
public class AppDishImageController {
@Resource
private DishImageService dishImageService;
@GetMapping("/get")
@Operation(summary = "获得本周菜单")
public CommonResult<DishImageRespVO> getThisWeekDishImage(Long carteenId) {
DishImageDO dishImage = dishImageService.getThisWeekDishImage(carteenId);
return success(BeanUtils.toBean(dishImage, DishImageRespVO.class));
}
}

View File

@ -48,4 +48,6 @@ public class DishImageDO extends BaseDO {
*/
private String remark;
private Long carteenId;
}

View File

@ -21,6 +21,7 @@ public interface DishImageMapper extends BaseMapperX<DishImageDO> {
default PageResult<DishImageDO> selectPage(DishImagePageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<DishImageDO>()
.eqIfPresent(DishImageDO::getCarteenId,reqVO.getCarteenId())
.likeIfPresent(DishImageDO::getName, reqVO.getName())
.betweenIfPresent(DishImageDO::getStartDate, reqVO.getStartDate())
.betweenIfPresent(DishImageDO::getEndDate, reqVO.getEndDate())

View File

@ -54,4 +54,10 @@ public interface DishImageService {
*/
PageResult<DishImageDO> getDishImagePage(DishImagePageReqVO pageReqVO);
}
/**
* 获得本周菜单
*/
DishImageDO getThisWeekDishImage(Long carteenId);
}

View File

@ -1,14 +1,19 @@
package cn.iocoder.yudao.module.system.service.dishimage;
import cn.hutool.core.collection.CollectionUtil;
import cn.iocoder.yudao.module.system.controller.admin.dishimage.vo.DishImagePageReqVO;
import cn.iocoder.yudao.module.system.controller.admin.dishimage.vo.DishImageSaveReqVO;
import cn.iocoder.yudao.module.system.dal.dataobject.dishimage.DishImageDO;
import cn.iocoder.yudao.module.system.dal.mysql.dishimage.DishImageMapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.time.DayOfWeek;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
@ -75,4 +80,29 @@ public class DishImageServiceImpl implements DishImageService {
return dishImageMapper.selectPage(pageReqVO);
}
@Override
public DishImageDO getThisWeekDishImage(Long carteenId) {
// 获取今天的日期
LocalDate today = LocalDate.now();
// 获取本周的开始日期(周一)
LocalDate weekStart = today.with(DayOfWeek.MONDAY);
// 获取本周的结束日期(周日)
LocalDate weekEnd = today.with(DayOfWeek.SUNDAY);
// 格式化日期(年-月-日)
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String startTime = weekStart.format(formatter);
String endTime = weekEnd.format(formatter);
List<DishImageDO> dishImageDOS = dishImageMapper.selectList(Wrappers.<DishImageDO>lambdaQuery()
.eq(DishImageDO::getStartDate, startTime)
.eq(DishImageDO::getEndDate, endTime)
.eq(DishImageDO::getCarteenId, carteenId));
if(CollectionUtil.isNotEmpty(dishImageDOS)){
return dishImageDOS.get(0);
}
return new DishImageDO();
}
}