liusheng
2026-09-29 60ade5154522a042c816abaa1840751011ae0371
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskDetailMapper.java
@@ -51,6 +51,29 @@
     */
    public List<Map<String, Object>> selectSatisfactionFillStatByMatchedtext(SatisfactionStatQuery query);
    /**
     * 满意度柱状图:一次性统计本次请求全部模板的「回收人数」
     * (按 libtemplateid 分组,count(distinct sub_id):同一个人答了多道题只算一人)
     * <p>
     * satisfactionGraph / satisfactionGraphDimension 的回收人数必须是人数口径,
     * 不能像 selectSatisfactionFillStat 那样按题目汇总答案行数(那是题量口径)
     *
     * @param query 聚合查询条件
     * @return 每行含 libtemplateid、cnt(该模板已回收的份数/人数)
     */
    public List<Map<String, Object>> selectSatisfactionFillPersonCount(SatisfactionStatQuery query);
    /**
     * 按 scriptid 批量统计填写记录数(一次 SQL 替代逐个 scriptid 查明细)
     * <p>
     * 口径与原来「query.setScriptid(scriptId) 后 selectServiceSubtaskDetailList(...).size()」一致:
     * 只按 scriptid 过滤,不带 del_flag(原 SQL 里并没有 del_flag 条件)。
     *
     * @param scriptIds 问题ID集合
     * @return 每行含 scriptid、cnt
     */
    public List<Map<String, Object>> countDetailByScriptIds(@Param("scriptIds") List<Long> scriptIds);
    public ServiceSubtaskDetailDTO isExistServiceSubtaskDetail(@Param("subid") Long subid, @Param("scriptid") Long scriptid);
    /**