yxh
6 天以前 68ff33beff11310e830b0615b5a81f83fad0f683
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java
@@ -26,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;
@@ -39,6 +40,10 @@
    @Resource
    private JobRecordService jobRecordService;
    /** 【主/围观】围观人查"工位主人的记录"时需要校验该工位当前主人 */
    @Resource
    private RoomService roomService;
    @PostMapping("/create")
    @Operation(summary = "创建工作记录")
@@ -82,13 +87,24 @@
    }
    @GetMapping("/doctor-page")
    @Operation(summary = "获得用户自己的工作记录分页")
    @Operation(summary = "获得工作记录分页(默认查自己;围观时按工位主人查)")
    @PreAuthorize("@ss.hasPermission('ecg:doctor:task')")
    public CommonResult<PageResult<JobRecordRespVO>> getJobRecordDoctorPage(@Valid JobRecordPageReqVO pageReqVO) {
    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();
        String userNickname = SecurityFrameworkUtils.getLoginUserNickname();
        pageReqVO.setDocId( userId );
        // 【主/围观】默认查自己的记录(保持原行为);
        // 传了别人的 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));
    }