已修改8个文件
80 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/IvrTaskTemplateController.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/IvrTaskTemplateMapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IIvrTaskTemplateService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/SvyTaskTemplateServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/IvrTaskTemplateMapper.xml 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/IvrTaskTemplateController.java
@@ -6,12 +6,15 @@
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.HeLibrary;
import com.smartor.domain.IvrTaskTemplate;
import com.smartor.domain.IvrTaskTemplateVO;
import com.smartor.service.IIvrTaskTemplateService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
@@ -118,4 +121,16 @@
    public AjaxResult remove(@PathVariable Long[] IDs) {
        return toAjax(ivrTaskTemplateService.deleteIvrTaskTemplateByIDs(IDs));
    }
    /**
     * 查询模板详情根据条件 -- 语音任务模板库
     */
    @ApiOperation("查询语音任务模板详情根据条件")
    @PostMapping("/selectInfoByCondition")
    public AjaxResult selectInfoByCondition(@RequestBody IvrTaskTemplateVO vo) {
        if (ObjectUtils.isEmpty(vo)) {
            throw new BaseException("查询语音任务模板详情入参为空,请检查入参");
        }
        return success(ivrTaskTemplateService.selectInfoByCondition(vo));
    }
}
smartor/src/main/java/com/smartor/mapper/IvrTaskTemplateMapper.java
@@ -35,6 +35,7 @@
     * @param ivrTaskTemplate 随访任务随访模板库
     * @return 结果
     */
    //todo
    public int insertIvrTaskTemplate(IvrTaskTemplate ivrTaskTemplate);
    /**
smartor/src/main/java/com/smartor/service/IIvrTaskTemplateService.java
@@ -71,7 +71,7 @@
    public int deleteIvrTaskTemplateByID(Long ID);
    /**
     * 查询模板详情根据条件
     * 查询语音任务模板详情根据条件
     */
    public IvrTaskTemplateVO selectInfoByCondition(IvrTaskTemplateVO ivrTaskTemplateVO);
}
smartor/src/main/java/com/smartor/service/impl/IvrTaskTemplateServiceImpl.java
@@ -118,6 +118,7 @@
    @Override
    public int saveOrUpdateTempScript(IvrTaskTemplateVO ivrTaskTemplateVO) {
        Integer i = null;
        String orgId = ivrTaskTemplateVO.getOrgid();
        IvrTaskTemplate ivrTaskTemplate = DtoConversionUtils.sourceToTarget(ivrTaskTemplateVO, IvrTaskTemplate.class);
        if (ivrTaskTemplateVO.getIsoperation() != null && ivrTaskTemplateVO.getIsoperation() == 1) {
@@ -127,7 +128,16 @@
            //新增
            ivrTaskTemplate.setCreateTime(new Date());
            ivrTaskTemplate.setDelFlag("0");
            ivrTaskTemplate.setOrgid(orgId);
            log.info("准备插入模板,delFlag={}", ivrTaskTemplate.getDelFlag());
            insertIvrTaskTemplate(ivrTaskTemplate);
            log.info("插入成功,模板ID={}", ivrTaskTemplate.getId());
            // 立即查询验证
            IvrTaskTemplate checkTemplate = ivrTaskTemplateMapper.selectIvrTaskTemplateByID(ivrTaskTemplate.getId());
            log.info("立即查询结果: {}", checkTemplate != null ? "找到记录, delFlag=" + checkTemplate.getDelFlag() : "未找到记录");
            i = ivrTaskTemplate.getId().intValue();
        } else if (ivrTaskTemplateVO.getIsoperation() != null && ivrTaskTemplateVO.getIsoperation() == 2) {
            //修改
@@ -196,16 +206,16 @@
     */
    @Override
    public IvrTaskTemplateVO selectInfoByCondition(IvrTaskTemplateVO ivrTaskTemplateVO) {
        log.info("查询模板详情根据条件的入参为 : {}", ivrTaskTemplateVO);
        log.info("查询语音任务模板详情根据条件的入参为 : {}", ivrTaskTemplateVO);
        //先根据条件查询问题表信息
        IvrTaskTemplate ivrTaskTemplate = DtoConversionUtils.sourceToTarget(ivrTaskTemplateVO, IvrTaskTemplate.class);
        List<IvrTaskTemplate> ivrTaskTemplates = selectIvrTaskTemplateList(ivrTaskTemplate);
        if (CollectionUtils.isEmpty(ivrTaskTemplates)) {
            log.info("提供的条件,查询模板详情数据为空:{}", ivrTaskTemplates);
            throw new BaseException("提供的条件,查询模板详情数据为空");
            log.info("提供的条件,查询语音任务模板详情数据为空:{}", ivrTaskTemplates);
            throw new BaseException("提供的条件,查询语音任务模板详情数据为空");
        }
        log.info("ivrLibaTemplates的查询结果为:{},数量为 : {}", ivrTaskTemplates.get(0), ivrTaskTemplates.size());
        log.info("ivrTaskTemplates的查询结果为:{},数量为 : {}", ivrTaskTemplates.get(0), ivrTaskTemplates.size());
        //定义IvrLibaTemplateVO 用于返参
        IvrTaskTemplateVO templateVO = DtoConversionUtils.sourceToTarget(ivrTaskTemplates.get(0), IvrTaskTemplateVO.class);
//
@@ -222,7 +232,7 @@
        //通过话术ID获取选项
        for (IvrTaskTemplateScriptVO ivrTaskTemplateScriptVO : ivrTaskTemplateScriptVOS) {
            log.info("ivrLibaTemplateScriptVO的主键id为:{}", ivrTaskTemplateScriptVO.getId());
            log.info("IvrTaskTemplateScriptVO的主键id为:{}", ivrTaskTemplateScriptVO.getId());
            IvrTaskTemplateTargetoption ivrTaskTemplateTargetoption = new IvrTaskTemplateTargetoption();
            ivrTaskTemplateTargetoption.setScriptid(ivrTaskTemplateScriptVO.getId());
            List<IvrTaskTemplateTargetoption> ivrTaskTemplateTargetoptions = ivrTaskTemplateTargetoptionMapper.selectIvrTaskTemplateTargetoptionList(ivrTaskTemplateTargetoption);
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -834,13 +834,21 @@
        //如果是通知的话,需要提前几天将通过短信发出去(具体几天,这个可以配置在sys_conf表中)
        if ("3".equals(serviceTask.getType())) {
            serviceSubtask.setVisitTime(minusDay(newDate, StringUtils.isNotEmpty(config) ? Integer.parseInt(config) : 0));
            //判断是不是景宁
            if (patMedInhosp1.getOrgid().equals("47255004333112711A1001"))
                serviceSubtask.setVisitTime(null);
            //如果该出院记录有随访时间,则用他自己的随访时间
            if (patMedInhosp1.getFudate() != null)
                serviceSubtask.setVisitTime(minusDay(patMedInhosp1.getFudate(), StringUtils.isNotEmpty(config) ? Integer.parseInt(config) : 0));
            if (patMedInhosp1.getFudate() != null){
                serviceSubtask.setVisitTime(minusDay(patMedInhosp1.getFudate(),
                        StringUtils.isNotEmpty(config) ? Integer.parseInt(config) : 0));
            }else{
                //判断是不是景宁
                if (patMedInhosp1.getOrgid().equals("47255004333112711A1001"))
                {
                    serviceSubtask.setVisitTime(null);
                    //不执行
                    serviceSubtask.setSendstate(4L);
                    serviceSubtask.setRemark("景宁没有给随访时间,不发送通知短信");
                }
            }
        }
        //患者发送时间
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -520,7 +520,15 @@
            }
            if (ObjectUtils.isNotEmpty(serviceTaskVO.getIvrTaskTemplateVO())) {
                tempid = Long.valueOf(ivrTaskTemplateService.saveOrUpdateTempScript(serviceTaskVO.getIvrTaskTemplateVO()));
                tempName = ivrTaskTemplateService.selectIvrTaskTemplateByID(tempid).getTemplateName();
                log.info("IVR模板插入成功,返回的tempid={}", tempid);
                IvrTaskTemplate ivrTaskTemplate = ivrTaskTemplateService.selectIvrTaskTemplateByID(tempid);
                if (ivrTaskTemplate == null) {
                    log.error("根据tempid={}查询IVR模板失败,返回null!请检查del_flag字段是否正确设置", tempid);
                    throw new BaseException("IVR模板保存成功但查询失败,请联系管理员检查数据");
                }
                tempName = ivrTaskTemplate.getTemplateName();
                log.info("IVR模板查询成功,tempName={}", tempName);
            }
            //往任务表中,新增任务
smartor/src/main/java/com/smartor/service/impl/SvyTaskTemplateServiceImpl.java
@@ -16,6 +16,7 @@
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Collections;
import java.util.Comparator;
@@ -115,12 +116,14 @@
     * @return
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public Integer saveOrUpdateTemplate(SvyTaskTemplateVO svyTaskTemplateVO) {
        Integer i = null;
        SvyTaskTemplate svyTaskTemplate = DtoConversionUtils.sourceToTarget(svyTaskTemplateVO, SvyTaskTemplate.class);
        if (svyTaskTemplateVO.getIsoperation() != null && svyTaskTemplateVO.getIsoperation() == 1) {
            //新增
            svyTaskTemplate.setCreateTime(new Date());
            svyTaskTemplate.setDelFlag("0");
            svyTaskTemplateMapper.insertSvyTaskTemplate(svyTaskTemplate);
            i = svyTaskTemplate.getId().intValue();
        } else if (svyTaskTemplateVO.getIsoperation() != null && svyTaskTemplateVO.getIsoperation() == 2) {
smartor/src/main/resources/mapper/smartor/IvrTaskTemplateMapper.xml
@@ -92,7 +92,7 @@
            resultMap="IvrTaskTemplateResult">
        <include refid="selectIvrTaskTemplateVo"/>
        <where>
            del_flat=0
            del_flag = 0
            <if test="taskid != null ">and taskid = #{taskid}</if>
            <if test="sendDay != null ">and send_day = #{sendDay}</if>
            <if test="id != null ">and id = #{id}</if>
@@ -155,7 +155,8 @@
    <select id="selectIvrTaskTemplateByID" parameterType="Long" resultMap="IvrTaskTemplateResult">
        <include refid="selectIvrTaskTemplateVo"/>
        where id = #{id} and del_flag=0
        where id = #{id}
        and del_flag=0
    </select>
    <insert id="insertIvrTaskTemplate" parameterType="com.smartor.domain.IvrTaskTemplate" useGeneratedKeys="true"
@@ -190,7 +191,7 @@
            <if test="deptIds != null">deptIds,</if>
            <if test="deptNames != null">dept_names,</if>
            <if test="fKsdm != null">F_KSDM,</if>
            <if test="delFlag != null and delFlag != ''">del_flag,</if>
            del_flag,
            <if test="updateBy != null">update_by,</if>
            <if test="updateTime != null">update_time,</if>
            <if test="createBy != null">create_by,</if>
@@ -249,7 +250,7 @@
            <if test="deptIds != null">#{deptIds},</if>
            <if test="deptNames != null">#{deptNames},</if>
            <if test="fKsdm != null">#{fKsdm},</if>
            <if test="delFlag != null and delFlag != ''">#{delFlag},</if>
            '0',
            <if test="updateBy != null">#{updateBy},</if>
            <if test="updateTime != null">#{updateTime},</if>
            <if test="createBy != null">#{createBy},</if>