陈昶聿
8 小时以前 7ca6d7d7da579f9a32c7d253eccb0f4e1ba6b6ef
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -66,6 +66,8 @@
    @Autowired
    private RedisCache redisCache;
    @Autowired
    private PatArchivetagServiceImpl patArchivetagServiceImpl;
    /**
@@ -565,7 +567,12 @@
    @Override
    public List<PatArchive> patInfoByContion(PatArchiveReq patArchive) {
        List<PatArchive> patArchives = new ArrayList<>();
        if (ObjectUtils.isNotEmpty(patArchive.getPageNum()) && ObjectUtils.isNotEmpty(patArchive.getPageSize())) {
            patArchive.setPn((patArchive.getPageNum() - 1) * patArchive.getPageSize());
            patArchive.setPs(patArchive.getPageSize());
            patArchive.setPageNum(null);
            patArchive.setPageSize(null);
        }
        //根据条件获取患者信息
//        List<PatArchive> patArchiveList = patArchiveMapper.patInfoByContion(patArchive);
        List<PatArchiveOthreInfo> patArchiveList = new ArrayList<>();
@@ -765,20 +772,20 @@
        List<PatArchiveOthreInfo> patArchiveList = new ArrayList<>();
        if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 1) {
            //  查看住院  1  查看门诊  2   查看体检  3
            //  查看住院  1  查看门诊  2   查看体检  3    查看出院 4
            patArchiveReq.setCry(0);
            List<PatArchiveOthreInfo> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhospQC(patArchiveReq);
            if (CollectionUtils.isNotEmpty(patArchives1)) {
                patArchiveList.addAll(patArchives1);
            }
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 2) {
            // 查看住院  1  查看门诊  2   查看体检  3
            // 查看住院  1  查看门诊  2   查看体检  3 查看出院 4
            List<PatArchiveOthreInfo> patArchives2 = patArchiveMapper.selectPatArchiveInfoByOuthospQC(patArchiveReq);
            if (CollectionUtils.isNotEmpty(patArchives2)) {
                patArchiveList.addAll(patArchives2);
            }
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 3) {
            //  查看住院  1  查看门诊  2   查看体检  3
            //  查看住院  1  查看门诊  2   查看体检  3 查看出院 4
            List<PatArchiveOthreInfo> patArchives3 = patArchiveMapper.selectPatArchiveInfoByPhysicalQC(patArchiveReq);
            if (CollectionUtils.isNotEmpty(patArchives3)) {
                patArchiveList.addAll(patArchives3);
@@ -787,13 +794,69 @@
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 4) {
            //  查看住院  1  查看门诊  2   查看体检  3   查看出院 4
            patArchiveReq.setCry(1);
            log.info("--------查看出院的入参值为:{}", patArchiveReq);
            List<PatArchiveOthreInfo> patArchives1 = patArchiveMapper.selectPatArchiveInfoByInhospQC(patArchiveReq);
            log.info("--------查看出院的返参值为:{}", patArchives1.size());
            if (CollectionUtils.isNotEmpty(patArchives1)) {
                patArchiveList.addAll(patArchives1);
            }
        }
//        //查询tagName
//        List<Long> patIds = patArchiveList.stream().map(PatArchiveOthreInfo::getId).distinct().collect(Collectors.toList());
//        Map<Long, String> patTagMap= patArchivetagMapper.getTagsByPatIds(patArchiveReq.getOrgid(),patIds);
//        //装配tagName
//        if(ObjectUtils.isNotEmpty(patTagMap)){
//            patArchiveList.forEach(patArchiveOthreInfo -> {
//                String tagName = patTagMap.get(patArchiveOthreInfo.getId());
//                if(StringUtils.isNotEmpty(tagName)){
//                    patArchiveOthreInfo.setTag(tagName);
//                }
//            });
//        }
        return patArchiveList;
    }
    /**
     * 获取患者信息(去重)
     *
     * @param patArchiveReq
     * @return
     */
//    @Override
    /**
     * 获取患者信息总数(去重)
     *
     * @param patArchiveReq
     * @return
     */
    @Override
    public Long getPatientInfoQCCount(PatArchiveReq patArchiveReq) {
        if (CollectionUtils.isEmpty(patArchiveReq.getLeavehospitaldistrictcodes()) || patArchiveReq.getLeavehospitaldistrictcodes().size() == 0) {
            patArchiveReq.setLeavehospitaldistrictcodes(null);
        }
        if (CollectionUtils.isEmpty(patArchiveReq.getLeaveldeptcodes()) || patArchiveReq.getLeaveldeptcodes().size() == 0) {
            patArchiveReq.setLeaveldeptcodes(null);
        }
        Long count = 0L;
        if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 1) {
            //  查看住院  1  查看门诊  2   查看体检  3    查看出院 4
            patArchiveReq.setCry(0);
            count = patArchiveMapper.countPatArchiveInfoByInhospQC(patArchiveReq);
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 2) {
            // 查看住院  1  查看门诊  2   查看体检  3 查看出院 4
            count = patArchiveMapper.countPatArchiveInfoByOuthospQC(patArchiveReq);
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 3) {
            //  查看住院  1  查看门诊  2   查看体检  3 查看出院 4
            count = patArchiveMapper.countPatArchiveInfoByPhysicalQC(patArchiveReq);
        } else if (patArchiveReq.getAllhosp() != null && patArchiveReq.getAllhosp() == 4) {
            //  查看住院  1  查看门诊  2   查看体检  3   查看出院 4
            patArchiveReq.setCry(1);
            count = patArchiveMapper.countPatArchiveInfoByInhospQC(patArchiveReq);
        }
        return count;
    }
}