liusheng
10 天以前 274d8e2950e79e73b14783e497cdaf97f7dbb8d3
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
@@ -58,6 +58,8 @@
    public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskEntity serviceSubtaskVO);
    public List<ServiceSubtask> selectServiceSubtaskListDeadLine(ServiceSubtaskEntity serviceSubtaskVO);
    public List<Integer> selectSendstateByCondition(ServiceSubtask serviceSubtask);
    /**
@@ -69,6 +71,23 @@
    public int insertServiceSubtask(ServiceSubtask ServiceSubtask);
    /**
     * 任务组(appltype=5):统计某一轮次内仍在运行的 subtask 数量。
     * 仍在运行 = sendstate in (1,2,3) 且未删除。
     * 用于判断本轮是否已全部 finalize(成功/失败/不执行/超时)。
     *
     * @param scheduleId 计划主键
     * @param loopCount  轮次(0=首轮)
     */
    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);
    /**
     * 随访及时率:应随访时间<实际随访时间
     *
     * @param ServiceSubtask
@@ -77,7 +96,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
@@ -233,9 +259,21 @@
    /**
     * 统计问题的选项的百分比
     *
     * @param taskIds
     * @param taskIds           任务 ID 列表 (用于服务类型 2)
     * @param startOutHospTime
     * @param endOutHospTime
     * @return
     */
    List<ServiceSubtaskDetailRatioExport> statQuestionOption(@Param("taskIds") List<Long> taskIds, @Param("startOutHospTime") Date startOutHospTime, @Param("endOutHospTime") Date endOutHospTime);
    /**
     * 根据子任务 ID 统计问题的选项的百分比(用于满意度统计 serviceType=6)
     *
     * @param subtaskIds        子任务 ID 列表 (只能单个 taskid 下的所有子任务 id)
     * @param startOutHospTime
     * @param endOutHospTime
     * @return
     */
    List<ServiceSubtaskDetailRatioExport> statQuestionOptionBySubtaskIds(@Param("subtaskIds") List<Long> subtaskIds, @Param("startOutHospTime") Date startOutHospTime, @Param("endOutHospTime") Date endOutHospTime);
}