From d12e3914e9e823a3038335a8f9e0b525343d965b Mon Sep 17 00:00:00 2001 From: zjh <1084500556@qq.com> Date: 星期五, 04 七月 2025 17:39:38 +0800 Subject: [PATCH] zjh20250704 --- ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java | 3044 ++++++++++++++++++++++++++++++----------------------------- 1 files changed, 1,541 insertions(+), 1,503 deletions(-) diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java index 66d92b1..94ff9d9 100644 --- a/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java +++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java @@ -773,193 +773,200 @@ // @Async("async") // @Transactional public Boolean iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser, String jxbz) { - Date dates = new Date(); - final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); + try { + Date dates = new Date(); + final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); - tjFlowingWater.setJxbz(jxbz); - tjFlowingWaterService.updateById(tjFlowingWater); + tjFlowingWater.setJxbz(jxbz); + tjFlowingWaterService.updateById(tjFlowingWater); - TjProBl proBl = new TjProBl(); - proBl.setTjh(order.getTjNumber()); - proBl.setBldh(jxbz); - proBl.setBlsj(date); - proBl.setBlrdm(sysUser.getUserName()); - proBl.setBlrmc(sysUser.getNickName()); - proBl.setBlje(String.valueOf(tjFlowingWater.getPaidIn())); - blService.save(proBl); + TjProBl proBl = new TjProBl(); + proBl.setTjh(order.getTjNumber()); + proBl.setBldh(jxbz); + proBl.setBlsj(date); + proBl.setBlrdm(sysUser.getUserName()); + proBl.setBlrmc(sysUser.getNickName()); + proBl.setBlje(String.valueOf(tjFlowingWater.getPaidIn())); + blService.save(proBl); - String[] tjProIds = tjFlowingWater.getTjProIds(); + String[] tjProIds = tjFlowingWater.getTjProIds(); - String config = configService.selectConfigByKey("sfkqdyhis"); + String config = configService.selectConfigByKey("sfkqdyhis"); - List<TjProject> projectList = new ArrayList<>(); + List<TjProject> projectList = new ArrayList<>(); // ArrayList<TjOrderDetail> tjOrderDetails = new ArrayList<>(); - for (String tjProId : tjProIds) { - TjProject project = projectService.getById(Long.valueOf(tjProId)); - if (null != project && project.getProParentId() == 0) { - TjOrderRemark tjOrderRemark = new TjOrderRemark(); - tjOrderRemark.setProId(Long.valueOf(tjProId)); - tjOrderRemark.setProName(project.getProName()); - tjOrderRemark.setDeptId(project.getDeptId()); - tjOrderRemark.setTjNumber(order.getTjNumber()); - tjOrderRemark.setCreateBy(sysUser.getNickName()); - tjOrderRemark.setCreateTime(dates); - tjOrderRemark.setUpdateBy(sysUser.getNickName()); - tjOrderRemark.setUpdateTime(dates); - tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId())); - tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId())); - tjOrderRemark.setJxbz(jxbz); - orderRemarkService.save(tjOrderRemark); + for (String tjProId : tjProIds) { + TjProject project = projectService.getById(Long.valueOf(tjProId)); + if (null != project && project.getProParentId() == 0) { + TjOrderRemark tjOrderRemark = new TjOrderRemark(); + tjOrderRemark.setProId(Long.valueOf(tjProId)); + tjOrderRemark.setProName(project.getProName()); + tjOrderRemark.setDeptId(project.getDeptId()); + tjOrderRemark.setTjNumber(order.getTjNumber()); + tjOrderRemark.setCreateBy(sysUser.getNickName()); + tjOrderRemark.setCreateTime(dates); + tjOrderRemark.setUpdateBy(sysUser.getNickName()); + tjOrderRemark.setUpdateTime(dates); + tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId())); + tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId())); + tjOrderRemark.setJxbz(jxbz); + orderRemarkService.save(tjOrderRemark); - List<Long> proIds = projectService.getTjProjectListBySoneId(tjProId).stream().map(TjProject::getProId).collect(Collectors.toList()); - TjOrderDetail detail = new TjOrderDetail(); - detail.setTjStatus(0L); - detail.setOrderId(tjFlowingWater.getOrderId()); + List<Long> proIds = projectService.getTjProjectListBySoneId(tjProId).stream().map(TjProject::getProId).collect(Collectors.toList()); + TjOrderDetail detail = new TjOrderDetail(); + detail.setTjStatus(0L); + detail.setOrderId(tjFlowingWater.getOrderId()); // detail.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); - detail.setProId(Long.valueOf(tjProId)); - detail.setIsAddition("Y"); - detail.setCreateBy(sysUser.getNickName()); - detail.setCreateTime(dates); - detail.setUpdateBy(sysUser.getNickName()); - detail.setUpdateTime(dates); - detail.setCreateId(String.valueOf(sysUser.getUserId())); - detail.setUpdateId(String.valueOf(sysUser.getUserId())); - detail.setJxbz(jxbz); - tjOrderDetailService.save(detail); - for (Long proId : proIds) { - TjOrderDetail detail1 = new TjOrderDetail(); - detail1.setTjStatus(0L); - detail1.setOrderId(tjFlowingWater.getOrderId()); + detail.setProId(Long.valueOf(tjProId)); + detail.setIsAddition("Y"); + detail.setCreateBy(sysUser.getNickName()); + detail.setCreateTime(dates); + detail.setUpdateBy(sysUser.getNickName()); + detail.setUpdateTime(dates); + detail.setCreateId(String.valueOf(sysUser.getUserId())); + detail.setUpdateId(String.valueOf(sysUser.getUserId())); + detail.setJxbz(jxbz); + tjOrderDetailService.save(detail); + for (Long proId : proIds) { + TjOrderDetail detail1 = new TjOrderDetail(); + detail1.setTjStatus(0L); + detail1.setOrderId(tjFlowingWater.getOrderId()); // detail1.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); - detail1.setProId(proId); - detail1.setIsAddition("Y"); - detail1.setCreateBy(sysUser.getNickName()); - detail1.setCreateTime(dates); - detail1.setUpdateBy(sysUser.getNickName()); - detail1.setUpdateTime(dates); - detail1.setCreateId(String.valueOf(sysUser.getUserId())); - detail1.setUpdateId(String.valueOf(sysUser.getUserId())); - detail1.setJxbz(jxbz); - tjOrderDetailService.save(detail1); - } + detail1.setProId(proId); + detail1.setIsAddition("Y"); + detail1.setCreateBy(sysUser.getNickName()); + detail1.setCreateTime(dates); + detail1.setUpdateBy(sysUser.getNickName()); + detail1.setUpdateTime(dates); + detail1.setCreateId(String.valueOf(sysUser.getUserId())); + detail1.setUpdateId(String.valueOf(sysUser.getUserId())); + detail1.setJxbz(jxbz); + tjOrderDetailService.save(detail1); + } - } else { + } else { - //濡傛灉璇ラ」鐩瓨鍦� 鍒� 涓嶄繚瀛� + //濡傛灉璇ラ」鐩瓨鍦� 鍒� 涓嶄繚瀛� - TjOrderDetail orderDetail = tjOrderDetailService.getTjOrderDetailByOrderId(String.valueOf(tjFlowingWater.getOrderId()), tjProId); + TjOrderDetail orderDetail = tjOrderDetailService.getTjOrderDetailByOrderId(String.valueOf(tjFlowingWater.getOrderId()), tjProId); // if(null !=orderDetail) continue; - if (null != orderDetail) { - detailMapper.updateTjOrderDetailDel(orderDetail.getOrderDetailId().toString()); - } + if (null != orderDetail) { + detailMapper.updateTjOrderDetailDel(orderDetail.getOrderDetailId().toString()); + } - TjProject projects = projectService.selectTjProjectByProId(Long.valueOf(tjProId)); - if (null != projects) { - TjProject projectss = projectService.getById(projects.getProParentId()); - if (null != projectss && projectss.getProParentId() == 0L) { - projectList.add(projectss); - } - } - TjOrderDetail detail = new TjOrderDetail(); - detail.setTjStatus(0L); - detail.setOrderId(tjFlowingWater.getOrderId()); - detail.setProId(Long.valueOf(tjProId)); - detail.setIsAddition("Y"); - detail.setCreateBy(sysUser.getNickName()); - detail.setCreateTime(dates); - detail.setUpdateBy(sysUser.getNickName()); - detail.setUpdateTime(dates); - detail.setCreateId(String.valueOf(sysUser.getUserId())); - detail.setUpdateId(String.valueOf(sysUser.getUserId())); - detail.setJxbz(jxbz); - tjOrderDetailService.save(detail); + TjProject projects = projectService.selectTjProjectByProId(Long.valueOf(tjProId)); + if (null != projects) { + TjProject projectss = projectService.getById(projects.getProParentId()); + if (null != projectss && projectss.getProParentId() == 0L) { + projectList.add(projectss); + } + } + TjOrderDetail detail = new TjOrderDetail(); + detail.setTjStatus(0L); + detail.setOrderId(tjFlowingWater.getOrderId()); + detail.setProId(Long.valueOf(tjProId)); + detail.setIsAddition("Y"); + detail.setCreateBy(sysUser.getNickName()); + detail.setCreateTime(dates); + detail.setUpdateBy(sysUser.getNickName()); + detail.setUpdateTime(dates); + detail.setCreateId(String.valueOf(sysUser.getUserId())); + detail.setUpdateId(String.valueOf(sysUser.getUserId())); + detail.setJxbz(jxbz); + tjOrderDetailService.save(detail); // tjOrderDetails.add(detail); - } + } - List<TbTransition> tbTransitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(customer.getCusIdcard(), tjProId); - if (null != tbTransitionList && !tbTransitionList.isEmpty()) { - for (TbTransition transition : tbTransitionList) { - transitionService.updateTbTransitionById(transition.getId().toString(), jxbz, order.getTjNumber(), order.getCardId(), - transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); - } - } + List<TbTransition> tbTransitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(customer.getCusIdcard(), tjProId); + if (null != tbTransitionList && !tbTransitionList.isEmpty()) { + for (TbTransition transition : tbTransitionList) { + transitionService.updateTbTransitionById(transition.getId().toString(), jxbz, order.getTjNumber(), order.getCardId(), + transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); + } + } - } - // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� + } + // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� // tjOrderDetails = new ArrayList<>(); - ArrayList<TjProject> jianChaProjects = new ArrayList<>(); + ArrayList<TjProject> jianChaProjects = new ArrayList<>(); - if (!projectList.isEmpty()) { - List<TjProject> list = projectList.stream().distinct().collect(Collectors.toList()); - for (TjProject project : list) { + if (!projectList.isEmpty()) { + List<TjProject> list = projectList.stream().distinct().collect(Collectors.toList()); + for (TjProject project : list) { - TjOrderRemark orderRemark = orderRemarkService.getTjOrderRemarkByTjNumAndProParentId(order.getTjNumber(), String.valueOf(project.getProId())); - if (null != orderRemark) { - remarkMapper.updateTjOrderRemarkdel(orderRemark.getRemarkId().toString()); - } + TjOrderRemark orderRemark = orderRemarkService.getTjOrderRemarkByTjNumAndProParentId(order.getTjNumber(), String.valueOf(project.getProId())); + if (null != orderRemark) { + remarkMapper.updateTjOrderRemarkdel(orderRemark.getRemarkId().toString()); + } - TjOrderRemark tjOrderRemark = new TjOrderRemark(); - tjOrderRemark.setProId(project.getProId()); - tjOrderRemark.setProName(project.getProName()); - tjOrderRemark.setDeptId(project.getDeptId()); - tjOrderRemark.setTjNumber(order.getTjNumber()); - tjOrderRemark.setCreateBy(sysUser.getNickName()); - tjOrderRemark.setCreateTime(dates); - tjOrderRemark.setUpdateBy(sysUser.getNickName()); - tjOrderRemark.setUpdateTime(dates); - tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId())); - tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId())); - tjOrderRemark.setJxbz(jxbz); - orderRemarkService.save(tjOrderRemark); + TjOrderRemark tjOrderRemark = new TjOrderRemark(); + tjOrderRemark.setProId(project.getProId()); + tjOrderRemark.setProName(project.getProName()); + tjOrderRemark.setDeptId(project.getDeptId()); + tjOrderRemark.setTjNumber(order.getTjNumber()); + tjOrderRemark.setCreateBy(sysUser.getNickName()); + tjOrderRemark.setCreateTime(dates); + tjOrderRemark.setUpdateBy(sysUser.getNickName()); + tjOrderRemark.setUpdateTime(dates); + tjOrderRemark.setCreateId(String.valueOf(sysUser.getUserId())); + tjOrderRemark.setUpdateId(String.valueOf(sysUser.getUserId())); + tjOrderRemark.setJxbz(jxbz); + orderRemarkService.save(tjOrderRemark); - TjOrderDetail orderDetail = tjOrderDetailService.getTjOrderDetailByOrderId(String.valueOf(tjFlowingWater.getOrderId()), project.getProId().toString()); - if (null != orderDetail) { - detailMapper.updateTjOrderDetailDel(orderDetail.getOrderDetailId().toString()); - } + TjOrderDetail orderDetail = tjOrderDetailService.getTjOrderDetailByOrderId(String.valueOf(tjFlowingWater.getOrderId()), project.getProId().toString()); + if (null != orderDetail) { + detailMapper.updateTjOrderDetailDel(orderDetail.getOrderDetailId().toString()); + } - TjOrderDetail detail1 = new TjOrderDetail(); - detail1.setTjStatus(0L); - detail1.setOrderId(tjFlowingWater.getOrderId()); - detail1.setProId(project.getProId()); - detail1.setIsAddition("Y"); - detail1.setCreateBy(sysUser.getNickName()); - detail1.setCreateTime(dates); - detail1.setUpdateBy(sysUser.getNickName()); - detail1.setUpdateTime(dates); - detail1.setCreateId(String.valueOf(sysUser.getUserId())); - detail1.setUpdateId(String.valueOf(sysUser.getUserId())); - detail1.setJxbz(jxbz); - tjOrderDetailService.save(detail1); + TjOrderDetail detail1 = new TjOrderDetail(); + detail1.setTjStatus(0L); + detail1.setOrderId(tjFlowingWater.getOrderId()); + detail1.setProId(project.getProId()); + detail1.setIsAddition("Y"); + detail1.setCreateBy(sysUser.getNickName()); + detail1.setCreateTime(dates); + detail1.setUpdateBy(sysUser.getNickName()); + detail1.setUpdateTime(dates); + detail1.setCreateId(String.valueOf(sysUser.getUserId())); + detail1.setUpdateId(String.valueOf(sysUser.getUserId())); + detail1.setJxbz(jxbz); + tjOrderDetailService.save(detail1); // tjOrderDetails.add(detail1); - if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJcDeptIds().contains(project.getDeptId().toString())) { - if (null != project.getHisXmbm()) { - jianChaProjects.add(project); - } - } - } + if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0 && deptService.getJcDeptIds().contains(project.getDeptId().toString())) { + if (null != project.getHisXmbm()) { + jianChaProjects.add(project); + } + } + } - // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� - if (config.equalsIgnoreCase("Y")) { - List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); - addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); - String isUseMx = configService.selectConfigByKey("jcxhis_is_use_mx"); - AjaxResult result; - if (isUseMx.equalsIgnoreCase("Y")) - result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, (tjFlowingWater.getPayType() == 6L || tjFlowingWater.getPayStasus() == 1L)); - else - result = tijianbulushenqingJinchuanNew(customer, date, order.getCardId(), jxbz, jianChaProjects,(tjFlowingWater.getPayType() == 6L || tjFlowingWater.getPayStasus() == 1L)); - return result.get("code").toString().equals("200"); - } else { - List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); - addCaiYangDengJiByDiaoYongShiTu(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); - } - } - - return true; + // TODO 鍜岀鍒扮櫥璁颁竴鏍� 鍙湁閰嶇疆涓殑浠ュ強鏀惰垂绫诲瀷涓轰綋妫�绁ㄦ椂鎵嶅鍔犲埌閲囨牱绠$悊琛� + if (config.equalsIgnoreCase("Y")) { + List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); + addCaiYangDengJi(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); + String isUseMx = configService.selectConfigByKey("jcxhis_is_use_mx"); + AjaxResult result; + try { + if (isUseMx.equalsIgnoreCase("Y")) + result = tijianbulushenqing(customer, date, order.getCardId(), jxbz, jianChaProjects, (tjFlowingWater.getPayType() == 6L || tjFlowingWater.getPayStasus() == 1L)); + else + result = tijianbulushenqingJinchuanNew(customer, date, order.getCardId(), jxbz, jianChaProjects,(tjFlowingWater.getPayType() == 6L || tjFlowingWater.getPayStasus() == 1L)); + } catch (Exception e) { + throw new RuntimeException(e); + } + return result.get("code").toString().equals("200"); + } else { + List<TjOrderDetail> detailLists = tjOrderDetailService.getCaiYangDengJiJxbz(order.getOrderId(), jxbz); + addCaiYangDengJiByDiaoYongShiTu(detailLists, !detailLists.isEmpty(), order, sysUser, jxbz); + } + } + return true; + }catch (Exception e){ + throw new RuntimeException(e); + } } public void addCaiYangDengJiByDiaoYongShiTu(List<TjOrderDetail> detailList, boolean detailList1, TjOrder order, SysUser sysUser, String jxbz) { @@ -1046,6 +1053,7 @@ } } catch (Exception e) { log.error(e.getMessage()); + throw new RuntimeException(); } } @@ -1054,691 +1062,229 @@ private static ArrayList<String> ids = null; public AjaxResult tijianbulushenqingJinchuanNew(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { - mapJinchuan = new ArrayList<>(); - ids = new ArrayList<>(); - tijianbulushenqingOld(customer, date, cardId, jxbz, jianChaProjects, isTuanTiPiao); + try { + mapJinchuan = new ArrayList<>(); + ids = new ArrayList<>(); + tijianbulushenqingOld(customer, date, cardId, jxbz, jianChaProjects, isTuanTiPiao); - tijianbulushenqingJinchuan(customer, date, cardId, jxbz, jianChaProjects, isTuanTiPiao); - return AjaxResult.success(); - //return AjaxResult.success(); + tijianbulushenqingJinchuan(customer, date, cardId, jxbz, jianChaProjects, isTuanTiPiao); + return AjaxResult.success(); + } catch (Exception e) { + throw new RuntimeException(e); + } } public AjaxResult tijianbulushenqingJinchuan(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { - TjOrder order = orderService.getOrderByCardId(cardId); - if (null != order) { - String dept = configService.selectConfigByKey("request_default_dept"); - String ysbm = configService.selectConfigByKey("request_default_ysbm"); - String ysmc = configService.selectConfigByKey("request_default_ysmc"); - String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); - List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); - Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); - List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); - if (useLisAndPacsRegister && isTuanTiPiao) { - // 妫�鏌ョ敵璇� - pacsReg(order, customer, jianChaProjects); - LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); - wrapper.eq(TjSampling::getJxbz, jxbz); - List<TjSampling> list = tjSamplingService.list(wrapper); - log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); - if (!list.isEmpty()) { - Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); - log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); -// ArrayList<String> ids = new ArrayList<>(); - for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { - log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); - // Lis鏍囨湰浠g爜 - String specimenTypeCode = entry.getKey(); - List<TjSampling> samplings = entry.getValue(); - if (samplings.size() >= 2) { - // 杩涜鍚堝苟 - List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); -// log.info("鎻愬彇id ->{}",stringList); - for (int i = 0; i < stringList.size(); i++) { - String s = stringList.get(i); - if (tjSamplingService.isMergeItem(s) != 0) { - stringList.remove(s); - ids.add(s); + try { + TjOrder order = orderService.getOrderByCardId(cardId); + if (null != order) { + String dept = configService.selectConfigByKey("request_default_dept"); + String ysbm = configService.selectConfigByKey("request_default_ysbm"); + String ysmc = configService.selectConfigByKey("request_default_ysmc"); + String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); + Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); + List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); + if (useLisAndPacsRegister && isTuanTiPiao) { + // 妫�鏌ョ敵璇� + pacsReg(order, customer, jianChaProjects); + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); + wrapper.eq(TjSampling::getJxbz, jxbz); + List<TjSampling> list = tjSamplingService.list(wrapper); + log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); + if (!list.isEmpty()) { + Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); + log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); + // ArrayList<String> ids = new ArrayList<>(); + for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { + log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); + // Lis鏍囨湰浠g爜 + String specimenTypeCode = entry.getKey(); + List<TjSampling> samplings = entry.getValue(); + if (samplings.size() >= 2) { + // 杩涜鍚堝苟 + List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); + // log.info("鎻愬彇id ->{}",stringList); + for (int i = 0; i < stringList.size(); i++) { + String s = stringList.get(i); + if (tjSamplingService.isMergeItem(s) != 0) { + stringList.remove(s); + ids.add(s); + } } - } - if (stringList.size() > 1) { - String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); - ids.add(id); + if (stringList.size() > 1) { + String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); + ids.add(id); + } else { + ids.add(stringList.get(0)); + } } else { - ids.add(stringList.get(0)); + ids.add(samplings.get(0).getId()); } - } else { - ids.add(samplings.get(0).getId()); } - } - Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids.stream().distinct().collect(Collectors.toList()), "Y", "N"); - if (!confirmed) - return AjaxResult.error("澶勭悊澶辫触"); - } - } else { - List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); - //妫�楠岀敵璇� - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); -// wq.groupBy(TjProject::getHisXmbm); -// wq.in(TjProject::getDeptId, "241", "317"); - wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); - List<TjProject> projects = projectService.list(wq); - if (null != projects && !projects.isEmpty()) { - List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); - List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); - Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); - if (!isNull.isEmpty()) - listMap.put("", isNull); - for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { - OutpintestapplyDto dto = new OutpintestapplyDto(); - dto.setHisRegistrationId(cardId); - dto.setSfzh(customer.getCusIdcard()); - dto.setSqysbm(ysbm); - dto.setMzksbm(dept); - dto.setSjrq(date); - dto.setCzybm(ysbm); - dto.setCzyksbm(dept); - dto.setSfjz("0"); - List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); - List<TjProject> value = entry.getValue(); - for (TjProject project : value) { - LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TjProject::getProParentId, project.getProId()); - if (!mapJinchuan.isEmpty()) { - wrapper.notIn(TjProject::getProId, mapJinchuan); - wrapper.notIn(TjProject::getProParentId, mapJinchuan); - } - List<TjProject> list = projectService.list(wrapper); - for (TjProject tjProject : list) { - if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); - if (tjProject.getSfzhfy().equals("Y")) { - detailsDto.setSfzhfy("1"); - } else { - detailsDto.setSfzhfy("0"); - } - detailsDto.setSl(tjProject.getSl()); - detailsDto.setProjg(tjProject.getProPrice()); - detailsDtos.add(detailsDto); - } - } - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - } - if (!detailsDtos.isEmpty()) { - dto.setDetails(detailsDtos); - AjaxResult ajaxResult1 = controller.Outpintestapply(dto); - String result5 = getAjaxResult(ajaxResult1); - JSONObject object3 = getJSONObject(result5); - String code3 = object3.getStr("ResultCode"); - if (code3.equals("0")) { - List<OutpintestapplyDetailsDto> details = dto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setCardId(dto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jysqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�楠�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); - } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); - } - // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 - // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 -// TjOrder tjOrder = orderService.getOrderByCardId(cardId); -// if(null !=tjOrder){ -// List<TjOrderDetail> dengJi = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); -// tjSysAsyncService.addCaiYangDengJi(dengJi,!dengJi.isEmpty(),tjOrder, SecurityUtils.getLoginUser().getUser(), null); -// } - } - } - } + Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids.stream().distinct().collect(Collectors.toList()), "Y", "N"); + if (!confirmed) + return AjaxResult.error("澶勭悊澶辫触"); } - } - - //闂ㄨ瘖妫�鏌ョ敵璇� -// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); - List<TjProject> projects = projectService.list(wq); - List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); - if (!proIds.isEmpty()) { - QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); - wrapper4.select("sum(sl) as sl", "pro_id" - , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" - , "pro_price"); - wrapper4.in("pro_parent_id", proIds); - wrapper4.groupBy("his_xmbm"); - if (!mapJinchuan.isEmpty()) { - wrapper4.notIn("pro_id", mapJinchuan); - wrapper4.notIn("pro_parent_id", mapJinchuan); - } - projects = projectService.list(wrapper4); + } else { + List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); + //妫�楠岀敵璇� + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + // wq.groupBy(TjProject::getHisXmbm); + // wq.in(TjProject::getDeptId, "241", "317"); + wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); + List<TjProject> projects = projectService.list(wq); if (null != projects && !projects.isEmpty()) { - List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); - for (TjProject project : projects) { - if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(project.getHisXmbm()); - detailsDto.setSfzhfy("0"); - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailsDtoss.add(detailsDto); + List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); + List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); + Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); + if (!isNull.isEmpty()) + listMap.put("", isNull); + for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { + OutpintestapplyDto dto = new OutpintestapplyDto(); + dto.setHisRegistrationId(cardId); + dto.setSfzh(customer.getCusIdcard()); + dto.setSqysbm(ysbm); + dto.setMzksbm(dept); + dto.setSjrq(date); + dto.setCzybm(ysbm); + dto.setCzyksbm(dept); + dto.setSfjz("0"); + List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); + List<TjProject> value = entry.getValue(); + for (TjProject project : value) { + LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjProject::getProParentId, project.getProId()); + if (!mapJinchuan.isEmpty()) { + wrapper.notIn(TjProject::getProId, mapJinchuan); + wrapper.notIn(TjProject::getProParentId, mapJinchuan); } - } - } - List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - if (!detailsDtoss.isEmpty()) { - OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); - outpinexamapplyDto.setHisRegistrationId(cardId); - outpinexamapplyDto.setSfzh(customer.getCusIdcard()); - outpinexamapplyDto.setSqysbm(ysbm); - outpinexamapplyDto.setMzksbm(dept); - outpinexamapplyDto.setCzybm(ysbm); - outpinexamapplyDto.setCzyksbm(dept); - outpinexamapplyDto.setSfjz("0"); - outpinexamapplyDto.setDetails(detailsDtoss); - AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); - String result6 = getAjaxResult(ajaxResult2); - JSONObject object5 = getJSONObject(result6); - String code4 = object5.getStr("ResultCode"); - if (code4.equals("0")) { - List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object5.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jcsqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�鏌�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + List<TjProject> list = projectService.list(wrapper); + for (TjProject tjProject : list) { + if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailsDtos.add(detailsDto); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + } + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); } } - } - } - } - } - - //闂ㄨ瘖娌荤枟澶勭疆鐢宠 - OutpintreatapplyDto dao = new OutpintreatapplyDto(); - dao.setHisRegistrationId(cardId); - dao.setSfzh(customer.getCusIdcard()); - dao.setSqysbm(ysbm); - dao.setMzksbm(dept); - dao.setSjrq(date); - dao.setCzybm(ysbm); - dao.setCzyksbm(dept); - dao.setSfjz("0"); -// List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); - List<TjProject> projects = projectService.list(wq); - List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); - if (!proIds.isEmpty()) { - QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); - wrapper4.select("sum(sl) as sl", "pro_id" - , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" - , "pro_price"); - wrapper4.in("pro_parent_id", proIds); - wrapper4.groupBy("his_xmbm"); - if (!mapJinchuan.isEmpty()) { - wrapper4.notIn("pro_id", mapJinchuan); - wrapper4.notIn("pro_parent_id", mapJinchuan); - } - projects = projectService.list(wrapper4); - if (null != projects && !projects.isEmpty()) { - List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); - for (TjProject project : projects) { - if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(project.getHisXmbm()); - detailsDto.setSfzhfy("0"); - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailDtos.add(detailsDto); - } - } - List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - if (!detailDtos.isEmpty()) { - dao.setDetails(detailDtos); - AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); - String mzylyzsq2 = getAjaxResult(mzylyzsq1); - JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); - String code5 = mzylyzsq3.getStr("ResultCode"); - if (code5.equals("0")) { - List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); - for (OutpintestapplyDetailsDto detail : details1) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(dao.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("zlczh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("澶勭疆"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + if (!detailsDtos.isEmpty()) { + dto.setDetails(detailsDtos); + AjaxResult ajaxResult1 = controller.Outpintestapply(dto); + String result5 = getAjaxResult(ajaxResult1); + JSONObject object3 = getJSONObject(result5); + String code3 = object3.getStr("ResultCode"); + if (code3.equals("0")) { + List<OutpintestapplyDetailsDto> details = dto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(dto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jysqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�楠�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + }else { + throw new RuntimeException(); } } } } } - } - //鑽搧鐢宠 - if (!outpinmedicapplyDetilsDtos.isEmpty()) { - OutpinmedicapplyDto dto1 = new OutpinmedicapplyDto(); - dto1.setHisRegistrationId(cardId); - dto1.setSfzh(customer.getCusIdcard()); - dto1.setSqysbm(ysbm); - dto1.setMzksbm(dept); - dto1.setSjrq(date); - String yfbm = configService.selectConfigByKey("chufang_yfbm"); - String mzzd = configService.selectConfigByKey("chufang_mzzd"); - String czybm = configService.selectConfigByKey("chufang_czybm"); - String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); - String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); - if (czybm.equalsIgnoreCase("N")) - dto1.setCzybm(ysbm); - else dto1.setCzybm(czybm); - if (czyksbm.equalsIgnoreCase("N")) - dto1.setCzyksbm(dept); - else dto1.setCzyksbm(dept); - dto1.setCflxbm(cflxbm); - if (yfbm.equalsIgnoreCase("N")) - dto1.setYfbm("1"); - else dto1.setYfbm(yfbm); - dto1.setFyts("1"); - if (mzzd.equalsIgnoreCase("N")) - dto1.setMzzd(""); - else dto1.setMzzd(mzzd); - dto1.setDetails(outpinmedicapplyDetilsDtos); - AjaxResult result = controller.Outpinmedicapply(dto1); - String result1 = getAjaxResult(result); - JSONObject object = getJSONObject(result1); - String code = object.getStr("ResultCode"); - if (null != code && code.equals("0")) { - JSONObject resultData = object.getJSONObject("ResultData"); -// Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); - String cfh = resultData.getStr("cfh"); - log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: " + cfh + " outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: " + outpinmedicapplyDetilsDtos.toString()); - for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { - TjCf cf = new TjCf(); - cf.setJxbz(jxbz); - cf.setCardId(cardId); - cf.setSfzh(customer.getCusIdcard()); - cf.setCfh(cfh); - cf.setSqysbm(ysbm); - cf.setSqysxm(ysmc); - cf.setMzksbn(dept); - cf.setSqrq(date); - cf.setCzybm(ysbm); - cf.setYpbm(detilsDto.getYpbm()); - cf.setYpmc(detilsDto.getYpmc()); - cf.setSl(String.valueOf(detilsDto.getSl())); - cf.setDj(String.valueOf(detilsDto.getDj())); - cf.setDcjl(String.valueOf(detilsDto.getDcjl())); - cf.setPj(String.valueOf(detilsDto.getPj())); - cf.setJj(String.valueOf(detilsDto.getJj())); - cf.setCreateTime(new Date()); - cfService.save(cf); - } - } - } - } - } - return AjaxResult.success(); - } - - // 浣撴瀵筯is鐢宠鍗曡皟鐢ㄦ柟娉� - public AjaxResult tijianbulushenqingOld(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { - TjOrder order = orderService.getOrderByCardId(cardId); - if (null != order) { - String dept = configService.selectConfigByKey("request_default_dept"); - String ysbm = configService.selectConfigByKey("request_default_ysbm"); - String ysmc = configService.selectConfigByKey("request_default_ysmc"); - String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); - List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); - Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); - List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); - if (useLisAndPacsRegister && isTuanTiPiao) { - // 妫�鏌ョ敵璇� - pacsReg(order, customer, jianChaProjects); - LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); - wrapper.eq(TjSampling::getJxbz, jxbz); - List<TjSampling> list = tjSamplingService.list(wrapper); - log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); - if (!list.isEmpty()) { - Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); - log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); - ArrayList<String> ids = new ArrayList<>(); - for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { - log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); - // Lis鏍囨湰浠g爜 - String specimenTypeCode = entry.getKey(); - List<TjSampling> samplings = entry.getValue(); - if (samplings.size() >= 2) { - // 杩涜鍚堝苟 - List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); - log.info("鎻愬彇id ->{}", stringList); - for (int i = 0; i < stringList.size(); i++) { - String s = stringList.get(i); - if (tjSamplingService.isMergeItem(s) != 0) { - stringList.remove(s); - ids.add(s); - } + //闂ㄨ瘖妫�鏌ョ敵璇� + // List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); + List<TjProject> projects = projectService.list(wq); + List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); + if (!proIds.isEmpty()) { + QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); + wrapper4.select("sum(sl) as sl", "pro_id" + , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" + , "pro_price"); + wrapper4.in("pro_parent_id", proIds); + wrapper4.groupBy("his_xmbm"); + if (!mapJinchuan.isEmpty()) { + wrapper4.notIn("pro_id", mapJinchuan); + wrapper4.notIn("pro_parent_id", mapJinchuan); } - if (stringList.size() > 1) { - String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); - ids.add(id); - } else { - ids.add(stringList.get(0)); - } - } else { - ids.add(samplings.get(0).getId()); - } - } -// Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids, "Y", "N"); -// if (!confirmed) -// return AjaxResult.error("澶勭悊澶辫触"); - } - } else { - List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); - //妫�楠岀敵璇� - OutpintestapplyDto dto = new OutpintestapplyDto(); - dto.setHisRegistrationId(cardId); - dto.setSfzh(customer.getCusIdcard()); - dto.setSqysbm(ysbm); - dto.setMzksbm(dept); - dto.setSjrq(date); - dto.setCzybm(ysbm); - dto.setCzyksbm(dept); - dto.setSfjz("0"); - - List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); -// wq.groupBy(TjProject::getHisXmbm); -// wq.in(TjProject::getDeptId, "241", "317"); - wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); - List<TjProject> projects = projectService.list(wq); - if (null != projects && !projects.isEmpty()) { - for (TjProject project : projects) { - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - if (project.getSfzhfy().equals("Y")) { - mapJinchuan.add(project.getProId().toString()); - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(project.getHisXmbm()); - if (project.getSfzhfy().equals("Y")) { - detailsDto.setSfzhfy("1"); - } else { + projects = projectService.list(wrapper4); + if (null != projects && !projects.isEmpty()) { + List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); + for (TjProject project : projects) { + if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); detailsDto.setSfzhfy("0"); + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailsDtoss.add(detailsDto); } - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailsDtos.add(detailsDto); - } - } - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - } - } - } - } - if (!detailsDtos.isEmpty()) { - dto.setDetails(detailsDtos); - AjaxResult ajaxResult1 = controller.Outpintestapply(dto); - String result5 = getAjaxResult(ajaxResult1); - JSONObject object3 = getJSONObject(result5); - String code3 = object3.getStr("ResultCode"); - if (code3.equals("0")) { - List<OutpintestapplyDetailsDto> details = dto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(dto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jysqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�楠�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); - } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); - } - } - } - - //闂ㄨ瘖妫�鏌ョ敵璇� - OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); - outpinexamapplyDto.setHisRegistrationId(cardId); - outpinexamapplyDto.setSfzh(customer.getCusIdcard()); - outpinexamapplyDto.setSqysbm(ysbm); - outpinexamapplyDto.setMzksbm(dept); - outpinexamapplyDto.setCzybm(ysbm); - outpinexamapplyDto.setCzyksbm(dept); - outpinexamapplyDto.setSfjz("0"); -// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); - List<TjProject> projects = projectService.list(wq); - if (null != projects && !projects.isEmpty()) { - for (TjProject project : projects) { - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - if (project.getSfzhfy().equals("Y")) { - mapJinchuan.add(project.getProParentId().toString()); - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(project.getHisXmbm()); - if (project.getSfzhfy().equals("Y")) { - detailsDto.setSfzhfy("1"); - } else { - detailsDto.setSfzhfy("0"); - } - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailsDtoss.add(detailsDto); } } List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); @@ -1770,75 +1316,436 @@ outpinmedicapplyDetilsDtos.add(detilsDto); }); } + if (!detailsDtoss.isEmpty()) { + OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); + outpinexamapplyDto.setHisRegistrationId(cardId); + outpinexamapplyDto.setSfzh(customer.getCusIdcard()); + outpinexamapplyDto.setSqysbm(ysbm); + outpinexamapplyDto.setMzksbm(dept); + outpinexamapplyDto.setCzybm(ysbm); + outpinexamapplyDto.setCzyksbm(dept); + outpinexamapplyDto.setSfjz("0"); + outpinexamapplyDto.setDetails(detailsDtoss); + AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); + String result6 = getAjaxResult(ajaxResult2); + JSONObject object5 = getJSONObject(result6); + String code4 = object5.getStr("ResultCode"); + if (code4.equals("0")) { + List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object5.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jcsqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�鏌�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } + }else { + throw new RuntimeException(); + } + } } } } - } - if (!detailsDtoss.isEmpty()) { - outpinexamapplyDto.setDetails(detailsDtoss); - AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); - String result6 = getAjaxResult(ajaxResult2); - JSONObject object5 = getJSONObject(result6); - String code4 = object5.getStr("ResultCode"); - if (code4.equals("0")) { - List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object5.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jcsqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�鏌�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + + //闂ㄨ瘖娌荤枟澶勭疆鐢宠 + OutpintreatapplyDto dao = new OutpintreatapplyDto(); + dao.setHisRegistrationId(cardId); + dao.setSfzh(customer.getCusIdcard()); + dao.setSqysbm(ysbm); + dao.setMzksbm(dept); + dao.setSjrq(date); + dao.setCzybm(ysbm); + dao.setCzyksbm(dept); + dao.setSfjz("0"); + // List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); + List<TjProject> projects = projectService.list(wq); + List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); + if (!proIds.isEmpty()) { + QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); + wrapper4.select("sum(sl) as sl", "pro_id" + , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" + , "pro_price"); + wrapper4.in("pro_parent_id", proIds); + wrapper4.groupBy("his_xmbm"); + if (!mapJinchuan.isEmpty()) { + wrapper4.notIn("pro_id", mapJinchuan); + wrapper4.notIn("pro_parent_id", mapJinchuan); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + projects = projectService.list(wrapper4); + if (null != projects && !projects.isEmpty()) { + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); + for (TjProject project : projects) { + if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + detailsDto.setSfzhfy("0"); + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailDtos.add(detailsDto); + } + } + List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); + } + if (!detailDtos.isEmpty()) { + dao.setDetails(detailDtos); + AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); + String mzylyzsq2 = getAjaxResult(mzylyzsq1); + JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); + String code5 = mzylyzsq3.getStr("ResultCode"); + if (code5.equals("0")) { + List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); + for (OutpintestapplyDetailsDto detail : details1) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(dao.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("zlczh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("澶勭疆"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } + }else { + throw new RuntimeException(); + } + } + } + } + } + + //鑽搧鐢宠 + if (!outpinmedicapplyDetilsDtos.isEmpty()) { + OutpinmedicapplyDto dto1 = new OutpinmedicapplyDto(); + dto1.setHisRegistrationId(cardId); + dto1.setSfzh(customer.getCusIdcard()); + dto1.setSqysbm(ysbm); + dto1.setMzksbm(dept); + dto1.setSjrq(date); + String yfbm = configService.selectConfigByKey("chufang_yfbm"); + String mzzd = configService.selectConfigByKey("chufang_mzzd"); + String czybm = configService.selectConfigByKey("chufang_czybm"); + String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); + String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); + if (czybm.equalsIgnoreCase("N")) + dto1.setCzybm(ysbm); + else dto1.setCzybm(czybm); + if (czyksbm.equalsIgnoreCase("N")) + dto1.setCzyksbm(dept); + else dto1.setCzyksbm(dept); + dto1.setCflxbm(cflxbm); + if (yfbm.equalsIgnoreCase("N")) + dto1.setYfbm("1"); + else dto1.setYfbm(yfbm); + dto1.setFyts("1"); + if (mzzd.equalsIgnoreCase("N")) + dto1.setMzzd(""); + else dto1.setMzzd(mzzd); + dto1.setDetails(outpinmedicapplyDetilsDtos); + AjaxResult result = controller.Outpinmedicapply(dto1); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (null != code && code.equals("0")) { + JSONObject resultData = object.getJSONObject("ResultData"); + // Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); + String cfh = resultData.getStr("cfh"); + log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: " + cfh + " outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: " + outpinmedicapplyDetilsDtos.toString()); + for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { + TjCf cf = new TjCf(); + cf.setJxbz(jxbz); + cf.setCardId(cardId); + cf.setSfzh(customer.getCusIdcard()); + cf.setCfh(cfh); + cf.setSqysbm(ysbm); + cf.setSqysxm(ysmc); + cf.setMzksbn(dept); + cf.setSqrq(date); + cf.setCzybm(ysbm); + cf.setYpbm(detilsDto.getYpbm()); + cf.setYpmc(detilsDto.getYpmc()); + cf.setSl(String.valueOf(detilsDto.getSl())); + cf.setDj(String.valueOf(detilsDto.getDj())); + cf.setDcjl(String.valueOf(detilsDto.getDcjl())); + cf.setPj(String.valueOf(detilsDto.getPj())); + cf.setJj(String.valueOf(detilsDto.getJj())); + cf.setCreateTime(new Date()); + cfService.save(cf); + } + }else { + throw new RuntimeException(); } } } + } + return AjaxResult.success(); + } catch (Exception e) { + throw new RuntimeException(e); + } + } - //闂ㄨ瘖娌荤枟澶勭疆鐢宠 - OutpintreatapplyDto dao = new OutpintreatapplyDto(); - dao.setHisRegistrationId(cardId); - dao.setSfzh(customer.getCusIdcard()); - dao.setSqysbm(ysbm); - dao.setMzksbm(dept); - dao.setSjrq(date); - dao.setCzybm(ysbm); - dao.setCzyksbm(dept); - dao.setSfjz("0"); -// List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); - List<TjProject> projects = projectService.list(wq); - if (null != projects && !projects.isEmpty()) { - for (TjProject project : projects) { - if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - if (null != project.getHisXmbm()) { - { + // 浣撴瀵筯is鐢宠鍗曡皟鐢ㄦ柟娉� + public AjaxResult tijianbulushenqingOld(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { + try { + TjOrder order = orderService.getOrderByCardId(cardId); + if (null != order) { + String dept = configService.selectConfigByKey("request_default_dept"); + String ysbm = configService.selectConfigByKey("request_default_ysbm"); + String ysmc = configService.selectConfigByKey("request_default_ysmc"); + String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); + Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); + List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); + if (useLisAndPacsRegister && isTuanTiPiao) { + // 妫�鏌ョ敵璇� + pacsReg(order, customer, jianChaProjects); + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); + wrapper.eq(TjSampling::getJxbz, jxbz); + List<TjSampling> list = tjSamplingService.list(wrapper); + log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); + if (!list.isEmpty()) { + Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); + log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); + ArrayList<String> ids = new ArrayList<>(); + for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { + log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); + // Lis鏍囨湰浠g爜 + String specimenTypeCode = entry.getKey(); + List<TjSampling> samplings = entry.getValue(); + if (samplings.size() >= 2) { + // 杩涜鍚堝苟 + List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); + log.info("鎻愬彇id ->{}", stringList); + for (int i = 0; i < stringList.size(); i++) { + String s = stringList.get(i); + if (tjSamplingService.isMergeItem(s) != 0) { + stringList.remove(s); + ids.add(s); + } + } + if (stringList.size() > 1) { + String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); + ids.add(id); + } else { + ids.add(stringList.get(0)); + } + } else { + ids.add(samplings.get(0).getId()); + } + } + // Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids, "Y", "N"); + // if (!confirmed) + // return AjaxResult.error("澶勭悊澶辫触"); + } + } else { + List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); + //妫�楠岀敵璇� + OutpintestapplyDto dto = new OutpintestapplyDto(); + dto.setHisRegistrationId(cardId); + dto.setSfzh(customer.getCusIdcard()); + dto.setSqysbm(ysbm); + dto.setMzksbm(dept); + dto.setSjrq(date); + dto.setCzybm(ysbm); + dto.setCzyksbm(dept); + dto.setSfjz("0"); + List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + // wq.groupBy(TjProject::getHisXmbm); + // wq.in(TjProject::getDeptId, "241", "317"); + wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && !projects.isEmpty()) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { + if (project.getSfzhfy().equals("Y")) { + mapJinchuan.add(project.getProId().toString()); + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + if (project.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailsDtos.add(detailsDto); + } + } + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); + } + } + } + } + } + if (!detailsDtos.isEmpty()) { + dto.setDetails(detailsDtos); + AjaxResult ajaxResult1 = controller.Outpintestapply(dto); + String result5 = getAjaxResult(ajaxResult1); + JSONObject object3 = getJSONObject(result5); + String code3 = object3.getStr("ResultCode"); + if (code3.equals("0")) { + List<OutpintestapplyDetailsDto> details = dto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(dto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jysqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�楠�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } + }else { + throw new RuntimeException(); + } + } + + //闂ㄨ瘖妫�鏌ョ敵璇� + OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); + outpinexamapplyDto.setHisRegistrationId(cardId); + outpinexamapplyDto.setSfzh(customer.getCusIdcard()); + outpinexamapplyDto.setSqysbm(ysbm); + outpinexamapplyDto.setMzksbm(dept); + outpinexamapplyDto.setCzybm(ysbm); + outpinexamapplyDto.setCzyksbm(dept); + outpinexamapplyDto.setSfjz("0"); + // List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && !projects.isEmpty()) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { if (project.getSfzhfy().equals("Y")) { mapJinchuan.add(project.getProParentId().toString()); OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); @@ -1850,147 +1757,266 @@ } detailsDto.setSl(project.getSl()); detailsDto.setProjg(project.getProPrice()); - detailDtos.add(detailsDto); + detailsDtoss.add(detailsDto); } - -// mapJinchuan.add(project.getProParentId().toString()); -// OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); -// detailsDto.setMxfyxmbm(project.getHisXmbm()); -// if (project.getSfzhfy().equals("Y")) { -// detailsDto.setSfzhfy("1"); -// } else { -// detailsDto.setSfzhfy("0"); -// } -// detailsDto.setSl(project.getSl()); -// detailsDto.setProjg(project.getProPrice()); -// detailDtos.add(detailsDto); + } + List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); } } - List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); + } + } + } + if (!detailsDtoss.isEmpty()) { + outpinexamapplyDto.setDetails(detailsDtoss); + AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); + String result6 = getAjaxResult(ajaxResult2); + JSONObject object5 = getJSONObject(result6); + String code4 = object5.getStr("ResultCode"); + if (code4.equals("0")) { + List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object5.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jcsqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�鏌�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } + }else { + throw new RuntimeException(); + } + } + + //闂ㄨ瘖娌荤枟澶勭疆鐢宠 + OutpintreatapplyDto dao = new OutpintreatapplyDto(); + dao.setHisRegistrationId(cardId); + dao.setSfzh(customer.getCusIdcard()); + dao.setSqysbm(ysbm); + dao.setMzksbm(dept); + dao.setSjrq(date); + dao.setCzybm(ysbm); + dao.setCzyksbm(dept); + dao.setSfjz("0"); + // List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && !projects.isEmpty()) { + for (TjProject project : projects) { + if (0 == project.getProParentId() && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (null != project.getHisXmbm()) { + { + + if (project.getSfzhfy().equals("Y")) { + mapJinchuan.add(project.getProParentId().toString()); + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + if (project.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailDtos.add(detailsDto); + } + + // mapJinchuan.add(project.getProParentId().toString()); + // OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + // detailsDto.setMxfyxmbm(project.getHisXmbm()); + // if (project.getSfzhfy().equals("Y")) { + // detailsDto.setSfzhfy("1"); + // } else { + // detailsDto.setSfzhfy("0"); + // } + // detailsDto.setSl(project.getSl()); + // detailsDto.setProjg(project.getProPrice()); + // detailDtos.add(detailsDto); + } + } + List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); + } } } } } - } - if (!detailDtos.isEmpty()) { - dao.setDetails(detailDtos); - AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); - String mzylyzsq2 = getAjaxResult(mzylyzsq1); - JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); - String code5 = mzylyzsq3.getStr("ResultCode"); - if (code5.equals("0")) { - List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); - for (OutpintestapplyDetailsDto detail : details1) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(dao.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("zlczh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("澶勭疆"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + if (!detailDtos.isEmpty()) { + dao.setDetails(detailDtos); + AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); + String mzylyzsq2 = getAjaxResult(mzylyzsq1); + JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); + String code5 = mzylyzsq3.getStr("ResultCode"); + if (code5.equals("0")) { + List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); + for (OutpintestapplyDetailsDto detail : details1) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(dao.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("zlczh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("澶勭疆"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + }else { + throw new RuntimeException(); } } - } -/* - //鑽搧鐢宠 - if(!outpinmedicapplyDetilsDtos.isEmpty()){ - OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); - dto1.setHisRegistrationId(cardId); - dto1.setSfzh(customer.getCusIdcard()); - dto1.setSqysbm(ysbm); - dto1.setMzksbm(dept); - dto1.setSjrq(date); - dto1.setCzybm(ysbm); - dto1.setCzyksbm(dept); - dto1.setCflxbm("A"); - dto1.setYfbm("1"); - dto1.setFyts("1"); - dto1.setMzzd(""); - dto1.setDetails(outpinmedicapplyDetilsDtos); - AjaxResult result = controller.Outpinmedicapply(dto1); - String result1 = getAjaxResult(result); - JSONObject object = getJSONObject(result1); - String code = object.getStr("ResultCode"); - if(null !=code && code.equals("0")){ - JSONObject resultData = object.getJSONObject("ResultData"); -// Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); - String cfh = resultData.getStr("cfh"); - log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: "+cfh+" outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: "+outpinmedicapplyDetilsDtos.toString()); - for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { - TjCf cf=new TjCf(); - cf.setJxbz(jxbz); - cf.setCardId(cardId); - cf.setSfzh(customer.getCusIdcard()); - cf.setCfh(cfh); - cf.setSqysbm(ysbm); - cf.setSqysxm(ysmc); - cf.setMzksbn(dept); - cf.setSqrq(date); - cf.setCzybm(ysbm); - cf.setYpbm(detilsDto.getYpbm()); - cf.setYpmc("灏跨礌[14C]鍛兼皵璇曢獙鑽洅"); - cf.setSl(String.valueOf(detilsDto.getSl())); - cf.setDj(String.valueOf(detilsDto.getDj())); - cf.setDcjl(String.valueOf(detilsDto.getDcjl())); - cf.setPj(String.valueOf(detilsDto.getPj())); - cf.setJj(String.valueOf(detilsDto.getJj())); - cf.setCreateTime(new Date()); - cfService.save(cf); + /* + //鑽搧鐢宠 + if(!outpinmedicapplyDetilsDtos.isEmpty()){ + OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); + dto1.setHisRegistrationId(cardId); + dto1.setSfzh(customer.getCusIdcard()); + dto1.setSqysbm(ysbm); + dto1.setMzksbm(dept); + dto1.setSjrq(date); + dto1.setCzybm(ysbm); + dto1.setCzyksbm(dept); + dto1.setCflxbm("A"); + dto1.setYfbm("1"); + dto1.setFyts("1"); + dto1.setMzzd(""); + dto1.setDetails(outpinmedicapplyDetilsDtos); + AjaxResult result = controller.Outpinmedicapply(dto1); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if(null !=code && code.equals("0")){ + JSONObject resultData = object.getJSONObject("ResultData"); + // Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); + String cfh = resultData.getStr("cfh"); + log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: "+cfh+" outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: "+outpinmedicapplyDetilsDtos.toString()); + for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { + TjCf cf=new TjCf(); + cf.setJxbz(jxbz); + cf.setCardId(cardId); + cf.setSfzh(customer.getCusIdcard()); + cf.setCfh(cfh); + cf.setSqysbm(ysbm); + cf.setSqysxm(ysmc); + cf.setMzksbn(dept); + cf.setSqrq(date); + cf.setCzybm(ysbm); + cf.setYpbm(detilsDto.getYpbm()); + cf.setYpmc("灏跨礌[14C]鍛兼皵璇曢獙鑽洅"); + cf.setSl(String.valueOf(detilsDto.getSl())); + cf.setDj(String.valueOf(detilsDto.getDj())); + cf.setDcjl(String.valueOf(detilsDto.getDcjl())); + cf.setPj(String.valueOf(detilsDto.getPj())); + cf.setJj(String.valueOf(detilsDto.getJj())); + cf.setCreateTime(new Date()); + cfService.save(cf); + } } } + */ } - */ } + return AjaxResult.success(); + } catch (Exception e) { + throw new RuntimeException(e); } - return AjaxResult.success(); } /**/ @@ -2435,143 +2461,257 @@ // } public AjaxResult tijianbulushenqing(TjCustomer customer, String date, String cardId, String jxbz, ArrayList<TjProject> jianChaProjects, Boolean isTuanTiPiao) { - TjOrder order = orderService.getOrderByCardId(cardId); - if (null != order) { - String dept = configService.selectConfigByKey("request_default_dept"); - String ysbm = configService.selectConfigByKey("request_default_ysbm"); - String ysmc = configService.selectConfigByKey("request_default_ysmc"); - String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); - List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); -// Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); - List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); - String isRequestLisAllzx = configService.selectConfigByKey("jcx_is_requestLisAllzx"); + try { + TjOrder order = orderService.getOrderByCardId(cardId); + if (null != order) { + String dept = configService.selectConfigByKey("request_default_dept"); + String ysbm = configService.selectConfigByKey("request_default_ysbm"); + String ysmc = configService.selectConfigByKey("request_default_ysmc"); + String lis_tmh_prefix = configService.selectConfigByKey("make_lis_tmh_prefix"); + List<TbTransition> detailList = transitionService.getBlTbTransitionListByCusId(customer.getCusIdcard(), cardId, jxbz); + // Boolean useLisAndPacsRegister = lisApiMethod.isUseLisAndPacsRegister(order); + List<OutpinmedicapplyDetilsDto> outpinmedicapplyDetilsDtos = new ArrayList<>(); + String isRequestLisAllzx = configService.selectConfigByKey("jcx_is_requestLisAllzx"); - if (isTuanTiPiao) { + if (isTuanTiPiao) { - // 妫�鏌ョ敵璇� - pacsReg(order, customer, jianChaProjects); - LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); - wrapper.eq(TjSampling::getJxbz, jxbz); - List<TjSampling> list = tjSamplingService.list(wrapper); - log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); + // 妫�鏌ョ敵璇� + pacsReg(order, customer, jianChaProjects); + LambdaQueryWrapper<TjSampling> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjSampling::getTjNum, order.getTjNumber()); + wrapper.eq(TjSampling::getJxbz, jxbz); + List<TjSampling> list = tjSamplingService.list(wrapper); + log.info("閲囨牱鏁版嵁 ->{}", JSONUtil.toJsonStr(list)); - if (isRequestLisAllzx != null && isRequestLisAllzx.equalsIgnoreCase("Y")){ - log.info("琛ュ綍椤圭洰杩涘叆鍥綋鏍规嵁灏忛」鏍囨湰鍚堝苟鍙戦�佹柟娉�"); + if (isRequestLisAllzx != null && isRequestLisAllzx.equalsIgnoreCase("Y")){ + log.info("琛ュ綍椤圭洰杩涘叆鍥綋鏍规嵁灏忛」鏍囨湰鍚堝苟鍙戦�佹柟娉�"); - if(null !=list && !list.isEmpty()){ - List<String> strings = list.stream().map(TjSampling::getProId).collect(Collectors.toList()); - LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>(); - wrapper1.in(TjProject::getProParentId,strings); - wrapper1.eq(TjProject::getProStatus,0); - wrapper1.groupBy(TjProject::getProId); - List<TjProject> tjProjectList = projectService.list(wrapper1); - if(null != tjProjectList && !tjProjectList.isEmpty()){ - Map<String, List<TjProject>> listMap = tjProjectList.stream() - .collect(Collectors.groupingBy(p->p.getSpecimenType()+"_"+p.getYb())); + if(null !=list && !list.isEmpty()){ + List<String> strings = list.stream().map(TjSampling::getProId).collect(Collectors.toList()); + LambdaQueryWrapper<TjProject> wrapper1 = new LambdaQueryWrapper<>(); + wrapper1.in(TjProject::getProParentId,strings); + wrapper1.eq(TjProject::getProStatus,0); + wrapper1.groupBy(TjProject::getProId); + List<TjProject> tjProjectList = projectService.list(wrapper1); + if(null != tjProjectList && !tjProjectList.isEmpty()){ + Map<String, List<TjProject>> listMap = tjProjectList.stream() + .collect(Collectors.groupingBy(p->p.getSpecimenType()+"_"+p.getYb())); - log.info("鍒嗙粍鍚� ->{}",JSONUtil.toJsonStr(listMap)); - boolean save = lisApiMethod.save(listMap, order, customer); - if (!save) { - TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); - return AjaxResult.error("澶勭悊澶辫触"); - } - for (TjSampling tjSampling : list) { - tjSampling.setIsSignFor("0"); - } - tjSamplingService.updateBatchById(list); - } - } - - - }else { - if (!list.isEmpty()) { -// Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); - Map<String, List<TjSampling>> listMap = list.stream() - .collect(Collectors.groupingBy(p->p.getSpecimenTypeCode()+"_"+p.getYb())); - - log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); - ArrayList<String> ids = new ArrayList<>(); - for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { - log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); - // Lis鏍囨湰浠g爜 - String specimenTypeCode = entry.getKey(); - List<TjSampling> samplings = entry.getValue(); - if (samplings.size() >= 2) { - // 杩涜鍚堝苟 - List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); -// log.info("鎻愬彇id ->{}",stringList); - for (int i = 0; i < stringList.size(); i++) { - String s = stringList.get(i); - if (tjSamplingService.isMergeItem(s) != 0) { - stringList.remove(s); - ids.add(s); - } + log.info("鍒嗙粍鍚� ->{}",JSONUtil.toJsonStr(listMap)); + boolean save = lisApiMethod.save(listMap, order, customer); + if (!save) { + throw new RuntimeException(); } - if (stringList.size() > 1) { - String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); - ids.add(id); - } else { - ids.add(stringList.get(0)); + for (TjSampling tjSampling : list) { + tjSampling.setIsSignFor("0"); } - } else { - ids.add(samplings.get(0).getId()); + tjSamplingService.updateBatchById(list); } } - Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids, "Y", "N"); - if (!confirmed) - return AjaxResult.error("澶勭悊澶辫触"); - } - } - } else { - List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); - //妫�楠岀敵璇� - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); -// wq.groupBy(TjProject::getHisXmbm); -// wq.in(TjProject::getDeptId, "241", "317"); - wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); - List<TjProject> projects = projectService.list(wq); - if (null != projects && !projects.isEmpty()) { - List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); - List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); - Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); - if (!isNull.isEmpty()) - listMap.put("", isNull); - for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { - OutpintestapplyDto dto = new OutpintestapplyDto(); - dto.setHisRegistrationId(cardId); - dto.setSfzh(customer.getCusIdcard()); - dto.setSqysbm(ysbm); - dto.setMzksbm(dept); - dto.setSjrq(date); - dto.setCzybm(ysbm); - dto.setCzyksbm(dept); - dto.setSfjz("0"); - List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); - List<TjProject> value = entry.getValue(); - for (TjProject project : value) { - LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(TjProject::getProParentId, project.getProId()); - List<TjProject> list = projectService.list(wrapper); - for (TjProject tjProject : list) { - if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); - if (tjProject.getSfzhfy().equals("Y")) { - detailsDto.setSfzhfy("1"); - } else { - detailsDto.setSfzhfy("0"); + + }else { + if (!list.isEmpty()) { + // Map<String, List<TjSampling>> listMap = list.stream().collect(Collectors.groupingBy(TjSampling::getSpecimenTypeCode)); + Map<String, List<TjSampling>> listMap = list.stream() + .collect(Collectors.groupingBy(p->p.getSpecimenTypeCode()+"_"+p.getYb())); + + log.info("鍒嗙粍鍚� ->{}", JSONUtil.toJsonStr(listMap)); + ArrayList<String> ids = new ArrayList<>(); + for (Map.Entry<String, List<TjSampling>> entry : listMap.entrySet()) { + log.info("key ->{},val ->{}", entry.getKey(), entry.getValue()); + // Lis鏍囨湰浠g爜 + String specimenTypeCode = entry.getKey(); + List<TjSampling> samplings = entry.getValue(); + if (samplings.size() >= 2) { + // 杩涜鍚堝苟 + List<String> stringList = samplings.stream().map(TjSampling::getId).collect(Collectors.toList()); + // log.info("鎻愬彇id ->{}",stringList); + for (int i = 0; i < stringList.size(); i++) { + String s = stringList.get(i); + if (tjSamplingService.isMergeItem(s) != 0) { + stringList.remove(s); + ids.add(s); } - detailsDto.setSl(tjProject.getSl()); - detailsDto.setProjg(tjProject.getProPrice()); - detailsDtos.add(detailsDto); + } + if (stringList.size() > 1) { + String id = tjSamplingService.mergeCaiYangApi(stringList, lis_tmh_prefix); + ids.add(id); + } else { + ids.add(stringList.get(0)); + } + } else { + ids.add(samplings.get(0).getId()); + } + } + Boolean confirmed = samplingServiceApi.confirmSamplingApi(ids, "Y", "N"); + if (!confirmed) + throw new RuntimeException(); + } + } + + } else { + List<TjOutpinmedicXm> outpinmedicXms = tjOutpinmedicXmService.list(); + //妫�楠岀敵璇� + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + // wq.groupBy(TjProject::getHisXmbm); + // wq.in(TjProject::getDeptId, "241", "317"); + wq.in(TjProject::getDeptId, deptService.getJyDeptIds()); + List<TjProject> projects = projectService.list(wq); + if (null != projects && !projects.isEmpty()) { + List<TjProject> notNull = projects.stream().filter(i -> i.getSpecimenType() != null).collect(Collectors.toList()); + List<TjProject> isNull = projects.stream().filter(i -> i.getSpecimenType() == null).collect(Collectors.toList()); + Map<String, List<TjProject>> listMap = notNull.stream().collect(Collectors.groupingBy(TjProject::getSpecimenType)); + if (!isNull.isEmpty()) + listMap.put("", isNull); + for (Map.Entry<String, List<TjProject>> entry : listMap.entrySet()) { + OutpintestapplyDto dto = new OutpintestapplyDto(); + dto.setHisRegistrationId(cardId); + dto.setSfzh(customer.getCusIdcard()); + dto.setSqysbm(ysbm); + dto.setMzksbm(dept); + dto.setSjrq(date); + dto.setCzybm(ysbm); + dto.setCzyksbm(dept); + dto.setSfjz("0"); + List<OutpintestapplyDetailsDto> detailsDtos = new ArrayList<>(); + List<TjProject> value = entry.getValue(); + for (TjProject project : value) { + LambdaQueryWrapper<TjProject> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(TjProject::getProParentId, project.getProId()); + List<TjProject> list = projectService.list(wrapper); + for (TjProject tjProject : list) { + if (StrUtil.isNotBlank(tjProject.getHisXmbm()) && tjProject.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(tjProject.getHisXmbm()); + if (tjProject.getSfzhfy().equals("Y")) { + detailsDto.setSfzhfy("1"); + } else { + detailsDto.setSfzhfy("0"); + } + detailsDto.setSl(tjProject.getSl()); + detailsDto.setProjg(tjProject.getProPrice()); + detailsDtos.add(detailsDto); + } + } + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + detilsDto.setCflx(i.getCflx()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); } } + if (!detailsDtos.isEmpty()) { + dto.setDetails(detailsDtos); + AjaxResult ajaxResult1 = controller.Outpintestapply(dto); + String result5 = getAjaxResult(ajaxResult1); + JSONObject object3 = getJSONObject(result5); + String code3 = object3.getStr("ResultCode"); + if (code3.equals("0")) { + List<OutpintestapplyDetailsDto> details = dto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setCardId(dto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jysqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�楠�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); + } + // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 + // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 + // TjOrder tjOrder = orderService.getOrderByCardId(cardId); + // if(null !=tjOrder){ + // List<TjOrderDetail> dengJi = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); + // tjSysAsyncService.addCaiYangDengJi(dengJi,!dengJi.isEmpty(),tjOrder, SecurityUtils.getLoginUser().getUser(), null); + // } + }else { + throw new RuntimeException(); + } + } + } + } + } + + //闂ㄨ瘖妫�鏌ョ敵璇� + // List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); + List<TjProject> projects = projectService.list(wq); + List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); + if (!proIds.isEmpty()) { + QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); + wrapper4.select("sum(sl) as sl", "pro_id" + , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" + , "pro_price"); + wrapper4.in("pro_parent_id", proIds); + wrapper4.groupBy("his_xmbm"); + projects = projectService.list(wrapper4); + if (null != projects && !projects.isEmpty()) { + List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); + for (TjProject project : projects) { + if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); + detailsDto.setMxfyxmbm(project.getHisXmbm()); + detailsDto.setSfzhfy("0"); + detailsDto.setSl(project.getSl()); + detailsDto.setProjg(project.getProPrice()); + detailsDtoss.add(detailsDto); + } + } + } + List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> i.getProId().equals(project.getProId())).forEach(i -> { + outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); detilsDto.setYpbm(i.getYpbm()); detilsDto.setPcbm(i.getPcbm()); @@ -2599,410 +2739,308 @@ outpinmedicapplyDetilsDtos.add(detilsDto); }); } - } - if (!detailsDtos.isEmpty()) { - dto.setDetails(detailsDtos); - AjaxResult ajaxResult1 = controller.Outpintestapply(dto); - String result5 = getAjaxResult(ajaxResult1); - JSONObject object3 = getJSONObject(result5); - String code3 = object3.getStr("ResultCode"); - if (code3.equals("0")) { - List<OutpintestapplyDetailsDto> details = dto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setCardId(dto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jysqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�楠�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + if (!detailsDtoss.isEmpty()) { + OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); + outpinexamapplyDto.setHisRegistrationId(cardId); + outpinexamapplyDto.setSfzh(customer.getCusIdcard()); + outpinexamapplyDto.setSqysbm(ysbm); + outpinexamapplyDto.setMzksbm(dept); + outpinexamapplyDto.setCzybm(ysbm); + outpinexamapplyDto.setCzyksbm(dept); + outpinexamapplyDto.setSfjz("0"); + outpinexamapplyDto.setDetails(detailsDtoss); + AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); + String result6 = getAjaxResult(ajaxResult2); + JSONObject object5 = getJSONObject(result6); + String code4 = object5.getStr("ResultCode"); + if (code4.equals("0")) { + List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); + for (OutpintestapplyDetailsDto detail : details) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = object5.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("jcsqdh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("妫�鏌�"); + tree.setService("his"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + }else { + throw new RuntimeException(); + } - // TODO 涓汉浠ュ強鍥綋 鏆備笉鍚戦噰鏍风鐞嗗啓鏁版嵁 - // HIS鍙戦�佹棤娉曞悎骞舵搷浣� 鏃犳硶鑾峰彇LIS鐨勬楠屽簭鍙� 鏉$爜鏃犳硶鎵撳嵃 -// TjOrder tjOrder = orderService.getOrderByCardId(cardId); -// if(null !=tjOrder){ -// List<TjOrderDetail> dengJi = tjOrderDetailService.getCaiYangDengJi(tjOrder.getOrderId()); -// tjSysAsyncService.addCaiYangDengJi(dengJi,!dengJi.isEmpty(),tjOrder, SecurityUtils.getLoginUser().getUser(), null); -// } } } } } - } - //闂ㄨ瘖妫�鏌ョ敵璇� -// List<TbTransition> detailLists = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getJcDeptIds()); - List<TjProject> projects = projectService.list(wq); - List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); - if (!proIds.isEmpty()) { - QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); - wrapper4.select("sum(sl) as sl", "pro_id" - , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" - , "pro_price"); - wrapper4.in("pro_parent_id", proIds); - wrapper4.groupBy("his_xmbm"); - projects = projectService.list(wrapper4); - if (null != projects && !projects.isEmpty()) { - List<OutpintestapplyDetailsDto> detailsDtoss = new ArrayList<>(); - for (TjProject project : projects) { - if (project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { + //闂ㄨ瘖娌荤枟澶勭疆鐢宠 + OutpintreatapplyDto dao = new OutpintreatapplyDto(); + dao.setHisRegistrationId(cardId); + dao.setSfzh(customer.getCusIdcard()); + dao.setSqysbm(ysbm); + dao.setMzksbm(dept); + dao.setSjrq(date); + dao.setCzybm(ysbm); + dao.setCzyksbm(dept); + dao.setSfjz("0"); + // List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); + if (null != detailList && !detailList.isEmpty()) { + LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); + wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); + wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); + List<TjProject> projects = projectService.list(wq); + List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); + if (!proIds.isEmpty()) { + QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); + wrapper4.select("sum(sl) as sl", "pro_id" + , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" + , "pro_price"); + wrapper4.in("pro_parent_id", proIds); + wrapper4.groupBy("his_xmbm"); + projects = projectService.list(wrapper4); + if (null != projects && !projects.isEmpty()) { + List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); + for (TjProject project : projects) { if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); detailsDto.setMxfyxmbm(project.getHisXmbm()); detailsDto.setSfzhfy("0"); detailsDto.setSl(project.getSl()); detailsDto.setProjg(project.getProPrice()); - detailsDtoss.add(detailsDto); + detailDtos.add(detailsDto); } } - } - List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - detilsDto.setCflx(i.getCflx()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - if (!detailsDtoss.isEmpty()) { - OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); - outpinexamapplyDto.setHisRegistrationId(cardId); - outpinexamapplyDto.setSfzh(customer.getCusIdcard()); - outpinexamapplyDto.setSqysbm(ysbm); - outpinexamapplyDto.setMzksbm(dept); - outpinexamapplyDto.setCzybm(ysbm); - outpinexamapplyDto.setCzyksbm(dept); - outpinexamapplyDto.setSfjz("0"); - outpinexamapplyDto.setDetails(detailsDtoss); - AjaxResult ajaxResult2 = controller.Outpinexamapply(outpinexamapplyDto); - String result6 = getAjaxResult(ajaxResult2); - JSONObject object5 = getJSONObject(result6); - String code4 = object5.getStr("ResultCode"); - if (code4.equals("0")) { - List<OutpintestapplyDetailsDto> details = outpinexamapplyDto.getDetails(); - for (OutpintestapplyDetailsDto detail : details) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(outpinexamapplyDto.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = object5.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("jcsqdh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("妫�鏌�"); - tree.setService("his"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); + List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); + if (!outpinmedicXms.isEmpty()) { + outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { + OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); + detilsDto.setYpbm(i.getYpbm()); + detilsDto.setPcbm(i.getPcbm()); + detilsDto.setSl(i.getSl()); + detilsDto.setDj(i.getDj()); + detilsDto.setDcjl(i.getDcjl()); + detilsDto.setPj(i.getPj()); + detilsDto.setJj(i.getJj()); + detilsDto.setJldw(""); + detilsDto.setTjbm(""); + detilsDto.setPs(""); + detilsDto.setPsbm(""); + detilsDto.setYyts(""); + detilsDto.setXtph(""); + detilsDto.setScph(""); + detilsDto.setYpxq(""); + detilsDto.setCdbm(""); + detilsDto.setKfdw(""); + detilsDto.setYfdw(""); + detilsDto.setYysm(""); + detilsDto.setYpmc(i.getYpmc()); + detilsDto.setFzbl(i.getFzbl()); + detilsDto.setZh(i.getZh()); + detilsDto.setCflx(i.getCflx()); + outpinmedicapplyDetilsDtos.add(detilsDto); + }); + } + if (!detailDtos.isEmpty()) { + dao.setDetails(detailDtos); + AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); + String mzylyzsq2 = getAjaxResult(mzylyzsq1); + JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); + String code5 = mzylyzsq3.getStr("ResultCode"); + if (code5.equals("0")) { + List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); + for (OutpintestapplyDetailsDto detail : details1) { + LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); + tree.setJxbz(jxbz); + tree.setCardId(dao.getHisRegistrationId()); + tree.setPationid(customer.getPationId()); + JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); + tree.setSqdh(resultData.getStr("zlczh")); + tree.setFyhj(resultData.getStr("fyhj")); + String mxfyxmbm = detail.getMxfyxmbm(); + tree.setHisXmdm(mxfyxmbm); + tree.setType("澶勭疆"); + tree.setTjPrice(String.valueOf(detail.getProjg())); + LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); + if (detail.getSfzhfy().equals("1")) + wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); + else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); + List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); + if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { + String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); + LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); + wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); + LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); + LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); + wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); + LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); + tree.setXmfl(ejjfxmzd.getYjkmdm()); + } + tree.setCreateTime(DateUtil.date()); + ltkjJianchajianyanTreeService.save(tree); } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); + }else { + throw new RuntimeException(); } } } } } - } - //闂ㄨ瘖娌荤枟澶勭疆鐢宠 - OutpintreatapplyDto dao = new OutpintreatapplyDto(); - dao.setHisRegistrationId(cardId); - dao.setSfzh(customer.getCusIdcard()); - dao.setSqysbm(ysbm); - dao.setMzksbm(dept); - dao.setSjrq(date); - dao.setCzybm(ysbm); - dao.setCzyksbm(dept); - dao.setSfjz("0"); -// List<TbTransition> details = tbTransitionService.getTbTransitionListByCusId(customer.getCusIdcard(),cardId); - if (null != detailList && !detailList.isEmpty()) { - LambdaQueryWrapper<TjProject> wq = new LambdaQueryWrapper<>(); - wq.in(TjProject::getProId, detailList.stream().map(TbTransition::getParentProId).collect(Collectors.toList())); - wq.in(TjProject::getDeptId, deptService.getCzDeptIds()); - List<TjProject> projects = projectService.list(wq); - List<Long> proIds = projects.stream().map(TjProject::getProId).collect(Collectors.toList()); - if (!proIds.isEmpty()) { - QueryWrapper<TjProject> wrapper4 = new QueryWrapper<>(); - wrapper4.select("sum(sl) as sl", "pro_id" - , "pro_parent_id", "pro_name", "his_xmbm", "his_xmmc" - , "pro_price"); - wrapper4.in("pro_parent_id", proIds); - wrapper4.groupBy("his_xmbm"); - projects = projectService.list(wrapper4); - if (null != projects && !projects.isEmpty()) { - List<OutpintestapplyDetailsDto> detailDtos = new ArrayList<>(); - for (TjProject project : projects) { - if (StrUtil.isNotBlank(project.getHisXmbm()) && project.getProPrice().compareTo(BigDecimal.ZERO) != 0) { - OutpintestapplyDetailsDto detailsDto = new OutpintestapplyDetailsDto(); - detailsDto.setMxfyxmbm(project.getHisXmbm()); - detailsDto.setSfzhfy("0"); - detailsDto.setSl(project.getSl()); - detailsDto.setProjg(project.getProPrice()); - detailDtos.add(detailsDto); + //鑽搧鐢宠 鍘熺増 + // if(!outpinmedicapplyDetilsDtos.isEmpty()){ + // OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); + // dto1.setHisRegistrationId(cardId); + // dto1.setSfzh(customer.getCusIdcard()); + // dto1.setSqysbm(ysbm); + // dto1.setMzksbm(dept); + // dto1.setSjrq(date); + // String yfbm = configService.selectConfigByKey("chufang_yfbm"); + // String mzzd = configService.selectConfigByKey("chufang_mzzd"); + // String czybm = configService.selectConfigByKey("chufang_czybm"); + // String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); + // String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); + // if (czybm.equalsIgnoreCase("N")) + // dto1.setCzybm(ysbm); + // else dto1.setCzybm(czybm); + // if (czyksbm.equalsIgnoreCase("N")) + // dto1.setCzyksbm(dept); + // else dto1.setCzyksbm(dept); + // dto1.setCflxbm(cflxbm); + // if (yfbm.equalsIgnoreCase("N")) + // dto1.setYfbm("1"); + // else dto1.setYfbm(yfbm); + // dto1.setFyts("1"); + // if (mzzd.equalsIgnoreCase("N")) + // dto1.setMzzd(""); + // else dto1.setMzzd(mzzd); + // dto1.setDetails(outpinmedicapplyDetilsDtos); + // AjaxResult result = controller.Outpinmedicapply(dto1); + // String result1 = getAjaxResult(result); + // JSONObject object = getJSONObject(result1); + // String code = object.getStr("ResultCode"); + // if(null !=code && code.equals("0")){ + // JSONObject resultData = object.getJSONObject("ResultData"); + //// Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); + // String cfh = resultData.getStr("cfh"); + // log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: "+cfh+" outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: "+outpinmedicapplyDetilsDtos.toString()); + // for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { + // TjCf cf=new TjCf(); + // cf.setJxbz(jxbz); + // cf.setCardId(cardId); + // cf.setSfzh(customer.getCusIdcard()); + // cf.setCfh(cfh); + // cf.setSqysbm(ysbm); + // cf.setSqysxm(ysmc); + // cf.setMzksbn(dept); + // cf.setSqrq(date); + // cf.setCzybm(ysbm); + // cf.setYpbm(detilsDto.getYpbm()); + // cf.setYpmc(detilsDto.getYpmc()); + // cf.setSl(String.valueOf(detilsDto.getSl())); + // cf.setDj(String.valueOf(detilsDto.getDj())); + // cf.setDcjl(String.valueOf(detilsDto.getDcjl())); + // cf.setPj(String.valueOf(detilsDto.getPj())); + // cf.setJj(String.valueOf(detilsDto.getJj())); + // cf.setCreateTime(new Date()); + // cfService.save(cf); + // } + // } + // } + + + /** + * 鑽搧鐢宠 澶勬柟绫诲瀷缁存姢鍦ㄨ嵂鍝佽〃 + */ + if (!outpinmedicapplyDetilsDtos.isEmpty()) { + String yfbm = configService.selectConfigByKey("chufang_yfbm"); + String mzzd = configService.selectConfigByKey("chufang_mzzd"); + String czybm = configService.selectConfigByKey("chufang_czybm"); + String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); + // String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); + Map<String, List<OutpinmedicapplyDetilsDto>> listMap = outpinmedicapplyDetilsDtos.stream().collect(Collectors.groupingBy(OutpinmedicapplyDetilsDto::getCflx)); + listMap.forEach((cflx, details) -> { + OutpinmedicapplyDto dto1 = new OutpinmedicapplyDto(); + dto1.setHisRegistrationId(cardId); + dto1.setSfzh(customer.getCusIdcard()); + dto1.setSqysbm(ysbm); + dto1.setMzksbm(dept); + dto1.setSjrq(date); + if (czybm.equalsIgnoreCase("N")) + dto1.setCzybm(ysbm); + else dto1.setCzybm(czybm); + if (czyksbm.equalsIgnoreCase("N")) + dto1.setCzyksbm(dept); + else dto1.setCzyksbm(czyksbm); + dto1.setCflxbm(cflx); + if (yfbm.equalsIgnoreCase("N")) + dto1.setYfbm("1"); + else dto1.setYfbm(yfbm); + dto1.setFyts("1"); + if (mzzd.equalsIgnoreCase("N")) + dto1.setMzzd(""); + else dto1.setMzzd(mzzd); + dto1.setDetails(details); + AjaxResult result = controller.Outpinmedicapply(dto1); + String result1 = getAjaxResult(result); + JSONObject object = getJSONObject(result1); + String code = object.getStr("ResultCode"); + if (null != code && code.equals("0")) { + JSONObject resultData = object.getJSONObject("ResultData"); + String cfh = resultData.getStr("cfh"); + log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: " + cfh + " outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: " + outpinmedicapplyDetilsDtos.toString()); + for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { + TjCf cf = new TjCf(); + cf.setCardId(cardId); + cf.setSfzh(customer.getCusIdcard()); + cf.setCfh(cfh); + cf.setSqysbm(ysbm); + cf.setSqysxm(ysmc); + cf.setMzksbn(dept); + cf.setSqrq(date); + cf.setCzybm(ysbm); + cf.setYpbm(detilsDto.getYpbm()); + cf.setYpmc(detilsDto.getYpmc()); + cf.setSl(String.valueOf(detilsDto.getSl())); + cf.setDj(String.valueOf(detilsDto.getDj())); + cf.setDcjl(String.valueOf(detilsDto.getDcjl())); + cf.setPj(String.valueOf(detilsDto.getPj())); + cf.setJj(String.valueOf(detilsDto.getJj())); + cf.setCreateTime(new Date()); + cfService.save(cf); } + }else { + throw new RuntimeException(); } - List<Long> proParentIds = projects.stream().map(TjProject::getProParentId).distinct().collect(Collectors.toList()); - if (!outpinmedicXms.isEmpty()) { - outpinmedicXms.stream().filter(i -> proParentIds.contains(i.getProId())).forEach(i -> { - OutpinmedicapplyDetilsDto detilsDto = new OutpinmedicapplyDetilsDto(); - detilsDto.setYpbm(i.getYpbm()); - detilsDto.setPcbm(i.getPcbm()); - detilsDto.setSl(i.getSl()); - detilsDto.setDj(i.getDj()); - detilsDto.setDcjl(i.getDcjl()); - detilsDto.setPj(i.getPj()); - detilsDto.setJj(i.getJj()); - detilsDto.setJldw(""); - detilsDto.setTjbm(""); - detilsDto.setPs(""); - detilsDto.setPsbm(""); - detilsDto.setYyts(""); - detilsDto.setXtph(""); - detilsDto.setScph(""); - detilsDto.setYpxq(""); - detilsDto.setCdbm(""); - detilsDto.setKfdw(""); - detilsDto.setYfdw(""); - detilsDto.setYysm(""); - detilsDto.setYpmc(i.getYpmc()); - detilsDto.setFzbl(i.getFzbl()); - detilsDto.setZh(i.getZh()); - detilsDto.setCflx(i.getCflx()); - outpinmedicapplyDetilsDtos.add(detilsDto); - }); - } - if (!detailDtos.isEmpty()) { - dao.setDetails(detailDtos); - AjaxResult mzylyzsq1 = controller.Outpintreatapply(dao); - String mzylyzsq2 = getAjaxResult(mzylyzsq1); - JSONObject mzylyzsq3 = getJSONObject(mzylyzsq2); - String code5 = mzylyzsq3.getStr("ResultCode"); - if (code5.equals("0")) { - List<OutpintestapplyDetailsDto> details1 = dao.getDetails(); - for (OutpintestapplyDetailsDto detail : details1) { - LtkjJianchajianyanTree tree = new LtkjJianchajianyanTree(); - tree.setJxbz(jxbz); - tree.setCardId(dao.getHisRegistrationId()); - tree.setPationid(customer.getPationId()); - JSONObject resultData = mzylyzsq3.getJSONObject("ResultData"); - tree.setSqdh(resultData.getStr("zlczh")); - tree.setFyhj(resultData.getStr("fyhj")); - String mxfyxmbm = detail.getMxfyxmbm(); - tree.setHisXmdm(mxfyxmbm); - tree.setType("澶勭疆"); - tree.setTjPrice(String.valueOf(detail.getProjg())); - LambdaQueryWrapper<LtkjJfzhglmxjfxmzd> wrapper1 = new LambdaQueryWrapper<>(); - if (detail.getSfzhfy().equals("1")) - wrapper1.eq(LtkjJfzhglmxjfxmzd::getZhxmdm, mxfyxmbm); - else wrapper1.eq(LtkjJfzhglmxjfxmzd::getXmdm, mxfyxmbm); - List<LtkjJfzhglmxjfxmzd> ltkjJfzhglmxjfxmzds = ltkjJfzhglmxjfxmzdService.list(wrapper1); - if (ltkjJfzhglmxjfxmzds != null && !ltkjJfzhglmxjfxmzds.isEmpty()) { - String xmdm = ltkjJfzhglmxjfxmzds.get(0).getXmdm(); - LambdaQueryWrapper<LtkjMxjfxmzd> wrapper2 = new LambdaQueryWrapper<>(); - wrapper2.eq(LtkjMxjfxmzd::getXmdm, xmdm); - LtkjMxjfxmzd mxjfxmzd = ltkjMxjfxmzdService.getOne(wrapper2); - LambdaQueryWrapper<LtkjEjjfxmzd> wrapper3 = new LambdaQueryWrapper<>(); - wrapper3.eq(LtkjEjjfxmzd::getEjkmdm, mxjfxmzd.getEjkmdm()); - LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); - tree.setXmfl(ejjfxmzd.getYjkmdm()); - } - tree.setCreateTime(DateUtil.date()); - ltkjJianchajianyanTreeService.save(tree); - } - } - } - } + }); } - } - - //鑽搧鐢宠 鍘熺増 -// if(!outpinmedicapplyDetilsDtos.isEmpty()){ -// OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); -// dto1.setHisRegistrationId(cardId); -// dto1.setSfzh(customer.getCusIdcard()); -// dto1.setSqysbm(ysbm); -// dto1.setMzksbm(dept); -// dto1.setSjrq(date); -// String yfbm = configService.selectConfigByKey("chufang_yfbm"); -// String mzzd = configService.selectConfigByKey("chufang_mzzd"); -// String czybm = configService.selectConfigByKey("chufang_czybm"); -// String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); -// String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); -// if (czybm.equalsIgnoreCase("N")) -// dto1.setCzybm(ysbm); -// else dto1.setCzybm(czybm); -// if (czyksbm.equalsIgnoreCase("N")) -// dto1.setCzyksbm(dept); -// else dto1.setCzyksbm(dept); -// dto1.setCflxbm(cflxbm); -// if (yfbm.equalsIgnoreCase("N")) -// dto1.setYfbm("1"); -// else dto1.setYfbm(yfbm); -// dto1.setFyts("1"); -// if (mzzd.equalsIgnoreCase("N")) -// dto1.setMzzd(""); -// else dto1.setMzzd(mzzd); -// dto1.setDetails(outpinmedicapplyDetilsDtos); -// AjaxResult result = controller.Outpinmedicapply(dto1); -// String result1 = getAjaxResult(result); -// JSONObject object = getJSONObject(result1); -// String code = object.getStr("ResultCode"); -// if(null !=code && code.equals("0")){ -// JSONObject resultData = object.getJSONObject("ResultData"); -//// Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); -// String cfh = resultData.getStr("cfh"); -// log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: "+cfh+" outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: "+outpinmedicapplyDetilsDtos.toString()); -// for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { -// TjCf cf=new TjCf(); -// cf.setJxbz(jxbz); -// cf.setCardId(cardId); -// cf.setSfzh(customer.getCusIdcard()); -// cf.setCfh(cfh); -// cf.setSqysbm(ysbm); -// cf.setSqysxm(ysmc); -// cf.setMzksbn(dept); -// cf.setSqrq(date); -// cf.setCzybm(ysbm); -// cf.setYpbm(detilsDto.getYpbm()); -// cf.setYpmc(detilsDto.getYpmc()); -// cf.setSl(String.valueOf(detilsDto.getSl())); -// cf.setDj(String.valueOf(detilsDto.getDj())); -// cf.setDcjl(String.valueOf(detilsDto.getDcjl())); -// cf.setPj(String.valueOf(detilsDto.getPj())); -// cf.setJj(String.valueOf(detilsDto.getJj())); -// cf.setCreateTime(new Date()); -// cfService.save(cf); -// } -// } -// } - - - /** - * 鑽搧鐢宠 澶勬柟绫诲瀷缁存姢鍦ㄨ嵂鍝佽〃 - */ - if (!outpinmedicapplyDetilsDtos.isEmpty()) { - String yfbm = configService.selectConfigByKey("chufang_yfbm"); - String mzzd = configService.selectConfigByKey("chufang_mzzd"); - String czybm = configService.selectConfigByKey("chufang_czybm"); - String czyksbm = configService.selectConfigByKey("chufang_czyksbm"); -// String cflxbm = configService.selectConfigByKey("chufang_cflxbm"); - Map<String, List<OutpinmedicapplyDetilsDto>> listMap = outpinmedicapplyDetilsDtos.stream().collect(Collectors.groupingBy(OutpinmedicapplyDetilsDto::getCflx)); - listMap.forEach((cflx, details) -> { - OutpinmedicapplyDto dto1 = new OutpinmedicapplyDto(); - dto1.setHisRegistrationId(cardId); - dto1.setSfzh(customer.getCusIdcard()); - dto1.setSqysbm(ysbm); - dto1.setMzksbm(dept); - dto1.setSjrq(date); - if (czybm.equalsIgnoreCase("N")) - dto1.setCzybm(ysbm); - else dto1.setCzybm(czybm); - if (czyksbm.equalsIgnoreCase("N")) - dto1.setCzyksbm(dept); - else dto1.setCzyksbm(czyksbm); - dto1.setCflxbm(cflx); - if (yfbm.equalsIgnoreCase("N")) - dto1.setYfbm("1"); - else dto1.setYfbm(yfbm); - dto1.setFyts("1"); - if (mzzd.equalsIgnoreCase("N")) - dto1.setMzzd(""); - else dto1.setMzzd(mzzd); - dto1.setDetails(details); - AjaxResult result = controller.Outpinmedicapply(dto1); - String result1 = getAjaxResult(result); - JSONObject object = getJSONObject(result1); - String code = object.getStr("ResultCode"); - if (null != code && code.equals("0")) { - JSONObject resultData = object.getJSONObject("ResultData"); - String cfh = resultData.getStr("cfh"); - log.info("鑽搧鐢宠鍚庣殑澶勬柟鍙锋槸: " + cfh + " outpinmedicapplyDetilsDtos 閲岄潰鐨勫�间负: " + outpinmedicapplyDetilsDtos.toString()); - for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { - TjCf cf = new TjCf(); - cf.setCardId(cardId); - cf.setSfzh(customer.getCusIdcard()); - cf.setCfh(cfh); - cf.setSqysbm(ysbm); - cf.setSqysxm(ysmc); - cf.setMzksbn(dept); - cf.setSqrq(date); - cf.setCzybm(ysbm); - cf.setYpbm(detilsDto.getYpbm()); - cf.setYpmc(detilsDto.getYpmc()); - cf.setSl(String.valueOf(detilsDto.getSl())); - cf.setDj(String.valueOf(detilsDto.getDj())); - cf.setDcjl(String.valueOf(detilsDto.getDcjl())); - cf.setPj(String.valueOf(detilsDto.getPj())); - cf.setJj(String.valueOf(detilsDto.getJj())); - cf.setCreateTime(new Date()); - cfService.save(cf); - } - } - }); } } + return AjaxResult.success(); + } catch (RuntimeException e) { + throw new RuntimeException(e); } - return AjaxResult.success(); } public void pacsReg(TjOrder order, TjCustomer customer, ArrayList<TjProject> jianChaProjects) { -- Gitblit v1.8.0