0c621621889c90a119e2ff9e41c4f5528f395f7e..84eb9a79df73707ee2bffdb5fbf70591f1221fd3
10 小时以前 zhs
04-22 zhs
84eb9a 对比 | 目录
13 小时以前 liusheng
代码提交
5a3dd9 对比 | 目录
13 小时以前 liusheng
代码提交
3e0ffe 对比 | 目录
18 小时以前 liusheng
代码提交
e4e220 对比 | 目录
已添加1个文件
已修改11个文件
185 ■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application-druid.yml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/application.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/enums/VisitSendStateEnum.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/component/RedisMqReceiver.java
@@ -319,12 +319,11 @@
                                iServiceOutPathService.updateServiceOutPath(serviceOutPath);
                                sendMagParam.setPhone(serviceSubtask.getPhone());
                                sendMagParam.setUrl(ip + ":" + req_path + "/sf?p=" + format);
                                if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) {
                                    sendMagParam.setContent("【景宁畲族自治县人民医院】您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!");
                                } else if (serviceSubtask.getOrgid().equals("47255004333112711A1001")) {
                                    sendMagParam.setContent("【丽水中医院】您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!");
                                } else
                                if (visitHosp == 2) {
                                    sendMagParam.setContent("您好,邀请您填写出院宣教调查表,请点击" + sendMagParam.getUrl() + "查看。感谢您配合!");
                                } else if (visitHosp == 1) {
                                    sendMagParam.setContent("【新华医院】您好,邀请您填写出院随访调查表,请点击" + sendMagParam.getUrl() + "填写。感谢您配合!");
                                }
                            } else if (type == 2) {
                                //问券(问题)
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -91,7 +91,7 @@
    //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
    @Log(title = "单一任务(随访宣教)", businessType = BusinessType.EXPORT)
    @PostMapping("/patItemExport")
    public void patItemExport(HttpServletResponse response,ServiceSubtaskVO serviceSubtaskVO) {
    public void patItemExport(HttpServletResponse response, ServiceSubtaskVO serviceSubtaskVO) {
        List<ServiceSubtask> serviceSubtaskList = null;
        if (serviceSubtaskVO != null) {
            if (serviceSubtaskVO.getPageNum() != null && serviceSubtaskVO.getPageSize() != null)
@@ -161,6 +161,20 @@
        util.exportExcel(response, list, "单一任务(随访)数据");
    }
    /**
     * å†æ¬¡éšè®¿æ•°æ®æŸ¥è¯¢
     */
    //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
    @Log(title = "再次随访数据查询", businessType = BusinessType.EXPORT)
    @PostMapping("/querySubtaskListAgain")
    public TableDataInfo querySubtaskListAgain(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
        PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
        serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO);
        return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO));
    }
    /**
     * èŽ·å–å•ä¸€ä»»åŠ¡ï¼ˆéšè®¿ï¼‰è¯¦ç»†ä¿¡æ¯
     */
ruoyi-admin/src/main/resources/application-druid.yml
@@ -13,10 +13,15 @@
        #        å…¬å¸
        #        url: jdbc:mysql://192.168.2.9:3308/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        #        ä¸½æ°´
        url: jdbc:mysql://127.0.0.1:3308/smartor-lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: smartor
        password: Smartor.2023
        driverClassName: com.mysql.cj.jdbc.Driver
#        url: jdbc:mysql://127.0.0.1:3308/smartor-lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
#        username: smartor
#        password: Smartor.2023
#        driverClassName: com.mysql.cj.jdbc.Driver
        #        æ²³å—
#        url: jdbc:mysql://127.0.0.1:3308/smartor_hn?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
#        username: root
#        password: 123456
#        driverClassName: com.mysql.cj.jdbc.Driver
        #        # æ–°åŽ
        #        url: jdbc:mysql://192.168.191.181:3308/smartor?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        #        username: smartor
@@ -24,10 +29,10 @@
        #        driverClassName: com.mysql.cj.jdbc.Driver
        #  å…¬å¸äº‘
      #        url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
      #        username: hxsoft
      #        password: Hxerp2000
      #        driverClassName: com.mysql.cj.jdbc.Driver
        url: jdbc:mysql://116.62.18.175:6002/smartor_lisui?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
        username: hxsoft
        password: Hxerp2000
        driverClassName: com.mysql.cj.jdbc.Driver
      # ä»Žåº“数据源
      slave:
ruoyi-admin/src/main/resources/application.yml
@@ -131,7 +131,7 @@
# Swagger配置
swagger:
  # æ˜¯å¦å¼€å¯swagger
  enabled: false
  enabled: true
  # è¯·æ±‚前缀
  pathMapping: /dev-api
ruoyi-common/src/main/java/com/ruoyi/common/enums/VisitSendStateEnum.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,56 @@
package com.ruoyi.common.enums;
/**
 * éšè®¿èƒ½å¦å‘送长期任务枚举
 */
public enum VisitSendStateEnum {
    zyy("47231022633110211A2101", "丽水中医院", true),
    jn("47255004333112711A1001", "景宁", false);
    private String code;
    private String desc;
    private Boolean visitFlag;
    VisitSendStateEnum(String code, String desc, Boolean visitFlag) {
        this.code = code;
        this.desc = desc;
        this.visitFlag = visitFlag;
    }
    public static Boolean getDescByCode(String code) {
        VisitSendStateEnum[] organEnums = values();
        for (int i = 0; i < organEnums.length; i++) {
            VisitSendStateEnum organEnum = organEnums[i];
            if (organEnum.getCode().equals(code)) {
                return organEnum.getVisitFlag();
            }
        }
        return null;
    }
    public Boolean getVisitFlag() {
        return visitFlag;
    }
    public void setVisitFlag(Boolean visitFlag) {
        this.visitFlag = visitFlag;
    }
    public String getCode() {
        return code;
    }
    public void setCode(String code) {
        this.code = code;
    }
    public String getDesc() {
        return desc;
    }
    public void setDesc(String desc) {
        this.desc = desc;
    }
}
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -10,6 +10,7 @@
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.enums.MsgLSEnum;
import com.ruoyi.common.enums.ServiceFromEnum;
import com.ruoyi.common.enums.VisitSendStateEnum;
import com.ruoyi.common.enums.WxGZHEnum;
import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.HttpUtil;
@@ -334,6 +335,15 @@
                ivrTaskcall.setTaskid(commonTaskcallMQ.getTaskid());
                ivrTaskcall.setSendstate(2L);
                List<ServiceSubtask> subtaskList = iServiceSubtaskService.selectServiceSubtaskList(ivrTaskcall);
                //丽水有的医院还没法做长期任务随访
                List<ServiceSubtask> subtaskList2 = new ArrayList<>();
                if (visitHosp == 2) {
                    for (ServiceSubtask serviceSubtask : subtaskList) {
                        Boolean b = VisitSendStateEnum.getDescByCode(serviceSubtask.getOrgid());
                        if (b) subtaskList2.add(serviceSubtask);
                    }
                    subtaskList = subtaskList2;
                }
                // æŒ‰ç…§ endtime ç¦»å½“前时间最近的排序
                List<ServiceSubtask> selectServiceSubtaskList = subtaskList.stream().sorted(Comparator.comparing(subtask -> Math.abs(subtask.getEndtime().getTime() - new Date().getTime()))).collect(Collectors.toList());
@@ -539,7 +549,7 @@
                    RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
                    String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key);
                    for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) {
                        log.error("serviceSubtask---------进来了吗?{}", serviceSubtask);
                      //  log.error("serviceSubtask---------进来了吗?{}", serviceSubtask);
                        boolean dateToday = isDateToday(serviceSubtask.getLongSendTime());
                        if (dateToday) {
                            try {
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysMenuServiceImpl.java
@@ -151,7 +151,6 @@
         * @return è·¯ç”±åˆ—表
         */
        @Override public List<RouterVo> buildMenus (List < SysMenu > menus) {
            log.error("buildMenus的入参为:{}", menus);
            List<RouterVo> routers = new LinkedList<RouterVo>();
            for (SysMenu menu : menus) {
                RouterVo router = new RouterVo();
smartor/src/main/java/com/smartor/mapper/ServiceSubtaskMapper.java
@@ -32,6 +32,8 @@
    public List<ServiceSubtask> selectServiceSubtaskListByCreateTime(ServiceSubtaskVO serviceSubtaskVO);
    public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskVO serviceSubtaskVO);
    public Integer selectSendstateByCondition(ServiceSubtask serviceSubtask);
    /**
smartor/src/main/java/com/smartor/service/IServiceSubtaskService.java
@@ -31,6 +31,8 @@
     */
    public List<ServiceSubtask> selectServiceSubtaskList(ServiceSubtaskVO serviceSubtaskVO);
    public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskVO serviceSubtaskVO);
    /**
     * æ ¹æ®æ¡ä»¶æŸ¥è¯¢ä»»åŠ¡ä¿¡æ¯
     *
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -687,7 +687,7 @@
        serviceSubtask.setLongSendTime(newDate);
        //患者发送时间
        if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) {
            log.error("serviceSubtask99999999的值为:{}",serviceSubtask);
//            log.error("serviceSubtask99999999的值为:{}",serviceSubtask);
            String remark = patArchive.getNotrequiredreason();
            serviceSubtask.setRemark(remark);
            serviceSubtask.setResult("error");
@@ -707,7 +707,7 @@
                subtask.setPatid(patMedInhosp1.getPatid());
                subtask.setSendstate(2L);
                List<ServiceSubtask> selectServiceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(subtask);
                log.error("入院的患者待执行的任务:{}", selectServiceSubtaskList);
//                log.error("入院的患者待执行的任务:{}", selectServiceSubtaskList);
                if (CollectionUtils.isNotEmpty(selectServiceSubtaskList) && selectServiceSubtaskList.size() > 0) {
                    for (ServiceSubtask serviceSubtask1 : selectServiceSubtaskList) {
                        if (Objects.isNull(serviceSubtask1.getLongSendTime())) {
@@ -716,7 +716,7 @@
                        }
                        if (serviceSubtask1.getEndtime().before(patMedInhosp1.getStarttime())) {
                            //如果当前循环的子任务的出院时间在“准备新增的子任务”的出院时间之前,则将循环的子任务停掉
                            log.error("患者再入院的serviceSubtask1为:{}", serviceSubtask1);
//                            log.error("患者再入院的serviceSubtask1为:{}", serviceSubtask1);
                            serviceSubtask1.setSendstate(4L);
                            serviceSubtask1.setRemark("患者再入院");
                            serviceSubtask1.setResult("error");
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -156,6 +156,10 @@
        return serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
    }
    public List<ServiceSubtask> selectServiceSubtaskListAgain(ServiceSubtaskVO serviceSubtaskVO){
        return serviceSubtaskMapper.selectServiceSubtaskListAgain(serviceSubtaskVO);
    }
    @Override
    public ServiceTaskVO queryTaskByCondition(ServiceSubtask serviceSubtask) {
        //定义患者与单一任务关联表集合
@@ -284,11 +288,13 @@
        Integer fssb = 0;
        Integer yfs = 0;
        Integer blq = 0;
        Integer dsf = 0;
        for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) {
            if (serviceSubtask.getSendstate() == 4L) wzx = wzx + 1;
            else if (serviceSubtask.getSendstate() != 4L) ysf = ysf + 1;
            if (serviceSubtask.getSendstate() == 5L) fssb = fssb + 1;
            if (serviceSubtask.getSendstate() >= 3L || serviceSubtask.getSendstate() == 1L) yfs = yfs + 1;
            if (serviceSubtask.getSendstate() == 2L) dsf = dsf + 1;
            if (serviceSubtask.getSendstate() == 1L) blq = blq + 1;
            if (serviceSubtask.getExcep().equals("1")) yc = yc + 1;
        }
@@ -298,6 +304,7 @@
        map.put("fssb", fssb);
        map.put("yfs", yfs);
        map.put("blq", blq);
        map.put("dsf", dsf);
        return map;
    }
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -323,6 +323,57 @@
    </select>
    <select id="selectServiceSubtaskListAgain" parameterType="com.smartor.domain.ServiceSubtaskVO"
            resultMap="ServiceSubtaskResult">
        <include refid="selectServiceSubtaskVo"/>
        <where>
            del_flag=0
            and upid is not null
            and visit_count > 1
            <if test="createStartTime != null  and createEndTime != null">and create_time BETWEEN #{createStartTime} AND
                #{createEndTime}
            </if>
            <if test="senddate != null ">and senddate = #{senddate}</if>
            <if test="senduuid != null  and senduuid != ''">and senduuid = #{senduuid}</if>
            <if test="result != null  and result != ''">and result = #{result}</if>
            <if test="finishtime != null ">and finishtime = #{finishtime}</if>
            <if test="recordid != null ">and recordid = #{recordid}</if>
            <if test="exrecallcount != null ">and exrecallcount = #{exrecallcount}</if>
            <if test="pulltime != null ">and pulltime = #{pulltime}</if>
            <if test="deptcode != null  and deptcode != ''">and deptcode = #{deptcode}</if>
            <if test="deptname != null  and deptname != ''">and deptname = #{deptname}</if>
            <if test="labelstatus != null ">and labelstatus = #{labelstatus}</if>
            <if test="isupload != null ">and isupload = #{isupload}</if>
            <if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
            <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
            <if test="pid != null ">and pid = #{pid}</if>
            <if test="preachform != null ">and preachform = #{preachform}</if>
            <if test="guid != null  and guid != ''">and guid = #{guid}</if>
            <if test="textParam != null  and textParam != ''">and text_param = #{textParam}</if>
            <if test="bedNo != null">and bed_no = #{bedNo}</if>
            <if test="sendType != null  and sendType != ''">and send_type = #{sendType}</if>
            <if test="operator != null  and operator != ''">and operator = #{operator}</if>
            <if test="operatorNo != null  and operatorNo != ''">and operator_no = #{operatorNo}</if>
            <if test="wechat != null  and wechat != ''">and wechat = #{wechat}</if>
            <if test="hospType != null  and hospType != ''">and hosp_type = #{hospType}</if>
            <if test="libtemplateid != null ">and libtemplateid = #{libtemplateid}</if>
            <if test="libtemplatename != null ">and libtemplatename = #{libtemplatename}</if>
            <if test="openid != null ">and openid = #{openid}</if>
            <if test="longSendTime != null ">and long_send_time = #{longSendTime}</if>
            <if test="sendstate != null ">and sendstate = #{sendstate}</if>
            <if test="drname != null  and drname != ''">and drname like concat('%', #{drname}, '%')</if>
            <if test="taskName != null  and taskName != ''">and task_name like concat('%', #{taskName}, '%')</if>
            <if test="drcode != null and drcode != ''">and (drcode = #{drcode}</if>
            <if test="nurseId != null  and nurseId != ''">or nurse_id = #{nurseId})</if>
            <if test="starttime != null ">and starttime = #{starttime}</if>
            <if test="endtime != null ">and endtime = #{endtime}</if>
            <if test="excep != null ">and excep = #{excep}</if>
            <if test="nurseName != null ">and nurse_name = #{nurseName}</if>
        </where>
    </select>
    <select id="selectSendstateByCondition" parameterType="com.smartor.domain.ServiceSubtask" resultType="Integer">
        SELECT b.sendstate
        from service_task a