liusheng
2024-11-08 048db32d9a965f1ef398a8aa02a012e9b968a6b1
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyTaskController.java
@@ -8,14 +8,18 @@
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.RSAPublicKeyExample;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.*;
import com.smartor.service.IServiceSubtaskService;
import com.smartor.service.ISvyTaskService;
import com.smartor.service.ISvyTaskSingleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@@ -29,20 +33,33 @@
 * @author ruoyi
 * @date 2024-06-12
 */
@Slf4j
@Api(description = " 问卷任务(任务)")
@RestController
@RequestMapping("/smartor/svytask")
public class SvyTaskController extends BaseController {
    @Autowired
    private ISvyTaskService svyTaskService;
//
//    @Autowired
//    private ISvyTaskSingleService iSvyTaskSingleService;
    @Autowired
    private ISvyTaskSingleService iSvyTaskSingleService;
    private IServiceSubtaskService serviceSubtaskService;
    @Value("${pub_key}")
    private String pub_key;
    @Value("${pri_key}")
    private String pri_key;
    /**
     * 查询问卷任务(任务)列表
     */
    @ApiOperation("查询问卷任务(任务)列表")
    @PreAuthorize("@ss.hasPermi('system:task:list')")
    //@PreAuthorize("@ss.hasPermi('system:task:list')")
    @PostMapping("/list")
    public TableDataInfo list(@RequestBody SvyTask svyTask) {
        PageUtils.startPageByPost(svyTask.getPageNum(), svyTask.getPageSize());
@@ -50,9 +67,9 @@
        List<SvyTaskVO> svyTaskVOS = DtoConversionUtils.sourceToTarget(list, SvyTaskVO.class);
        if (CollectionUtils.isNotEmpty(svyTaskVOS)) {
            for (SvyTaskVO svyTaskVO : svyTaskVOS) {
                SvyTaskSingle svyTaskSingle = new SvyTaskSingle();
                svyTaskSingle.setTaskid(svyTaskVO.getTaskid());
                List<SvyTaskSingle> svyTaskSingles = iSvyTaskSingleService.selectSvyTaskSingleList(svyTaskSingle);
                ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO();
                serviceSubtaskVO.setTaskid(svyTaskVO.getTaskid());
                List<ServiceSubtask> svyTaskSingles = serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
                if (CollectionUtils.isNotEmpty(svyTaskSingles)) {
                    //已发送
                    long yfs = svyTaskSingles.stream().filter(svyTaskcall1 -> svyTaskcall1.getSendstate() != null && svyTaskcall1.getSendstate() == 3L).collect(Collectors.toList()).stream().count();
@@ -84,7 +101,7 @@
     * 导出问卷任务(任务)列表
     */
    @ApiOperation("导出问卷任务(任务)列表")
    @PreAuthorize("@ss.hasPermi('system:task:export')")
    //@PreAuthorize("@ss.hasPermi('system:task:export')")
    @Log(title = "综合问卷任务(任务)", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, SvyTask svyTask) {
@@ -97,7 +114,7 @@
     * 获取问卷任务(任务)详细信息
     */
    @ApiOperation("获取问卷任务(任务)详细信息")
    @PreAuthorize("@ss.hasPermi('system:task:query')")
    //@PreAuthorize("@ss.hasPermi('system:task:query')")
    @GetMapping(value = "/{taskid}")
    public AjaxResult getInfo(@PathVariable("taskid") Long taskid) {
        return success(svyTaskService.selectSvyTaskByTaskid(taskid));
@@ -107,7 +124,7 @@
     * 新增问卷任务(任务)
     */
    @ApiOperation("新增问卷任务(任务)")
    @PreAuthorize("@ss.hasPermi('system:task:add')")
    //@PreAuthorize("@ss.hasPermi('system:task:add')")
    @Log(title = "综合问卷任务(任务)", businessType = BusinessType.INSERT)
    @PostMapping("/add")
    public AjaxResult add(@RequestBody SvyTask svyTask) {
@@ -118,7 +135,7 @@
     * 修改问卷任务(任务)
     */
    @ApiOperation("修改问卷任务(任务)")
    @PreAuthorize("@ss.hasPermi('system:task:edit')")
    //@PreAuthorize("@ss.hasPermi('system:task:edit')")
    @Log(title = "综合问卷任务(任务)", businessType = BusinessType.UPDATE)
    @PostMapping("/edit")
    public AjaxResult edit(@RequestBody SvyTask svyTask) {
@@ -129,10 +146,25 @@
     * 删除问卷任务(任务)
     */
    @ApiOperation("删除问卷任务(任务)")
    @PreAuthorize("@ss.hasPermi('system:task:remove')")
    //@PreAuthorize("@ss.hasPermi('system:task:remove')")
    @Log(title = "问卷任务(任务)", businessType = BusinessType.DELETE)
    @GetMapping("/{taskids}")
    public AjaxResult remove(@PathVariable Long[] taskids) {
        return toAjax(svyTaskService.deleteSvyTaskByTaskids(taskids));
    }
    /**
     * 通过任务ID和患者ID获取单个人的题目信息
     *
     * @return
     */
    @ApiOperation("通过任务ID和患者ID获取单个人的题目信息")
    @PostMapping("/getSvyScriptInfoByCondition")
    public TableDataInfo getScriptInfoByCondition(@RequestBody ServiceTaskScriptQues ivrTaskScriptQues) {
        RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
        Long tid = Long.valueOf(rsaPublicKeyExample.decryptedData(ivrTaskScriptQues.getParam1(), pri_key));
        Long pid = Long.valueOf(rsaPublicKeyExample.decryptedData(ivrTaskScriptQues.getParam2(), pri_key));
        log.info("tid和pid的值为:{},{}", tid, pid);
        return getDataTable(svyTaskService.getScriptInfoByCondition(tid, pid));
    }
}