liusheng
8 天以前 34f78281cf395a24e1f3f1c3b861186ff8a03b7b
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
@@ -1,18 +1,19 @@
package com.smartor.mapper;
import com.smartor.domain.*;
import com.smartor.domain.VO.PatSatisfactionReqVO;
import com.smartor.domain.VO.HeLibraryCountVO;
import com.ruoyi.template.domain.VO.HeLibraryCountVO;
import com.smartor.domain.VO.ServiceSubtaskCotinueCountVO;
import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.domain.entity.ServiceSubtaskSatisfactionEntity;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
import java.util.Map;
import com.ruoyi.common.core.service.dto.PatMedReq;
import com.ruoyi.common.core.service.dto.PatMedRes;
/**
 * 单一任务(随访)Mapper接口
 *
@@ -37,7 +38,7 @@
     */
    public List<ServiceSubtask> selectServiceSubtaskList(ServiceSubtaskEntity serviceSubtaskVO);
    public List<ServiceSubtask> selectSatisfactionSubtaskList(PatSatisfactionReqVO serviceSubtaskVO);
    /**
     * 用于补偿查询
@@ -57,6 +58,8 @@
    public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskEntity serviceSubtaskVO);
    public List<ServiceSubtask> selectServiceSubtaskListDeadLine(ServiceSubtaskEntity serviceSubtaskVO);
    public List<Integer> selectSendstateByCondition(ServiceSubtask serviceSubtask);
    /**
@@ -75,14 +78,18 @@
     * @param scheduleId 计划主键
     * @param loopCount  轮次(0=首轮)
     */
    public int countActiveByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId,
                                              @Param("loopCount") Long loopCount);
    public int countActiveByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId, @Param("loopCount") Long loopCount);
    /**
     * 任务组(appltype=5):拉取某一轮次的全部 subtask(用于克隆到下一轮)。
     */
    public List<ServiceSubtask> selectByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId,
                                                          @Param("loopCount") Long loopCount);
    public List<ServiceSubtask> selectByScheduleIdAndLoop(@Param("scheduleId") Long scheduleId, @Param("loopCount") Long loopCount);
    /**
     * 随访及时率:应随访时间<实际随访时间
@@ -93,7 +100,14 @@
    public Double selectTimelyRate(ServiceSubtask ServiceSubtask);
    /**
     * 随访及时率:应随访时间<实际随访时间
     * 随访及时率(按 groupKey 分组批量统计)
     * <p>
     * rate:出院时间(endtime)起 rateDay + 补偿天数 内完成随访的占比。
     * 补偿天数取自 service_subtask_preachform.compensate_time 按子任务求和,
     * 用子任务快照而非 service_task.preachform_desc,保证历史数据不随任务改配置而变动。
     * rateDay 为空时 rate 返回 NULL。
     * <p>
     * finishRate:应随访时间(visit_time) &lt;= 实际完成时间(finishtime) 的占比,当前未被随访统计使用。
     *
     * @param ServiceSubtaskvo
     * @return
@@ -190,6 +204,8 @@
     * xsf: 需随访数量 sendstate = 4
     * dsf: 待随访数量 sendstate = 1L, 2L, 3L, 5L, 7L
     * ywc: 已完成数量 sendstate = 6L
     * dfs: 待发送数量 sendstate = 1L, 3L, 4L, 5L, 6L, 7L
     * yfs: 已发送数量 sendstate = 2L
     * yc: 异常数量 excep = '1'
     * yc: 警告数量 excep = '2'
     */
@@ -215,7 +231,11 @@
     */
    PatMedRes selectVisitCount(PatMedReq patMedReq);
    List<Long> querySendCount(ServiceSubtaskSatisfactionEntity serviceSubtaskSatisfactionEntity);
    /**
     * 按病区分组统计延续护理数量
@@ -241,4 +261,19 @@
     */
    List<Map<String, Object>> getHeLibraryCount(HeLibraryCountVO heLibraryCountVO);
    /**
     * 宣教统计超链接
     */
    List<ServiceSubtask> gethelibraryCountHyperlink(HeLibraryCountVO heLibraryCountVO);
}