陈昶聿
19 小时以前 a2dd5b42824eff9626d1f48e1561be85f17f6107
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -302,8 +302,7 @@
    public AjaxResult querySubtaskList(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
        PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
        serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity);
        // 该 SQL 已内置 limit ${pageSize} OFFSET ${pageNum},不再走 PageHelper,避免两套分页叠加产生两个 LIMIT
        return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity));
    }
@@ -317,8 +316,8 @@
    public TableDataInfo querySubtaskListAgain(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
        // 该 SQL 未内置 limit,使用 PageHelper 分页;只调用一次,getDataTable 可基于 Page 取到正确 total
        PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
        serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity);
        return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity));
    }
@@ -812,8 +811,18 @@
        LoginUser loginUser = getLoginUser();
        String orgid = loginUser.getUser().getOrgid();
        serviceSubtaskCountReq.setOrgid(orgid);
        PageUtils.startPageByPost(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize());
        return success(serviceSubtaskService.getSfStatisticsScriptDetails(serviceSubtaskCountReq));
        //注意:这里不能再调用 PageUtils.startPageByPost。
        //返回结构是 Map,且不传 type 时会执行两条 SQL,PageHelper 只作用于第一条 SQL,
        //分页已放到 Service 里按题目(scriptid)完成,保证 total 是题目总数。
        Map<String, Object> details = serviceSubtaskService.getSfStatisticsScriptDetails(serviceSubtaskCountReq);
        AjaxResult ajax = success(details.get("data"));
        //兼容旧前端:data 仍然是 {scriptid: 题目} 的 Map;
        //同时按 RuoYi 习惯补上 rows/total/pageNum/pageSize 方便前端分页
        ajax.put("rows", details.get("rows"));
        ajax.put("total", details.get("total"));
        ajax.put("pageNum", details.get("pageNum"));
        ajax.put("pageSize", details.get("pageSize"));
        return ajax;
    }
    /**
@@ -909,6 +918,17 @@
    }
    /**
     * 手动发送问卷模板的微信功能
     *
     * @param subid
     * @return
     */
    @GetMapping(value = "/weChatSubTask/{subid}")
    public Map<String, Object> weChatSubTask(@PathVariable("subid") Long subid) {
        return serviceSubtaskService.weChatSubTask(subid);
    }
    /**
     * 跳转中间页
     *
     * @param taskId