From 68ff33beff11310e830b0615b5a81f83fad0f683 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期日, 08 十一月 2026 23:33:14 +0800
Subject: [PATCH] ai优化

---
 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java
index b18ac68..8892479 100644
--- a/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java
+++ b/jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java
@@ -1,5 +1,7 @@
 package cn.lihu.jh.module.ecg.controller.admin.jobrecord;
 
+import cn.lihu.jh.framework.security.core.util.SecurityFrameworkUtils;
+import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -24,6 +26,7 @@
 import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*;
 import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO;
 import cn.lihu.jh.module.ecg.service.jobrecord.JobRecordService;
+import cn.lihu.jh.module.ecg.service.room.RoomService;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletResponse;
@@ -37,6 +40,10 @@
 
     @Resource
     private JobRecordService jobRecordService;
+
+    /** 銆愪富/鍥磋銆戝洿瑙備汉鏌�"宸ヤ綅涓讳汉鐨勮褰�"鏃堕渶瑕佹牎楠岃宸ヤ綅褰撳墠涓讳汉 */
+    @Resource
+    private RoomService roomService;
 
     @PostMapping("/create")
     @Operation(summary = "鍒涘缓宸ヤ綔璁板綍")
@@ -79,6 +86,29 @@
         return success(BeanUtils.toBean(pageResult, JobRecordRespVO.class));
     }
 
+    @GetMapping("/doctor-page")
+    @Operation(summary = "鑾峰緱宸ヤ綔璁板綍鍒嗛〉锛堥粯璁ゆ煡鑷繁锛涘洿瑙傛椂鎸夊伐浣嶄富浜烘煡锛�")
+    @PreAuthorize("@ss.hasPermission('ecg:doctor:task')")
+    public CommonResult<PageResult<JobRecordRespVO>> getJobRecordDoctorPage(
+            @Valid JobRecordPageReqVO pageReqVO,
+            @RequestParam(value = "roomId", required = false) Long roomId,
+            @RequestParam(value = "bedNo", required = false) String bedNo) {
+        Long userId = SecurityFrameworkUtils.getLoginUserId();
+
+        // 銆愪富/鍥磋銆戦粯璁ゆ煡鑷繁鐨勮褰曪紙淇濇寔鍘熻涓猴級锛�
+        // 浼犱簡鍒汉鐨� docId锛堝洿瑙傛椂鍓嶇浼�"璇ュ伐浣嶄富浜�"锛夆啋 蹇呴』鏍¢獙璇ュ伐浣嶅綋鍓嶄富浜虹‘瀹炴槸杩欎釜 docId锛�
+        // 鍚﹀垯鍥磋浜虹湅鍒扮殑"宸插畬鎴愭鏌ヨ褰�"姘歌繙鏄┖鐨勶紙鍘熷疄鐜版棤鏉′欢瑕嗙洊鎴愮櫥褰曚汉锛夈��
+        Long ownerDocId = pageReqVO.getDocId();
+        if (null == ownerDocId || ownerDocId.equals(userId)) {
+            pageReqVO.setDocId(userId);
+        } else {
+            roomService.assertBedOwnerIs(roomId, bedNo, ownerDocId);
+        }
+
+        PageResult<JobRecordDO> pageResult = jobRecordService.getJobRecordPage(pageReqVO);
+        return success(BeanUtils.toBean(pageResult, JobRecordRespVO.class));
+    }
+
     @GetMapping("/export-excel")
     @Operation(summary = "瀵煎嚭宸ヤ綔璁板綍 Excel")
     @PreAuthorize("@ss.hasPermission('ecg:job-record:export')")
@@ -92,5 +122,12 @@
                         BeanUtils.toBean(list, JobRecordRespVO.class));
     }
 
+    @GetMapping("/job-statistic")
+    @Operation(summary = "宸ヤ綔閲忕粺璁�")
+    @PreAuthorize("@ss.hasPermission('ecg:job-record:statistic')")
+    public CommonResult<List<JobRecordStatisticVO>> getJobStatistic(@Valid JobRecordPageReqVO pageReqVO) {
+        List<JobRecordStatisticDO> statisticDOList = jobRecordService.getJobStatistic(pageReqVO.getJobTime()[0], pageReqVO.getJobTime()[1]);
+        return success(BeanUtils.toBean(statisticDOList, JobRecordStatisticVO.class));
+    }
 }
 

--
Gitblit v1.9.3