eight
2024-09-13 d9e1a1327d2d75e138f12e61c5faa155752be955
作业统计 完成
已添加2个文件
已修改4个文件
92 ■■■■■ 文件已修改
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/vo/JobRecordStatisticVO.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordStatisticDO.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/jobrecord/JobRecordService.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/jobrecord/JobRecordServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/JobRecordController.java
@@ -1,6 +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;
@@ -105,4 +106,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));
}
}
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/jobrecord/vo/JobRecordStatisticVO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,38 @@
package cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - å·¥ä½œç»Ÿè®¡ Response VO")
@Data
@ExcelIgnoreUnannotated
public class JobRecordStatisticVO {
    @Schema(description = "作业类型", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
    @ExcelProperty("作业类型")
    private Integer jobType;
    @Schema(description = "医生编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "24197")
    @ExcelProperty("医生编号")
    private Long docId;
    @Schema(description = "医生名称", example = "赵六")
    @ExcelProperty("医生名称")
    private String docName;
    @Schema(description = "合计", example = "9")
    @ExcelProperty("数量")
    private Integer jobCount;
    @Schema(description = "年度", example = "2024")
    @ExcelProperty("年度")
    private Integer year;
    @Schema(description = "月份", example = "9")
    @ExcelProperty("月份")
    private Integer month;
}
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/jobrecord/JobRecordStatisticDO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,22 @@
package cn.lihu.jh.module.ecg.dal.dataobject.jobrecord;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class JobRecordStatisticDO {
    private Integer jobType;
    private Long docId;
    private String docName;
    private Integer jobCount;
    private Integer year;
    private Integer month;
}
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/mysql/jobrecord/JobRecordMapper.java
@@ -7,6 +7,7 @@
import cn.lihu.jh.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.lihu.jh.framework.mybatis.core.mapper.BaseMapperX;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
import org.apache.ibatis.annotations.Mapper;
import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*;
import org.apache.ibatis.annotations.Param;
@@ -42,4 +43,9 @@
    @Select("SELECT count(1) FROM lihu.job_record where pat_id=#{patId} and TO_DAYS(job_time)=TO_DAYS(#{jobTime}) and job_type=#{jobType} ")
    Integer getPatientJobNum(@Param("patId") String patId, @Param("jobTime") LocalDateTime jobTime, @Param("jobType") Integer jobType );
    @Select("select year(job_time) as year, month(job_time) as month, doc_id, doc_name, job_type, count(1) as job_count from lihu.job_record " +
            "where job_time >= #{jobTimeFrom} and job_time < #{jobTimeTo} \n" +
            "group by year(job_time), month(job_time), doc_id, job_type;")
    List<JobRecordStatisticDO> getJobStatistic(@Param("jobTimeFrom") LocalDateTime jobTimeFrom, @Param("jobTimeTo") LocalDateTime jobTimeTo);
}
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/jobrecord/JobRecordService.java
@@ -1,10 +1,12 @@
package cn.lihu.jh.module.ecg.service.jobrecord;
import java.time.LocalDateTime;
import java.util.*;
import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO;
import cn.lihu.jh.framework.common.pojo.PageResult;
import cn.lihu.jh.framework.common.pojo.PageParam;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
import javax.validation.Valid;
@@ -53,4 +55,11 @@
     */
    PageResult<JobRecordDO> getJobRecordPage(JobRecordPageReqVO pageReqVO);
    /**
     * ä½œä¸šç»Ÿè®¡
     * @param jobTimeFrom
     * @param jobTimeTo
     * @return
     */
    List<JobRecordStatisticDO> getJobStatistic(LocalDateTime jobTimeFrom, LocalDateTime jobTimeTo);
}
jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/jobrecord/JobRecordServiceImpl.java
@@ -1,9 +1,11 @@
package cn.lihu.jh.module.ecg.service.jobrecord;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordStatisticDO;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.*;
import cn.lihu.jh.module.ecg.controller.admin.jobrecord.vo.*;
import cn.lihu.jh.module.ecg.dal.dataobject.jobrecord.JobRecordDO;
@@ -72,4 +74,10 @@
        return jobRecordMapper.selectPage(pageReqVO);
    }
    @Override
    public List<JobRecordStatisticDO> getJobStatistic(LocalDateTime jobTimeFrom, LocalDateTime jobTimeTo) {
        return jobRecordMapper.getJobStatistic(jobTimeFrom, jobTimeTo);
    }
}