liusheng
2025-09-29 55f5271f893a25a7be671b24938e49976936a67b
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceTaskController.java
@@ -12,7 +12,6 @@
import com.ruoyi.common.utils.RSAPublicKeyExample;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.common.SendService;
import com.smartor.domain.*;
import com.smartor.service.IServiceSubtaskService;
import com.smartor.service.IServiceTaskService;
@@ -22,13 +21,11 @@
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.*;
import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -56,19 +53,6 @@
    @Autowired
    private RSAPublicKeyExample rsaPublicKeyExample;
    @Autowired
    private SendService sendService;
    @PostMapping("/test")
    public TableDataInfo test(@RequestBody SendMagParam sendMagParam) {
        try {
            Boolean aBoolean = sendService.sendMsg(sendMagParam);
        } catch (Exception e) {
            e.printStackTrace();
        }
        return null;
    }
    /**
     * 查询语音任务列表
@@ -152,6 +136,19 @@
    }
    /**
     * 获取随访及时率
     */
    @ApiOperation("获取随访及时率")
    //@PreAuthorize("@ss.hasPermi('smartor:ServiceTask:add')")
    @Log(title = "获取随访及时率", businessType = BusinessType.INSERT)
    @PostMapping("/selectTimelyRate")
    public AjaxResult selectTimelyRate(@RequestBody ServiceSubtask serviceSubtask) {
        SysUser user = getLoginUser().getUser();
        serviceSubtask.setOrgid(user.getOrgid());
        return success(serviceTaskService.selectTimelyRate(serviceSubtask));
    }
    /**
     * 修改语音任务
     */
    @ApiOperation("修改任务")
@@ -199,7 +196,7 @@
    public AjaxResult getScriptInfoByCondition(@RequestBody ServiceTaskScriptQues serviceTaskScriptQues) {
        Long tid = null;
        Long pid = null;
        log.error("getScriptInfoByCondition入参为:{}", serviceTaskScriptQues);
        log.info("getScriptInfoByCondition入参为:{}", serviceTaskScriptQues);
        try {
            tid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam1(), pri_key));
            pid = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam2(), pri_key));
@@ -207,7 +204,7 @@
            log.error("getScriptInfoByCondition报错了:{}", e.getMessage());
        }
        log.error("tid和pid的值为:{},{}", tid, pid);
        log.info("tid和pid的值为:{},{}", tid, pid);
        if (StringUtils.isEmpty(serviceTaskScriptQues.getPatfrom())) serviceTaskScriptQues.setPatfrom("0");
        return success(serviceTaskService.getScriptInfoByCondition(tid, pid, true, serviceTaskScriptQues.getPatfrom()));
    }
@@ -231,9 +228,36 @@
            log.error("getScriptInfoByCondition报错了:{}", e.getMessage());
        }
        log.error("tid和pid的值为:{},{}", tid, pid);
        log.info("tid和pid的值为:{},{}", tid, pid);
        if (StringUtils.isEmpty(serviceTaskScriptQues.getPatfrom())) serviceTaskScriptQues.setPatfrom("0");
        return success(serviceTaskService.getScriptInfoByCondition(tid, pid, true, serviceTaskScriptQues.getPatfrom()));
    }
    /**
     * 通过任务ID和患者ID获取单个人的题目信息
     *
     * @return
     */
    @ApiOperation("通过任务ID和诊疗记录号获取单个人的题目信息")
    @PostMapping("/getScriptByCondition")
    public AjaxResult getScriptByCondition(@RequestBody ServiceTaskScriptQues serviceTaskScriptQues) {
        RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
        Long taskId = Long.valueOf(rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam1(), pri_key));
        String zyserialnum = null;
        String mzserialnum = null;
        String tsserialnum = null;
        if (StringUtils.isNotEmpty(serviceTaskScriptQues.getParam2()))
            zyserialnum = rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam2(), pri_key);
        if (StringUtils.isNotEmpty(serviceTaskScriptQues.getParam3()))
            mzserialnum = rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam3(), pri_key);
        if (StringUtils.isNotEmpty(serviceTaskScriptQues.getParam4()))
            tsserialnum = rsaPublicKeyExample.decryptedData(serviceTaskScriptQues.getParam4(), pri_key);
        Map<String, Object> scriptByCondition = serviceTaskService.getScriptByCondition(taskId, zyserialnum, mzserialnum, tsserialnum);
        scriptByCondition.put("zy", serviceTaskScriptQues.getParam2());
        scriptByCondition.put("mz", serviceTaskScriptQues.getParam3());
        scriptByCondition.put("tid", serviceTaskScriptQues.getParam1());
        return success(scriptByCondition);
    }
}