From 4a7de1909ce0a623b68f7d0c68347c211749d825 Mon Sep 17 00:00:00 2001 From: Timi Date: Mon, 31 Aug 2026 17:26:33 +0800 Subject: [PATCH] fix store diary page --- .../controller/GaoStoreDiaryController.java | 12 +++--- .../gao/service/GaoStoreDiaryService.java | 4 +- .../GaoStoreDiaryServiceImplement.java | 10 ++++- .../api/modules/gao/vo/GaoStoreDiaryPage.java | 23 +++++++++++ .../timi-server/gao/GaoStoreDiaryMapper.xml | 40 +++++++++++++++++++ 5 files changed, 79 insertions(+), 10 deletions(-) create mode 100644 src/main/java/com/imyeyu/api/modules/gao/vo/GaoStoreDiaryPage.java create mode 100644 src/main/resources/mapper/timi-server/gao/GaoStoreDiaryMapper.xml diff --git a/src/main/java/com/imyeyu/api/modules/gao/controller/GaoStoreDiaryController.java b/src/main/java/com/imyeyu/api/modules/gao/controller/GaoStoreDiaryController.java index 4e7f0f4..aa30554 100644 --- a/src/main/java/com/imyeyu/api/modules/gao/controller/GaoStoreDiaryController.java +++ b/src/main/java/com/imyeyu/api/modules/gao/controller/GaoStoreDiaryController.java @@ -15,8 +15,8 @@ import com.imyeyu.java.TimiJava; import com.imyeyu.java.bean.timi.TimiException; import com.imyeyu.spring.annotation.AOPLog; import com.imyeyu.spring.annotation.RequestRateLimit; -import com.imyeyu.spring.bean.Page; import com.imyeyu.spring.bean.PageResult; +import com.imyeyu.api.modules.gao.vo.GaoStoreDiaryPage; import com.imyeyu.spring.util.ResponseView; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.PostMapping; @@ -49,12 +49,12 @@ public class GaoStoreDiaryController { @RequireGaoPermission(GaoPermissionCode.STORE_DIARY_READ) @PostMapping("/list") @JsonView(ResponseView.Public.class) - public PageResult
list(@RequestBody Page
page) { + public PageResult
list(@RequestBody GaoStoreDiaryPage page) { TimiException.required(page, "未找到分页参数"); - Article example = TimiJava.defaultIfNull(page.getEqualsExample(), new Article()); - example.setBizType(Article.BizType.GAO_STORE_DIARY); - example.setBizId(storeScopeService.resolveStoreId(example.getBizId())); - page.setEqualsExample(example); + TimiException.required(page.getBeginCreatedAt(), "未找到门店日记开始时间"); + TimiException.required(page.getEndCreatedAt(), "未找到门店日记结束时间"); + TimiException.requiredTrue(page.getBeginCreatedAt() < page.getEndCreatedAt(), "门店日记时间范围无效"); + page.setStoreId(storeScopeService.resolveStoreId(page.getStoreId())); return service.page(page); } diff --git a/src/main/java/com/imyeyu/api/modules/gao/service/GaoStoreDiaryService.java b/src/main/java/com/imyeyu/api/modules/gao/service/GaoStoreDiaryService.java index ecdbadf..b01a3b7 100644 --- a/src/main/java/com/imyeyu/api/modules/gao/service/GaoStoreDiaryService.java +++ b/src/main/java/com/imyeyu/api/modules/gao/service/GaoStoreDiaryService.java @@ -1,8 +1,8 @@ package com.imyeyu.api.modules.gao.service; import com.imyeyu.api.modules.common.entity.Article; -import com.imyeyu.spring.bean.Page; import com.imyeyu.spring.bean.PageResult; +import com.imyeyu.api.modules.gao.vo.GaoStoreDiaryPage; /// GAO 门店日记服务 /// @@ -14,7 +14,7 @@ public interface GaoStoreDiaryService { /// /// @param page 分页查询条件 /// @return 门店日记分页结果 - PageResult
page(Page
page); + PageResult
page(GaoStoreDiaryPage page); /// 查询门店日记详情 /// diff --git a/src/main/java/com/imyeyu/api/modules/gao/service/implement/GaoStoreDiaryServiceImplement.java b/src/main/java/com/imyeyu/api/modules/gao/service/implement/GaoStoreDiaryServiceImplement.java index 6f4c162..9ce6188 100644 --- a/src/main/java/com/imyeyu/api/modules/gao/service/implement/GaoStoreDiaryServiceImplement.java +++ b/src/main/java/com/imyeyu/api/modules/gao/service/implement/GaoStoreDiaryServiceImplement.java @@ -7,6 +7,8 @@ import com.imyeyu.api.modules.common.mapper.ArticleMapper; import com.imyeyu.api.modules.common.service.ArticleService; import com.imyeyu.api.modules.common.service.AttachmentService; import com.imyeyu.api.modules.gao.service.GaoStoreDiaryService; +import com.imyeyu.api.modules.gao.mapper.GaoStoreDiaryMapper; +import com.imyeyu.api.modules.gao.vo.GaoStoreDiaryPage; import com.imyeyu.java.TimiJava; import com.imyeyu.java.bean.timi.TimiException; import com.imyeyu.spring.bean.Page; @@ -26,10 +28,14 @@ public class GaoStoreDiaryServiceImplement implements GaoStoreDiaryService { private final ArticleService articleService; private final AttachmentService attachmentService; private final ArticleMapper articleMapper; + private final GaoStoreDiaryMapper diaryMapper; @Override - public PageResult
page(Page
page) { - return articleService.page(page); + public PageResult
page(GaoStoreDiaryPage page) { + PageResult
result = new PageResult<>(); + result.setTotal(diaryMapper.countByMonth(page)); + result.setList(diaryMapper.selectByMonth(page)); + return result; } @Override diff --git a/src/main/java/com/imyeyu/api/modules/gao/vo/GaoStoreDiaryPage.java b/src/main/java/com/imyeyu/api/modules/gao/vo/GaoStoreDiaryPage.java new file mode 100644 index 0000000..4739549 --- /dev/null +++ b/src/main/java/com/imyeyu/api/modules/gao/vo/GaoStoreDiaryPage.java @@ -0,0 +1,23 @@ +package com.imyeyu.api.modules.gao.vo; + +import com.imyeyu.java.bean.BasePage; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/// GAO 门店日记月份分页查询请求 +/// +/// @author Codex +/// @since 2026-08-31 +@Data +@EqualsAndHashCode(callSuper = true) +public class GaoStoreDiaryPage extends BasePage { + + /// 门店 ID + private String storeId; + + /// 创建时间起点,包含 + private Long beginCreatedAt; + + /// 创建时间终点,不包含 + private Long endCreatedAt; +} diff --git a/src/main/resources/mapper/timi-server/gao/GaoStoreDiaryMapper.xml b/src/main/resources/mapper/timi-server/gao/GaoStoreDiaryMapper.xml new file mode 100644 index 0000000..29c3f32 --- /dev/null +++ b/src/main/resources/mapper/timi-server/gao/GaoStoreDiaryMapper.xml @@ -0,0 +1,40 @@ + + + + + `biz_type` = 'GAO_STORE_DIARY' + AND `biz_id` = #{storeId} + AND `created_at` >= #{beginCreatedAt} + AND `created_at` < #{endCreatedAt} + AND (`deleted_at` IS NULL OR FLOOR(UNIX_TIMESTAMP(CURRENT_TIMESTAMP(3)) * 1000) < `deleted_at`) + + + + + +