From 8cfd69d9bb66cd3a4e669fe7268e72c12183d130 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=96=87=E6=98=8A?= Date: Sat, 4 Jul 2026 19:07:41 +0800 Subject: [PATCH] feat: add last report memory for work report form --- .../controller/OaProjectReportController.java | 8 +++++++ .../oa/mapper/OaProjectReportMapper.java | 5 +++++ .../oa/service/IOaProjectReportService.java | 5 +++++ .../impl/OaProjectReportServiceImpl.java | 6 ++++++ .../mapper/oa/OaProjectReportMapper.xml | 21 +++++++++++++++++++ ruoyi-ui/src/api/oa/projectReport.js | 8 +++++++ ruoyi-ui/src/views/oa/project/report/my.vue | 21 +++++++++++++++++++ 7 files changed, 74 insertions(+) diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/OaProjectReportController.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/OaProjectReportController.java index df48c3a..07cc7bc 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/OaProjectReportController.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/controller/OaProjectReportController.java @@ -201,6 +201,14 @@ public class OaProjectReportController extends BaseController { return R.ok(iOaProjectReportService.getSummaryData(start,end)); } + /** + * 查询当前用户最近一次报工记录(用于表单记忆回填) + */ + @GetMapping("/lastReport") + public R getLastReport() { + return R.ok(iOaProjectReportService.getLastReport()); + } + /** * 查询当前登录用户今日的报工记录 */ diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/OaProjectReportMapper.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/OaProjectReportMapper.java index 554f288..a0d26df 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/OaProjectReportMapper.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/mapper/OaProjectReportMapper.java @@ -59,4 +59,9 @@ public interface OaProjectReportMapper extends BaseMapperPlus getSummaryData(@Param("start") LocalDate start, @Param("end") LocalDate end); + + /** + * 查询当前用户最近一次报工记录(含项目信息,用于表单记忆回填) + */ + OaProjectReportVo selectLastReportByUserId(@Param("userId") Long userId); } diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IOaProjectReportService.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IOaProjectReportService.java index 3dcb36b..3c81df8 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IOaProjectReportService.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/IOaProjectReportService.java @@ -45,4 +45,9 @@ public interface IOaProjectReportService { Boolean insertReportSupplement(OaProjectReportBo bo); TableDataInfo getTravelCompareList(LocalDate start, LocalDate end, String nickName, String workPlace, PageQuery pageQuery); + + /** + * 获取当前用户最近一次报工记录(用于表单记忆回填) + */ + OaProjectReportVo getLastReport(); } diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/OaProjectReportServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/OaProjectReportServiceImpl.java index 0d60930..f6561a4 100644 --- a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/OaProjectReportServiceImpl.java +++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/OaProjectReportServiceImpl.java @@ -370,6 +370,12 @@ public class OaProjectReportServiceImpl implements IOaProjectReportService { return baseMapper.selectVoByIdPlus(report.getReportId()); } + @Override + public OaProjectReportVo getLastReport() { + Long userId = LoginHelper.getUserId(); + return baseMapper.selectLastReportByUserId(userId); + } + @Override public Boolean insertReportSupplement(OaProjectReportBo bo) { //补录接口前端会传入经办人id还有报工时间也就是创建时间 diff --git a/ruoyi-oa/src/main/resources/mapper/oa/OaProjectReportMapper.xml b/ruoyi-oa/src/main/resources/mapper/oa/OaProjectReportMapper.xml index 7e32528..f1bee2b 100644 --- a/ruoyi-oa/src/main/resources/mapper/oa/OaProjectReportMapper.xml +++ b/ruoyi-oa/src/main/resources/mapper/oa/OaProjectReportMapper.xml @@ -267,6 +267,27 @@ GROUP BY u.user_id, u.nick_name, d.dept_name ORDER BY u.nick_name + + +