| | |
| | | @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime, |
| | | @ApiParam(value = "体检类型") @RequestParam(required = false) String tjCategory, |
| | | @ApiParam(value = "体检类型") @RequestParam(required = false) String tcm) { |
| | | // String config = configService.selectConfigByKey("tj_confirm"); |
| | | // DateTime beginTimes = null; |
| | | // DateTime endTimes = null; |
| | | // if (null != beginTime && null != endTime) { |
| | | // beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); |
| | | // endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); |
| | | // } |
| | | // asyncService.checkSetCustomerLisByRedis(config); |
| | | // //初始化体检订单表 |
| | | // List<TjOrder> orderList = null; |
| | | // List<TjCustomer> customerList = new ArrayList<>(); |
| | | // Map<String, Object> map = new HashMap<>(); |
| | | // |
| | | // //姓名查询 |
| | | // if (null != name && !"".equals(name)) { |
| | | // List<TjCustomer> list = customerService.getTjCustomerList(name); |
| | | // if (null != list && list.size() > 0) { |
| | | // List<TjCustomer> lists = new ArrayList<>(); |
| | | // for (TjCustomer customer : list) { |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId()); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderListByCusId(customer.getCusId()); |
| | | // } |
| | | // if (null != orderList && orderList.size() > 0) { |
| | | // for (TjOrder tjOrder : orderList) { |
| | | // customer.setTjNumber(tjOrder.getTjNumber()); |
| | | // customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); |
| | | // customer.setOrderId(tjOrder.getOrderId()); |
| | | // customer.setTjTime(tjOrder.getFinishTime()); |
| | | // customer.setFinishTime(tjOrder.getFinishTime()); |
| | | // customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); |
| | | // customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); |
| | | // customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); |
| | | // customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); |
| | | // customer.setTjCategory(tjOrder.getTjCategory()); |
| | | // if (tjOrder.getFirmId().equals("0")) { |
| | | // customer.setTjCompName(null); |
| | | // } else { |
| | | // customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); |
| | | // } |
| | | // lists.add(customer); |
| | | // } |
| | | // } |
| | | // } |
| | | // List<TjCustomer> customers = null; |
| | | // if (lists.size() > 0) { |
| | | // customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); |
| | | // } |
| | | // map.put("customers", customers); |
| | | // map.put("total", lists.size()); |
| | | // return AjaxResult.success(map); |
| | | // } |
| | | // return AjaxResult.success("暂无数据"); |
| | | // } |
| | | // |
| | | // //条件查询 |
| | | // if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { |
| | | // //判断是否开启初审 |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | // |
| | | // List<TjCustomer> customers = null; |
| | | // if (null != checkStatus && checkStatus == 0) { |
| | | // customers = redisCache.getCacheMapValue("check", "ws"); |
| | | // } |
| | | // if (null != checkStatus && checkStatus == 1) { |
| | | // customers = redisCache.getCacheMapValue("check", "ys"); |
| | | // } |
| | | // if (customers != null && customers.size() > 0) { |
| | | //// asyncService.addRedis(customers); |
| | | // List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); |
| | | // map.put("customers", customerLists); |
| | | // map.put("total", customers.size()); |
| | | // return AjaxResult.success(map); |
| | | // } else { |
| | | // //判断是否开启初审 |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | |
| | | |
| | | String value = String.valueOf(compId); |
| | | if (tjNumber == null) tjNumber = ""; |
| | |
| | | @ApiParam(value = "姓名)") @RequestParam(required = false) String name, |
| | | @ApiParam(value = "开始时间") @RequestParam(required = false) String beginTime, |
| | | @ApiParam(value = "结束时间") @RequestParam(required = false) String endTime) { |
| | | // String config = configService.selectConfigByKey("tj_confirm"); |
| | | // DateTime beginTimes = null; |
| | | // DateTime endTimes = null; |
| | | // if (null != beginTime && null != endTime) { |
| | | // beginTimes = DateUtil.beginOfDay(DateUtil.parse(beginTime)); |
| | | // endTimes = DateUtil.endOfDay(DateUtil.parse(endTime)); |
| | | // } |
| | | // asyncService.checkSetCustomerLisByRedis(config); |
| | | // //初始化体检订单表 |
| | | // List<TjOrder> orderList = null; |
| | | // List<TjCustomer> customerList = new ArrayList<>(); |
| | | // Map<String, Object> map = new HashMap<>(); |
| | | // |
| | | // //姓名查询 |
| | | // if (null != name && !"".equals(name)) { |
| | | // List<TjCustomer> list = customerService.getTjCustomerList(name); |
| | | // if (null != list && list.size() > 0) { |
| | | // List<TjCustomer> lists = new ArrayList<>(); |
| | | // for (TjCustomer customer : list) { |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderListByCusId1(customer.getCusId()); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderListByCusId(customer.getCusId()); |
| | | // } |
| | | // if (null != orderList && orderList.size() > 0) { |
| | | // for (TjOrder tjOrder : orderList) { |
| | | // customer.setTjNumber(tjOrder.getTjNumber()); |
| | | // customer.setTjStatus(Long.valueOf(tjOrder.getCheckStatus())); |
| | | // customer.setOrderId(tjOrder.getOrderId()); |
| | | // customer.setTjTime(tjOrder.getFinishTime()); |
| | | // customer.setFinishTime(tjOrder.getFinishTime()); |
| | | // customer.setCusName(MatchUtils.hideCusName(customer.getCusName())); |
| | | // customer.setCusPhone(MatchUtils.hidePhoneNum(customer.getCusPhone())); |
| | | // customer.setCusIdcard(MatchUtils.hideIdCardNum(customer.getCusIdcard())); |
| | | // customer.setConfirmStatus(String.valueOf(tjOrder.getStatus())); |
| | | // customer.setTjCategory(tjOrder.getTjCategory()); |
| | | // if (tjOrder.getFirmId().equals("0")) { |
| | | // customer.setTjCompName(null); |
| | | // } else { |
| | | // customer.setTjCompName(compService.selectDictCompByDrugManufacturerId(tjOrder.getFirmId()).getCnName()); |
| | | // } |
| | | // lists.add(customer); |
| | | // } |
| | | // } |
| | | // } |
| | | // List<TjCustomer> customers = null; |
| | | // if (lists.size() > 0) { |
| | | // customers = lists.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); |
| | | // } |
| | | // map.put("customers", customers); |
| | | // map.put("total", lists.size()); |
| | | // return AjaxResult.success(map); |
| | | // } |
| | | // return AjaxResult.success("暂无数据"); |
| | | // } |
| | | // |
| | | // //条件查询 |
| | | // if (null != tjNumber || null != compId || (null != beginTime && null != endTime)) { |
| | | // //判断是否开启初审 |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | // |
| | | // List<TjCustomer> customers = null; |
| | | // if (null != checkStatus && checkStatus == 0) { |
| | | // customers = redisCache.getCacheMapValue("check", "ws"); |
| | | // } |
| | | // if (null != checkStatus && checkStatus == 1) { |
| | | // customers = redisCache.getCacheMapValue("check", "ys"); |
| | | // } |
| | | // if (customers != null && customers.size() > 0) { |
| | | //// asyncService.addRedis(customers); |
| | | // List<TjCustomer> customerLists = customers.stream().skip((long) (page - 1) * pageSize).limit(pageSize).collect(Collectors.toList()); |
| | | // map.put("customers", customerLists); |
| | | // map.put("total", customers.size()); |
| | | // return AjaxResult.success(map); |
| | | // } else { |
| | | // //判断是否开启初审 |
| | | // if ("Y".equals(config)) { |
| | | // orderList = orderService.getCsTjOrderList1(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } else { |
| | | // orderList = orderService.getTjOrderList(tjNumber, checkStatus, compId, beginTimes, endTimes); |
| | | // } |
| | | // return getResult(page, pageSize, orderList, customerList, map); |
| | | // } |
| | | |
| | | String value = String.valueOf(compId); |
| | | if (tjNumber == null) tjNumber = ""; |
| | |
| | | LambdaQueryWrapper<SysDictData> wrapper = new LambdaQueryWrapper<>(); |
| | | wrapper.eq(SysDictData::getDictType,"qj_type"); |
| | | wrapper.eq(SysDictData::getDictLabel,firstKey); |
| | | List<SysDictData> dictList = sysDictDataService.list(); |
| | | List<SysDictData> dictList = sysDictDataService.list(wrapper); |
| | | if (!dictList.isEmpty()) { |
| | | isGroupOnce = true; |
| | | groupOnceProResult = firstKey; |
| | |
| | | try { |
| | | if (StrUtil.isNotBlank(tjNum)) { |
| | | TjOrder one = orderService.getOrderByTjNum(tjNum); |
| | | |
| | | List<Map<String, Object>> maps = new ArrayList<>(); |
| | | if (one == null) { |
| | | return AjaxResult.error("暂无数据!!"); |
| | | } |
| | | yichangxiangmu(tjNum); |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, tjNum); |
| | | List<TjOrderYcxm> list = ycxmService.list(wq); |
| | | if (null != list && !list.isEmpty()) { |
| | | Collections.reverse(list); |
| | | return getOrderYcxmList(list); |
| | | } else { |
| | | List<TjOrderYcxm> tjOrderYcxmList= ycxmService.selectListByTjh(tjNum); |
| | | if(null!=tjOrderYcxmList&&!tjOrderYcxmList.isEmpty()){ |
| | | LambdaQueryWrapper<TjOrderYcxm> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderYcxm::getTjh, tjNum); |
| | | List<TjOrderYcxm> list = ycxmService.list(wq); |
| | | if (null != list && !list.isEmpty()) { |
| | | Collections.reverse(list); |
| | | return getOrderYcxmList(list); |
| | | }else { |
| | | return AjaxResult.success(maps); |
| | | } |
| | | }else { |
| | | return zongjianyishengchakanyichangxiangmu(tjNum); |
| | | } |
| | | |
| | | } |
| | | return AjaxResult.error(); |
| | | } catch (Exception ex) { |
| | |
| | | |
| | | private void yichangxiangmu(String tjNumber) { |
| | | try { |
| | | List<TjOrderYcxm> tjOrderYcxmList= ycxmService.selectListByTjh(tjNumber); |
| | | String xb= customerService.getSexByTjh(tjNumber); |
| | | if(null !=tjOrderYcxmList && !tjOrderYcxmList.isEmpty()){ |
| | | List<TjOrderYcxm> tjOrderYcxmList = ycxmService.selectListByTjh(tjNumber); |
| | | |
| | | if (null != tjOrderYcxmList && !tjOrderYcxmList.isEmpty()) { |
| | | |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | TjOrder order = orderService.getOrderByTjNum(tjNumber); |
| | | if (null != order) { |
| | | String xb = customerService.getSexByTjh(order.getTjNumber()); |
| | | List<TjOrderRemark> remarkList = orderRemarkService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | |
| | | |
| | | List<TjOrderDetail> tjOrderDetails = detailService.getzongjianyishengchakanyichangxiangmu(tjNumber); |
| | | if (null != remarkList && !remarkList.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) { |
| | | if (!tjOrderDetail.getDeptId().equals("2")) { |
| | | List<TjOrderRemark> collects = remarkList.stream() |
| | | .filter(b -> tjOrderYcxmList.stream() |
| | | .noneMatch(a -> a.getParentName() != null && a.getParentName().equals(b.getProName()))).collect(Collectors.toList()); |
| | | if (!collects.isEmpty()) { |
| | | for (TjOrderRemark remark : remarkList) { |
| | | Map<String, Object> parent = new HashMap<>(); |
| | | if (null != tjOrderDetails && !tjOrderDetails.isEmpty()) { |
| | | List<TjOrderDetail> dels = new ArrayList<>(); |
| | | for (TjOrderDetail tjOrderDetail : tjOrderDetails) { |
| | | if (remark.getProsId().equals(tjOrderDetail.getProsId())) { |
| | | if (null != tjOrderDetail.getProId() && null != tjOrderDetail.getYcbz()) { |
| | | if (!tjOrderDetail.getDeptId().equals("2")) { |
| | | String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", ""); |
| | | |
| | | String replacedAll = tjOrderDetail.getProName().replaceAll("[((][^))]*[\u4e00-\u9fa5]+[^))]*[))]", "").replaceAll("[((][^))]*[))]", "") |
| | | .replaceAll("[ 测定检测]", "").replaceAll("\\[.*?\\]", "").replaceAll("◆", ""); |
| | | |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | ,replacedAll, |
| | | tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber |
| | | , replacedAll |
| | | , tjOrderDetail.getProResult()); |
| | | List<Map<String, Object>> maps = rulesService.getyichangxiangmujianyiguize(tjOrderDetail.getProId().toString() |
| | | , replacedAll, tjOrderDetail.getYcbz().replaceAll(" ", ""), tjNumber, replacedAll, tjOrderDetail.getProResult()); |
| | | |
| | | |
| | | if (null != maps && !maps.isEmpty()) { |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | |
| | | } else { |
| | | String[] split = tjOrderDetail.getProResult().split("。|,|,"); |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", ""); |
| | | Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0",xb); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if (null != bt || null != nr) mapList.add(maps); |
| | | tjOrderDetail.setAdvices(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } else { |
| | | String[] split = tjOrderDetail.getProResult().split("。|,|,"); |
| | | List<Map<String, Object>> mapList = new ArrayList<>(); |
| | | for (String s : split) { |
| | | s = s.replaceAll("\n", "").replaceAll("[((][^))]*[))]", ""); |
| | | ; |
| | | Map<String, Object> maps = tjProAdvicerulesService.getyichangxiangmujianyiguizeJianCha(remark.getKs(), s, "0", xb); |
| | | if (null != maps && !maps.isEmpty()) { |
| | | Object bt = maps.get("bt"); |
| | | Object nr = maps.get("nr"); |
| | | if (null != bt || null != nr) mapList.add(maps); |
| | | } |
| | | } |
| | | tjOrderDetail.setAdvices(mapList); |
| | | } |
| | | |
| | | } |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | dels.add(tjOrderDetail); |
| | | } |
| | | if (!dels.isEmpty()) { |
| | | parent.put("proName", remark.getProName()); |
| | | parent.put("jyjc", remark.getJyjc()); |
| | | parent.put("sone", dels); |
| | | list.add(parent); |
| | | } |
| | | } |
| | | if (!dels.isEmpty()) { |
| | | parent.put("proName", remark.getProName()); |
| | | parent.put("jyjc", remark.getJyjc()); |
| | | parent.put("sone", dels); |
| | | list.add(parent); |
| | | } |
| | | |
| | | List<Map<String, Object>> maps = getYcxmMapList(tjOrderYcxmList); |
| | | List<Map<String, Object>> collect = list.stream() |
| | | .filter(b -> maps.stream() |
| | | .noneMatch(a -> a.get("proName").equals(b.get("proName")))) // 过滤掉在 maps 中存在的相同元素 |
| | | .collect(Collectors.toList()); |
| | | if (!collect.isEmpty()) { |
| | | for (Map<String, Object> map : collect) { |
| | | for (TjOrderDetail detail : (List<TjOrderDetail>) map.get("sone")) { |
| | | TjOrderYcxm ycxm = new TjOrderYcxm(); |
| | | ycxm.setTjh(tjNumber); |
| | | ycxm.setParentName(map.get("proName").toString()); |
| | | ycxm.setJcxm(detail.getProName()); |
| | | ycxm.setJcjg(detail.getProResult()); |
| | | ycxm.setCkfw(detail.getStanId()); |
| | | ycxm.setDw(detail.getProAdvice()); |
| | | ycxm.setJynr(JSONUtil.toJsonStr(detail.getAdvices())); |
| | | ycxm.setJyjc(map.get("jyjc").toString()); |
| | | ycxmService.save(ycxm); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | List<Map<String, Object>> maps = getYcxmMapList(tjOrderYcxmList); |
| | | List<Map<String, Object>> collect = list.stream() |
| | | .filter(b -> maps.stream() |
| | | .noneMatch(a -> a.get("proName").equals(b.get("proName")))) // 过滤掉在 maps 中存在的相同元素 |
| | | .collect(Collectors.toList()); |
| | | |
| | | if(!collect.isEmpty()){ |
| | | for (Map<String, Object> map : collect) { |
| | | for (TjOrderDetail detail : (List<TjOrderDetail>) map.get("sone")) { |
| | | TjOrderYcxm ycxm = new TjOrderYcxm(); |
| | | ycxm.setTjh(tjNumber); |
| | | ycxm.setParentName(map.get("proName").toString()); |
| | | ycxm.setJcxm(detail.getProName()); |
| | | ycxm.setJcjg(detail.getProResult()); |
| | | ycxm.setCkfw(detail.getStanId()); |
| | | ycxm.setDw(detail.getProAdvice()); |
| | | ycxm.setJynr(JSONUtil.toJsonStr(detail.getAdvices())); |
| | | ycxm.setJyjc(map.get("jyjc").toString()); |
| | | ycxmService.save(ycxm); |
| | | } |
| | | } |
| | | } |
| | | } |