zjh
2024-02-27 0ec69e2b1479f42f02dfae587aee3fab7a648883
zjh 本地 2024/02/27 -1
9个文件已修改
384 ■■■■ 已修改文件
ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java 311 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-system/src/main/java/com/ltkj/system/mapper/SysDeptMapper.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-system/src/main/java/com/ltkj/system/service/ISysDeptService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-system/src/main/java/com/ltkj/system/service/impl/SysDeptServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-system/src/main/resources/mapper/system/SysDeptMapper.xml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
@@ -1442,7 +1442,10 @@
                            StringBuilder stringBuilder = new StringBuilder();
                            for (TjOrderRemark remark : list) {
                                TjProject byId = projectService.getById(remark.getProId());
                                stringBuilder.append(byId.getProName()).append(";");
                                if(null !=byId){
                                    stringBuilder.append(byId.getProName()).append(";");
                                }
                            }
                            customer.setNotCheckeds(String.valueOf(stringBuilder));
                            if (null == customer.getNotCheckeds()) customer.setNotCheckeds("全部已检");
ltkj-admin/src/main/java/com/ltkj/web/controller/system/SysDeptController.java
@@ -395,7 +395,9 @@
                            StringBuilder stringBuilder = new StringBuilder();
                            for (TjOrderRemark remark : list) {
                                TjProject byId = projectService.getById(remark.getProId());
                                stringBuilder.append(byId.getProName()).append(";");
                                if(null !=byId){
                                    stringBuilder.append(byId.getProName()).append(";");
                                }
                            }
                            customer.setNotCheckeds(String.valueOf(stringBuilder));
                            if (null == customer.getNotCheckeds()) customer.setNotCheckeds("全部已检");
@@ -426,47 +428,57 @@
                                 @ApiParam(value = "姓名)") @RequestParam(required = false) String name,
                                 @ApiParam(value = "页码数(默认1)") @RequestParam(defaultValue = "1") Integer page,
                                 @ApiParam(value = "显示条数(默认10)") @RequestParam(defaultValue = "10") Integer pageSize) {
        String userId = SecurityUtils.getLoginUser().getUserId();
        Integer ksId = null;
        SysUser sysUser = null;
        if (null != userId) {
            sysUser = userService.getById(Long.valueOf(userId));
            if (null != sysUser) {
                ksId = Math.toIntExact(sysUser.getDeptId());
            }
        }
        if (ksId == null) {
            return AjaxResult.error("请输入科室id");
        }
//        String userId = SecurityUtils.getLoginUser().getUserId();
//        Integer ksId = null;
//        SysUser sysUser = null;
//        if (null != userId) {
//            sysUser = userService.getById(Long.valueOf(userId));
//            if (null != sysUser) {
//                ksId = Math.toIntExact(sysUser.getDeptId());
//            }
//        }
//        if (ksId == null) {
//            return AjaxResult.error("请输入科室id");
//        }
        //A30化验
        //根据当前登陆的人的科室id,获取该科室下的所有项目
        List<Long> postIds = sysUser.getPostIds();
//        List<Long> postIds = sysUser.getPostIds();
        List<Long> ksproList = null;
        if (postIds != null) {
            for (Long postId : postIds) {
                LambdaQueryWrapper<SysUserPost> wq111 = new LambdaQueryWrapper<>();
                wq111.eq(SysUserPost::getPostId, postId);
                SysUserPost one = userPostService.getOne(wq111);
                if (one != null) {
                    SysPost byId = postService.getById(one.getPostId());
                    if (byId.getPostName().equals("录入员")) {
                        ksproList = projectService.getKsTjProjectIdListBydeptId(String.valueOf(ksId));
                    }
                }
            }
        } else {
            ksproList = projectService.getKsTjProjectIdList();
        }
//        if (postIds != null) {
//            for (Long postId : postIds) {
//                LambdaQueryWrapper<SysUserPost> wq111 = new LambdaQueryWrapper<>();
//                wq111.eq(SysUserPost::getPostId, postId);
//                SysUserPost one = userPostService.getOne(wq111);
//                if (one != null) {
//                    SysPost byId = postService.getById(one.getPostId());
//                    if (byId.getPostName().equals("录入员")) {
//                        ksproList = projectService.getKsTjProjectIdListBydeptId(String.valueOf(ksId));
//                    }
//                }
//            }
//        } else {
//            ksproList = projectService.getKsTjProjectIdList();
//        }
//        if(sysUser.getUserName().equals("10001")){
            ksproList = projectService.getHuaYanProId();
//        }
//        else {
//            ksproList = projectService.getKsTjProjectIdListBydeptId(String.valueOf(ksId));
//        }
        if (ksproList == null || ksproList.size() == 0) {
            return AjaxResult.error("请完善科室项目信息");
        }
        //筛选化验的项目。
        ksproList = ksproList.stream()
                .filter(element -> element ==1633660948860522629L)
                .collect(Collectors.toList());
//        ksproList = ksproList.stream()
//                .filter(element -> element ==1633660948860522629L)
//                .collect(Collectors.toList());
        List<TjCustomer> customerLis = new ArrayList<>();
        //根据体检号查
/*        //根据体检号查
        if (null != tjNumber) {
            List<TjOrder> orderList = orderService.getOrderListByLikeTjNum(tjNumber);
            if (null == orderList) {
@@ -602,17 +614,197 @@
                return AjaxResult.success("暂无数据");
            }
        }
        List<TjCustomer> customerLists = null;
        List<TjCustomer> customerLists = null;*/
//        //根据体检号查
//        if (null != tjNumber) {
//            List<TjOrder> orderList = orderService.getOrderListByLikeTjNum(tjNumber);
//            if (null == orderList) {
//                return AjaxResult.success("暂时没有数据");
//            }
//            for (TjOrder order : orderList) {
//                List<TjOrderDetail> list = Optional.ofNullable(detailService.getTjOrderDetailListByOrderId(String.valueOf(order.getOrderId()))).get();
//                if (list.size() == 0) {
//                    continue;
//                }
//                LambdaQueryWrapper<TjOrderRemark> wqs = new LambdaQueryWrapper<>();
//                wqs.eq(TjOrderRemark::getTjNumber, order.getTjNumber());
//                wqs.in(TjOrderRemark::getType, 0,3);
//                List<TjOrderRemark> lists = remarkService.list(wqs);
//                TjCustomer customer = customerService.getById(order.getUserId());
//
//                //遍历项目 判断是否有重大阳性  标记
//                for (TjOrderDetail tjOrderDetail11 : list) {
//                    customer.setIsPositive(tjOrderDetail11.getIsPositive());
//                    if (tjOrderDetail11.getIsPositive()==1){
//                        break;
//                    }
//                }
//
//                customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
//                customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
//                customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
//                if (null != lists && lists.size() > 0) {
//                    StringBuilder stringBuilder = new StringBuilder();
//                    for (TjOrderRemark remark : lists) {
//                        TjProject byId = projectService.selectTjProjectByProId(remark.getProId());
//                        TjOrderDetail one = detailService.getTjOrderDetailByOrderId(String.valueOf(order.getOrderId()), String.valueOf(byId.getProId()));
//                        if (one.getFlowingWaterId() != null) {
//                            stringBuilder.append(byId.getProName()).append(";");
//                        }
//
//                    }
//                    customer.setNotCheckeds(String.valueOf(stringBuilder));
//                    customer.setTjStatus(0L);
//                } else {
//                    customer.setTjStatus(1L);
//                    customer.setNotCheckeds("无");
//                }
//                if (order.getTjType().equals("1")) {
//                    customer.setTjType("团体");
//                }
//                if (order.getTjType().equals("2")) {
//                    customer.setTjType("个人");
//                }
//                customer.setTjTime(order.getCreateTime());
//                customer.setTjNumber(order.getTjNumber());
//                customer.setOrderId(order.getOrderId());
//                customer.setIsHz(order.getIsHz());
//                customer.setTjCategory(order.getTjCategory());
//                customerLis.add(customer);
//            }
//            if (customerLis.size() > 0) {
//                List<TjCustomer> customerList = customerLis.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
//                Collections.reverse(customerList);
//                Map<String, Object> map = new HashMap<>();
//                map.put("date", customerList);
//                map.put("total", customerLis.size());
//                return AjaxResult.success(map);
//            } else {
//                return AjaxResult.success("暂无数据");
//            }
//        }
//
//        //根据姓名查询
//        if (null != name && !"".equals(name)) {
//            LambdaQueryWrapper<TjCustomer> wq = new LambdaQueryWrapper<>();
//            wq.like(TjCustomer::getCusName, name);
//            List<TjCustomer> list = customerService.list(wq);
//            List<TjCustomer> list11111 = new ArrayList<>();
//            if (null != list && list.size() > 0) {
//                for (TjCustomer customer : list) {
//                    customer.setCusName(MatchUtils.hideCusName(customer.getCusName()));
//                    customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone()));
//                    customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard()));
//                    List<TjOrder> orderList = orderService.getOrderListByCusId(String.valueOf(customer.getCusId()));
//                    if (null != orderList && orderList.size() > 0) {
//                        for (TjOrder order : orderList) {
//                            List<TjOrderDetail> list111 = Optional.ofNullable(detailService.getTjOrderDetailListByOrderId(String.valueOf(order.getOrderId()))).get();
//                            if (list111.size() == 0) {
//                                continue;
//                            }
//                            //遍历项目 判断是否有重大阳性  标记
//                            for (TjOrderDetail tjOrderDetail11 : list111) {
//                                customer.setIsPositive(tjOrderDetail11.getIsPositive());
//                                if (tjOrderDetail11.getIsPositive()==1){
//                                    break;
//                                }
//                            }
//                            List<TjOrderRemark> lists = remarkService.getTjOrderRemarkListByYjNum(order.getTjNumber());
//                            if (null != lists && lists.size() > 0) {
//                                StringBuilder stringBuilder = new StringBuilder();
//                                for (TjOrderRemark remark : lists) {
//                                    TjProject byId = projectService.selectTjProjectByProId(remark.getProId());
//                                    TjOrderDetail one = detailService.getTjOrderDetailByOrderId(String.valueOf(order.getOrderId()), String.valueOf(byId.getProId()));
//                                    if (one.getFlowingWaterId() != null) {
//                                        stringBuilder.append(byId.getProName()).append(";");
//                                    }
//                                }
//                                customer.setNotCheckeds(String.valueOf(stringBuilder));
//                                if (null == customer.getNotCheckeds()) customer.setNotCheckeds("全部已检");
//                                customer.setTjStatus(0L);
//                            } else {
//                                customer.setNotCheckeds("无");
//                                customer.setTjStatus(1L);
//                            }
//                            if (order.getTjType().equals("1")) {
//                                customer.setTjType("团体");
//                            }
//                            if (order.getTjType().equals("2")) {
//                                customer.setTjType("个人");
//                            }
//                            customer.setTjTime(order.getCreateTime());
//                            customer.setTjNumber(order.getTjNumber());
//                            customer.setOrderId(order.getOrderId());
//                            customer.setIsHz(order.getIsHz());
//                            customer.setTjCategory(order.getTjCategory());
//                            list11111.add(customer);
//                        }
//                    }
//                }
//                if (list11111.size() == 0) {
//                    return AjaxResult.success("暂无数据");
//                }
//                Map<String, Object> map = new HashMap<>();
//                List<TjCustomer> customers = list11111.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
//                Collections.reverse(customers);
//                map.put("customers", customers);
//                map.put("total", list11111.size());
//                return AjaxResult.success(map);
//            } else {
//                return AjaxResult.success("暂无数据");
//            }
//        }
//        List<TjCustomer> customerLists = new ArrayList<>();
//        String key="*";
//        if(sysUser.isAdmin()){
//            key="ks"+":*";
//        }else {
//            key="ks:"+ksId+":*";
//        }
//        ScanOptions options = ScanOptions.scanOptions()
//                //这里指定每次扫描key的数量(很多博客瞎说要指定Integer.MAX_VALUE,这样的话跟        keys有什么区别?)
//                .count(10000)
//                .match(key).build();
//        RedisSerializer<String> redisSerializer = (RedisSerializer<String>) redisTemplate.getKeySerializer();
//        0未检,1已检
        Map<String,Object> map=null;
        if (type == 0) {
//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
//            List<TjCustomer> customers = new ArrayList<>();
//            while(cursor.hasNext()){
//                String s = cursor.next().toString();
//                TjCustomer wj = redisCache.getCacheMapValue(s,"0");
//                if(null !=wj){
//                    customers.add(wj);
//                }
//            }
////            //切记这里一定要关闭,否则会耗尽连接数。报Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
//            cursor.close();
//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "wj");
            map = deptService.getSysDeptHyAndYxYjWjCustomerList13("A30", name, tjNumber, 0, page, pageSize);
//            customerLists = customers;
        }
        if (type == 1) {
//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
//            List<TjCustomer> customers = new ArrayList<>();
//            while(cursor.hasNext()){
//                String s = cursor.next().toString();
//                TjCustomer wj = redisCache.getCacheMapValue(s,"1");
//                if(null !=wj){
//                    customers.add(wj);
//                }
//            }
////            //切记这里一定要关闭,否则会耗尽连接数。报Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
//            cursor.close();
//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "yj");
            map = deptService.getSysDeptHyAndYxYjWjCustomerList13("A30", name, tjNumber, 1, page, pageSize);
//            customerLists = customers;
        }
        asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId));
        AjaxResult map = getAjaxResult(type, page, pageSize, ksproList, customerLis);
        if (map != null) return map;
        return AjaxResult.success("暂时没有数据");
//        asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId));
//        AjaxResult map = getAjaxResult(type, page, pageSize, ksproList, customerLis);
//        if (map != null) return map;
        return AjaxResult.success(map);
    }
@@ -626,7 +818,7 @@
                                       @ApiParam(value = "姓名)") @RequestParam(required = false) String name,
                                       @ApiParam(value = "页码数(默认1)") @RequestParam(defaultValue = "1") Integer page,
                                       @ApiParam(value = "显示条数(默认10)") @RequestParam(defaultValue = "10") Integer pageSize) {
        String userId = SecurityUtils.getLoginUser().getUserId();
/*        String userId = SecurityUtils.getLoginUser().getUserId();
        Integer ksId = null;
        SysUser sysUser = null;
        if (null != userId) {
@@ -657,7 +849,7 @@
        } else {
            ksproList = projectService.getKsTjProjectIdList();
        }
        //筛选影像的项目。
        //筛选影像的项目。 A32影像
        if (ksproList.size() == 0) {
            return AjaxResult.error("请完善科室项目信息");
        }
@@ -675,7 +867,10 @@
//                        ||
//                        element ==1633660948860522531L||  element ==1633660948860522533L
                )
                .collect(Collectors.toList());
                .collect(Collectors.toList());*/
        List<Long> ksproList  = projectService.getYingXiangProId();
        List<TjCustomer> customerLis = new ArrayList<>();
        //根据体检号查
@@ -815,11 +1010,38 @@
            }
        }
        List<TjCustomer> customerLists = null;
        Map<String,Object> map=null;
        if (type == 0) {
//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
//            List<TjCustomer> customers = new ArrayList<>();
//            while(cursor.hasNext()){
//                String s = cursor.next().toString();
//                TjCustomer wj = redisCache.getCacheMapValue(s,"0");
//                if(null !=wj){
//                    customers.add(wj);
//                }
//            }
////            //切记这里一定要关闭,否则会耗尽连接数。报Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
//            cursor.close();
//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "wj");
            map = deptService.getSysDeptHyAndYxYjWjCustomerList13("A32", name, tjNumber, 0, page, pageSize);
//            customerLists = customers;
        }
        if (type == 1) {
//            Cursor cursor = redisTemplate.executeWithStickyConnection(redisConnection -> new ConvertingCursor<>(redisConnection.scan(options), redisSerializer::deserialize));
//            List<TjCustomer> customers = new ArrayList<>();
//            while(cursor.hasNext()){
//                String s = cursor.next().toString();
//                TjCustomer wj = redisCache.getCacheMapValue(s,"1");
//                if(null !=wj){
//                    customers.add(wj);
//                }
//            }
////            //切记这里一定要关闭,否则会耗尽连接数。报Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisException: Could not get a
//            cursor.close();
//            customerLists = redisCache.getCacheMapValue(ksId + "ks", "yj");
            map = deptService.getSysDeptHyAndYxYjWjCustomerList13("A32", name, tjNumber, 1, page, pageSize);
//            customerLists = customers;
        }
//        asyncService.dockerSetCustomerLisByRedis(ksproList, String.valueOf(ksId));
//        if (customerLists.size() > 0) {
@@ -830,9 +1052,10 @@
//            map.put("total", customerLists.size());
//            return AjaxResult.success(map);
//        } else {
            AjaxResult map = getAjaxResult(type, page, pageSize, ksproList, customerLis);
            if (map != null) return map;
            return AjaxResult.success("暂时没有数据");
//            AjaxResult map = getAjaxResult(type, page, pageSize, ksproList, customerLis);
//            if (map != null) return map;
//            return AjaxResult.success("暂时没有数据");
        return AjaxResult.success(map);
//        }
    }
ltkj-hosp/src/main/java/com/ltkj/hosp/mapper/TjProjectMapper.java
@@ -147,4 +147,15 @@
            "tj_project a LEFT JOIN tj_project b ON b.pro_parent_id=a.pro_id WHERE\n" +
            "a.pro_parent_id=0 AND a.pro_status=0 AND a.pro_id=b.pro_parent_id  GROUP BY a.pro_id")
    List<TjProject> getPacTjProjectList();
    @Select("SELECT a.pro_id FROM tj_project a  JOIN sys_dept b ON a.dept_id=b.dept_id WHERE a.deleted=0 AND b.parent_org_code='A30' AND a.need_report='Y'")
    List<Long> getHuaYanProId();
    @Select("SELECT a.pro_id FROM tj_project a  JOIN sys_dept b ON a.dept_id=b.dept_id WHERE a.deleted=0 AND b.parent_org_code='A32' AND a.need_report='Y'")
    List<Long> getYingXiangProId();
    List<Long> getHuaYanKsProId(String ksId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/ITjProjectService.java
@@ -112,4 +112,12 @@
    List<TjProject> getPacTjProjectList();
    List<Long> getHuaYanProId();
    List<Long> getYingXiangProId();
    List<Long> getHuaYanKsProId(String ksId);
}
ltkj-hosp/src/main/java/com/ltkj/hosp/service/impl/TjProjectServiceImpl.java
@@ -216,6 +216,21 @@
        return tjProjectMapper.getPacTjProjectList();
    }
    @Override
    public List<Long> getHuaYanProId() {
        return tjProjectMapper.getHuaYanProId();
    }
    @Override
    public List<Long> getYingXiangProId() {
        return tjProjectMapper.getYingXiangProId();
    }
    @Override
    public List<Long> getHuaYanKsProId(String ksId) {
        return tjProjectMapper.getHuaYanKsProId(ksId);
    }
    /**
     * 递归列表
     */
ltkj-system/src/main/java/com/ltkj/system/mapper/SysDeptMapper.java
@@ -139,5 +139,7 @@
    List<List<?>> getSysDeptYjWjCustomerList13(Map<String,Object> map);
    List<List<?>> getSysDeptHyAndYxYjWjCustomerList13(Map<String,Object> map);
    List<ResultSet> getSysDeptYjWjCustomerList2(Map<String,Object> map);
}
ltkj-system/src/main/java/com/ltkj/system/service/ISysDeptService.java
@@ -147,4 +147,6 @@
    ResultSet getSysDeptYjWjCustomerList12(String deptid, String tjname, String tjNumber, int type, int page , int pageSize);
    Map<String,Object> getSysDeptYjWjCustomerList13(String deptid, String tjname, String tjNumber, int type, int page , int pageSize);
    Map<String,Object> getSysDeptHyAndYxYjWjCustomerList13(String deptid, String tjname, String tjNumber, int type, int page , int pageSize);
}
ltkj-system/src/main/java/com/ltkj/system/service/impl/SysDeptServiceImpl.java
@@ -405,4 +405,21 @@
        return   map1 ;
//        return deptMapper.getSysDeptYjWjCustomerList(deptid,tjname,tjNumber,type,page,pageSize);
    }
    @Override
    public Map<String, Object> getSysDeptHyAndYxYjWjCustomerList13(String deptid, String tjname, String tjNumber, int type, int page, int pageSize) {
        Map<String, Object> map = new HashMap<>();
        map.put("deptid",deptid);
        map.put("tjname",tjname);
        map.put("tjNumber",tjNumber);
        map.put("type",type);
        map.put("page",page);
        map.put("pageSize",pageSize);
        List<List<?>> list = deptMapper.getSysDeptHyAndYxYjWjCustomerList13(map);
        Map<String,Object> map1=new HashMap<>();
        map1.put("date",list);
        map1.put("total",map.get("totalRows"));
        return   map1 ;
    }
}
ltkj-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -357,4 +357,17 @@
            )}
    </select>
    <select id="getSysDeptHyAndYxYjWjCustomerList13" parameterType="java.util.Map"  statementType="CALLABLE" resultType="java.util.Map">
        {call check_hyAndYx_list(
                #{deptid,mode=IN,jdbcType=VARCHAR},
                #{tjname,mode=IN,jdbcType=VARCHAR},
                #{tjNumber,mode=IN,jdbcType=VARCHAR},
                #{type,mode=IN,jdbcType=INTEGER},
                #{page,mode=IN,jdbcType=INTEGER},
                #{pageSize,mode=IN,jdbcType=INTEGER},
                #{totalRows,mode=OUT,jdbcType=INTEGER}
            )}
    </select>
</mapper>