liusheng
昨天 c309ec6868bf937529e8e3ff948dbdedd66e5631
Merge remote-tracking branch 'origin/master'
已修改5个文件
111 ■■■■■ 文件已修改
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/domain/PatMedInhosp.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
@@ -196,6 +196,7 @@
     * @return
     */
    @ApiOperation("各科室服务人次")
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/getDeptRanking")
    public TableDataInfo getDeptRanking(@RequestBody PatMedReq patMedReq) {
        return getDataTable(patMedInhospService.getDeptRanking(patMedReq));
smartor/src/main/java/com/smartor/domain/PatMedInhosp.java
@@ -296,6 +296,11 @@
     */
    @ApiModelProperty(value = "疾病长期任务,是否处理:0未处理   1处理成功    2处理失败 ")
    private String diagcheckFlag;
    /**
     * 手术长期任务,是否处理:0未处理   1处理
     */
    @ApiModelProperty(value = "手术长期任务,是否处理:0未处理   1处理成功    2处理失败 ")
    private String opercheckFlag;
    /**
     * 年龄
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -41,6 +41,8 @@
    @Autowired
    private ServiceTaskdiagMapper serviceTaskdiagMapper;
    @Autowired
    private ServiceTaskoperMapper serviceTaskoperMapper;
    @Autowired
    private PatArchiveMapper patArchiveMapper;
    @Autowired
    private PatArchiveImportMapper patArchiveImportMapper;
@@ -376,6 +378,60 @@
                    patMedInhospMapper.updatePatMedInhosp(pmiJB);
                }
            }
            PatMedInhosp pmss = new PatMedInhosp();
            //获取需要出院疾病随访,未处理的数据
            pmss.setOpercheckFlag("0");
            pmss.setInhospstate("1");
            pmss.setFuflag("1");
            List<PatMedInhosp> patMedInhospSSs = patMedInhospMapper.selectPatMedInhospList(pmss);
            log.info("dealOutHospInfo需要处理的出院疾病患者信息:{}", CollectionUtils.isNotEmpty(patMedInhospSSs) ? patMedInhospSSs.size() : null);
            for (PatMedInhosp patMedInhosp1 : patMedInhospSSs) {
                String tagname = patMedInhospMapper.getTagnameBypatid(patMedInhosp1.getPatid());
                patMedInhosp1.setTagname(tagname);
            }
            for (PatMedInhosp pmiSS : patMedInhospSSs) {
                //获取患者信息
                PatArchive patArchive = patArchiveMapper.selectPatArchiveByPatid(pmiSS.getPatid());
                if (Objects.isNull(patArchive)) {
                    pmiSS.setDiagcheckFlag("2");
                    pmiSS.setLongTaskReason("患者基本信息为空");
                    patMedInhospMapper.updatePatMedInhosp(pmiSS);
                    continue;
                }
                try {
//                    if (StringUtils.isEmpty(pmiSS.getLeaveicd10code())) {
//                        continue;
//                    }
                    // 根据患者的疾病,获取该疾病的长期任务
                    ServiceTaskoper serviceTaskoper = new ServiceTaskoper();
                    serviceTaskoper.setLongtask(1L);
                    serviceTaskoper.setOrgid(pmiSS.getOrgid());
                    //todo
                    serviceTaskoper.setOplevelcode("");
                    List<ServiceTaskoper> serviceTaskopers = serviceTaskoperMapper.selectServiceTaskoperList(serviceTaskoper);
                    //如果部门模板为空(将deptIsNull设置为true)
                    if (CollectionUtils.isEmpty(serviceTaskopers) || serviceTaskopers.size() == 0) {
                        PatMedInhosp patMedInhosp = patMedInhospMapper.selectPatMedInhospByInhospid(pmiSS.getInhospid());
                        pmiSS.setOpercheckFlag("2");
                        pmiSS.setLongTaskReason(patMedInhosp.getLongTaskReason() + "所患的手术未配置长期任务;");
                        patMedInhospMapper.updatePatMedInhosp(pmiSS);
                    } else {
                        for (ServiceTaskoper serviceTaskoper1 : serviceTaskopers) {
                            writeInSubTask(serviceTaskoper1.getTaskId(), true, pmiSS, patArchive, 3, config);
                        }
                    }
                } catch (Exception e) {
                    e.printStackTrace();
                    log.error("人员手术处理出异常了:{}", e.getMessage());
                    pmiSS.setOpercheckFlag("2");
                    pmiSS.setLongTaskReason("人员手术处理异常:" + e.getMessage());
                    patMedInhospMapper.updatePatMedInhosp(pmiSS);
                }
            }
        }
        //获取未处理在院的数据(如果刚刚出院的患者数据的出院时间,在下面查询出的入院时间之前,那之前的出院患者的数据,也得停掉,因为又入院了)
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -205,6 +205,15 @@
            try {
                List<Map<String, Object>> mapList = objectMapper.readValue(serviceTask.getPreachformDesc(), List.class);
                serviceTaskVO.setPreachformList(mapList);
                if(ObjectUtils.isNotEmpty(serviceTask.getTaskid())){
                    ServiceTaskoper operVo = new ServiceTaskoper();
                    operVo.setTaskId(serviceTask.getTaskid());
                    operVo.setOrgid(serviceTask.getOrgid());
                    List<ServiceTaskoper> serviceTaskopers = serviceTaskoperService.selectServiceTaskoperList(operVo);
                    if(ObjectUtils.isNotEmpty(serviceTaskopers)){
                        serviceTaskVO.setOplevelcode(serviceTaskopers.get(0).getOplevelcode());
                    }
                }
//
//                String result = mapList.stream().map(mapList1 -> mapList1.get("preachform")).map(String::valueOf).collect(Collectors.joining(","));
//                serviceTaskVO.setPreachform(result);
@@ -222,6 +231,15 @@
        serviceTaskVO.setShowTimeNoon(serviceTask.getShowTimeNoon());
        serviceTaskVO.setShowTimeNight(serviceTask.getShowTimeNight());
        serviceTaskVO.setPreachform(serviceTask.getPreachform());
        if(ObjectUtils.isNotEmpty(serviceTask.getTaskid())){
            ServiceTaskoper operVo = new ServiceTaskoper();
            operVo.setTaskId(serviceTask.getTaskid());
            operVo.setOrgid(serviceTask.getOrgid());
            List<ServiceTaskoper> serviceTaskopers = serviceTaskoperService.selectServiceTaskoperList(operVo);
            if(ObjectUtils.isNotEmpty(serviceTaskopers)){
                serviceTaskVO.setOplevelcode(serviceTaskopers.get(0).getOplevelcode());
            }
        }
        String sendTimeSlot = serviceTask.getSendTimeSlot();
        ObjectMapper objectMapper = new ObjectMapper();
        try {
@@ -309,7 +327,6 @@
//            String result = resultList.stream().map(mapList1 -> mapList1.get("preachform")).map(String::valueOf).collect(Collectors.joining(","));
//            serviceTaskVO.setPreachform(result);
        }
        serviceTaskVO.setPatTaskRelevances(patTaskRelevances);
        return serviceTaskVO;
    }
@@ -606,13 +623,15 @@
                    serviceTaskoper.setGuid(serviceTask.getGuid());
                    serviceTaskoper.setOrgid(serviceTask.getOrgid());
                    serviceTaskoper.setCreateTime(new Date());
                    if (StringUtils.isNotEmpty(serviceTaskVO.getOpcode())) {
                        String[] opcodes = serviceTaskVO.getOpcode().split(",");
                        for (String opcode : opcodes) {
                            serviceTaskoper.setOpcode(opcode);
                    if (StringUtils.isNotEmpty(serviceTaskVO.getOplevelcode())) {
//                        String[] opcodes = serviceTaskVO.getOpcode().split(",");
//                        for (String opcode : opcodes) {
//                            serviceTaskoper.setOpcode(opcode);
//                            log.info("----serviceTaskoper的值为:{}", serviceTaskoper);
//                            serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
//                        }
                            log.info("----serviceTaskoper的值为:{}", serviceTaskoper);
                            serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
                        }
                    }
                } else {
@@ -867,6 +886,18 @@
//                            }
//                        }
//                    }
                    ServiceTaskoper serviceTaskoper2 = new ServiceTaskoper();
                    serviceTaskoper2.setTaskId(serviceTaskVO.getTaskid());
                    serviceTaskoper2.setOrgid(serviceTask.getOrgid());
//                    serviceTaskoper2.setOplevelcode(serviceTaskVO.getOplevelcode());
                    List<ServiceTaskoper> serviceTaskopers = serviceTaskoperService.selectServiceTaskoperList(serviceTaskoper2);
                    if (CollectionUtils.isNotEmpty(serviceTaskopers)) {
                        serviceTaskoper.setId(serviceTaskopers.get(0).getId());
                        serviceTaskoperService.updateServiceTaskoper(serviceTaskoper);
                    } else {
                        serviceTaskoperService.insertServiceTaskoper(serviceTaskoper);
                    }
                }
            }
            if (ObjectUtils.isNotEmpty(serviceTaskVO.getIvrTaskTemplateVO())) {
smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -1894,6 +1894,9 @@
        FROM service_subtask
        WHERE DATE_FORMAT(finishtime, '%Y-%m-%d') >= #{startDate}
          AND DATE_FORMAT(finishtime, '%Y-%m-%d') &lt;= #{endDate}
        <if test="orgid != null">
            AND orgid = #{orgid}
        </if>
        GROUP BY deptname
    </select>
@@ -2236,6 +2239,9 @@
        <if test="excep != null ">
            AND excep = #{excep}
        </if>
        <if test="taskName != null  and taskName != ''">
            AND task_name like concat('%', #{taskName}, '%')
        </if>
        <if test="visitCount != null and visitCount == 1">
            AND visit_count = 1
        </if>