| | |
| | | |
| | | @Override |
| | | @Async("async") |
| | | @Transactional |
| | | // @Transactional |
| | | public void iundividualCharges(TjFlowingWater tjFlowingWater, TjOrder order, TjCustomer customer, SysUser sysUser) { |
| | | Date dates = new Date(); |
| | | final String date = DateUtil.format(dates, "yyyy-MM-dd HH:mm:ss"); |
| | |
| | | proBl.setBlje(String.valueOf(tjFlowingWater.getPaidIn())); |
| | | blService.save(proBl); |
| | | |
| | | List<TjConsumables> list2 = new ArrayList<>(); |
| | | String[] tjProIds = tjFlowingWater.getTjProIds(); |
| | | |
| | | String config = configService.selectConfigByKey("sfkqdyhis"); |
| | |
| | | List<TjProject> projectList=new ArrayList<>(); |
| | | |
| | | for (String tjProId : tjProIds) { |
| | | LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); |
| | | wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); |
| | | // LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>(); |
| | | // wqq.eq(TbTransition::getCusId, customer.getCusIdcard()); |
| | | // wqq.isNull(TbTransition::getTjNum); |
| | | TjProject project = projectService.getById(Long.valueOf(tjProId)); |
| | | if (null != project && project.getProParentId() == 0) { |
| | | TjOrderRemark tjOrderRemark = new TjOrderRemark(); |
| | |
| | | detail1.setJxbz(jxbz); |
| | | tjOrderDetailService.save(detail1); |
| | | } |
| | | wqq.in(TbTransition::getProId, proIds); |
| | | // wqq.in(TbTransition::getProId, proIds); |
| | | |
| | | if(null !=config && config.equals("Y")){ |
| | | //检验 |
| | |
| | | |
| | | |
| | | } else { |
| | | wqq.in(TbTransition::getProId, Arrays.asList(tjProIds)); |
| | | // wqq.in(TbTransition::getProId, Arrays.asList(tjProIds)); |
| | | TjProject projects = projectService.selectTjProjectByProId(Long.valueOf(tjProId)); |
| | | if (null != projects) { |
| | | TjProject projectss = projectService.getById(projects.getProParentId()); |
| | |
| | | projectList.add(projectss); |
| | | } |
| | | } |
| | | // 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()); |
| | |
| | | |
| | | } |
| | | |
| | | List<TbTransition> tbTransitionList = transitionService.list(wqq); |
| | | if (null != tbTransitionList && tbTransitionList.size() > 0) { |
| | | // List<TbTransition> tbTransitionList = transitionService.list(wqq); |
| | | List<TbTransition> tbTransitionList = transitionService.getTbTransitionListByCusIdAndPacIdAndProId(customer.getCusIdcard(),tjProId); |
| | | if (null != tbTransitionList && !tbTransitionList.isEmpty()) { |
| | | for (TbTransition transition : tbTransitionList) { |
| | | transition.setJxbz(jxbz); |
| | | transition.setTjNum(order.getTjNumber()); |
| | | transition.setCardId(order.getCardId()); |
| | | transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); |
| | | transitionService.updateById(transition); |
| | | // TjProject tjProject = projectService.selectTjProjectByProId(transition.getProId()); |
| | | //子项 |
| | | // if (null != tjProject) { |
| | | // TjChargingStandard tjChargingStandard = new TjChargingStandard(); |
| | | // tjChargingStandard.setTjNum(order.getTjNumber()); |
| | | // tjChargingStandard.setProId(transition.getProId()); |
| | | // tjChargingStandard.setPrice(transition.getNowPrice()); |
| | | // tjChargingStandard.setProName(tjProject.getProName()); |
| | | // tjChargingStandard.setCreateBy(sysUser.getNickName()); |
| | | // tjChargingStandard.setCreateTime(dates); |
| | | // tjChargingStandard.setUpdateBy(sysUser.getNickName()); |
| | | // tjChargingStandard.setUpdateTime(dates); |
| | | // tjChargingStandard.setCreateId(String.valueOf(sysUser.getUserId())); |
| | | // tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId())); |
| | | // chargingStandardService.save(tjChargingStandard); |
| | | // } |
| | | // transition.setJxbz(jxbz); |
| | | // transition.setTjNum(order.getTjNumber()); |
| | | // transition.setCardId(order.getCardId()); |
| | | // transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); |
| | | // transitionService.updateById(transition); |
| | | transitionService.updateTbTransitionById(transition.getId().toString(),jxbz,order.getTjNumber(),order.getCardId(), |
| | | transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(tjFlowingWater.getDiscount())).divide(BigDecimal.valueOf(10)))); |
| | | } |
| | | //父项 |
| | | // |
| | | // TjProject parentProject = projectService.selectTjProjectByProId(Long.valueOf(tjProId)); |
| | | // if (null != parentProject && parentProject.getProParentId() == 0) { |
| | | // LambdaQueryWrapper<TjProConsumables> wqqq = new LambdaQueryWrapper<>(); |
| | | // wqqq.eq(TjProConsumables::getProId, parentProject.getProId()); |
| | | // List<TjProConsumables> proConsumables = proConsumablesService.list(wqqq); |
| | | // if (null != proConsumables && proConsumables.size() > 0) { |
| | | // for (TjProConsumables tjProConsumables : proConsumables) { |
| | | // TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId()); |
| | | // list2.add(tjConsumables); |
| | | // } |
| | | // } |
| | | // |
| | | // } else { |
| | | // TjProject parentProjects = projectService.getById(tjProId); |
| | | // if (null != parentProjects) { |
| | | // LambdaQueryWrapper<TjProConsumables> wqqq = new LambdaQueryWrapper<>(); |
| | | // wqqq.eq(TjProConsumables::getProId, parentProjects.getProId()); |
| | | // List<TjProConsumables> proConsumables = proConsumablesService.list(wqqq); |
| | | // if (null != proConsumables && proConsumables.size() > 0) { |
| | | // for (TjProConsumables tjProConsumables : proConsumables) { |
| | | // TjConsumables tjConsumables = consumablesService.selectTjConsumablesById(tjProConsumables.getConsumablesId()); |
| | | // list2.add(tjConsumables); |
| | | // } |
| | | // } |
| | | // } |
| | | // } |
| | | } |
| | | |
| | | } |
| | | |
| | | if(projectList.size()>0){ |
| | | if(!projectList.isEmpty()){ |
| | | List<TjProject> list = projectList.stream().distinct().collect(Collectors.toList()); |
| | | for (TjProject project : list) { |
| | | TjOrderRemark tjOrderRemark = new TjOrderRemark(); |
| | |
| | | TjOrderDetail detail1 = new TjOrderDetail(); |
| | | detail1.setTjStatus(0L); |
| | | detail1.setOrderId(tjFlowingWater.getOrderId()); |
| | | // detail1.setFlowingWaterId(String.valueOf(tjFlowingWater.getTjSerialNumber())); |
| | | detail1.setProId(project.getProId()); |
| | | detail1.setIsAddition("Y"); |
| | | detail1.setCreateBy(sysUser.getNickName()); |
| | |
| | | |
| | | if(null !=config && config.equals("Y")){ |
| | | |
| | | |
| | | |
| | | //检验申请 |
| | | if(detailsDtos.size()>0){ |
| | | if(!detailsDtos.isEmpty()){ |
| | | OutpintestapplyDto dto = new OutpintestapplyDto(); |
| | | dto.setHisRegistrationId(order.getCardId()); |
| | | dto.setSfzh(customer.getCusIdcard()); |
| | |
| | | } |
| | | |
| | | //门诊检查申请 |
| | | if(detailsDtoss.size()>0){ |
| | | if(!detailsDtoss.isEmpty()){ |
| | | OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); |
| | | outpinexamapplyDto.setHisRegistrationId(order.getCardId()); |
| | | outpinexamapplyDto.setSfzh(customer.getCusIdcard()); |
| | |
| | | } |
| | | |
| | | //药品申请 |
| | | if(outpinmedicapplyDetilsDtos.size()>0){ |
| | | if(!outpinmedicapplyDetilsDtos.isEmpty()){ |
| | | OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); |
| | | dto1.setHisRegistrationId(order.getCardId()); |
| | | dto1.setSfzh(customer.getCusIdcard()); |
| | |
| | | } |
| | | |
| | | //门诊治疗处置申请 |
| | | if(detailDtos.size()>0){ |
| | | if(!detailDtos.isEmpty()){ |
| | | OutpintreatapplyDto dao = new OutpintreatapplyDto(); |
| | | dao.setHisRegistrationId(order.getCardId()); |
| | | dao.setSfzh(customer.getCusIdcard()); |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | //父项耗材 |
| | | // ArrayList<TjConsumables> collect = list2.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TjConsumables::getId))), ArrayList::new)); |