| | |
| | | private ISysDeptService deptService; |
| | | @Autowired |
| | | private TjCfService cfService; |
| | | @Resource |
| | | private LtkjHysqdService hysqdService; |
| | | |
| | | @Override |
| | | public void newSaveextracted(TjOrder tjOrder, TjCustomer tjCustomer, BigDecimal discount, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { |
| | |
| | | redisCache.deleteObject(tjCustomer.getCusIdcard() + "cusId"); |
| | | if (null != tbTransitionList && tbTransitionList.size() > 0) { |
| | | |
| | | tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | |
| | | //修改每项的原价现价 |
| | | for (TbTransition transition : tbTransitionList) { |
| | |
| | | public void ttextracted(TjOrder tjOrder, TjCustomer tjCustomer, SysUser sysUser, TjReservation tjReservation, TjFlowingWater tjFlowingWater) { |
| | | |
| | | tjAskMedicalHistoryService.updateTjAskMedicalHistoryByCusId(tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjCustomer.getCusId())); |
| | | boolean b = tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | boolean b = tjOrderDetailService.saveTjOrderDetailsByCusId(tjCustomer.getCusIdcard(), String.valueOf(tjOrder.getOrderId()), sysUser.getNickName(), |
| | | String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | if (!b) { |
| | | List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId())); |
| | | if (null != proList && proList.size() > 0) { |
| | |
| | | transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(), BigDecimal.valueOf(Long.parseLong(tjFlowingWater.getDiscount())), tjOrder.getTjNumber()); |
| | | } |
| | | |
| | | tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId())); |
| | | tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()),tjOrder.getCardId()); |
| | | // List<TjOrderDetail> list = tjOrderDetailService.getTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId())); |
| | | // if (list != null) { |
| | | // for (TjOrderDetail tjOrderDetail : list) { |
| | |
| | | |
| | | @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()); |
| | |
| | | LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); |
| | | tree.setXmfl(ejjfxmzd.getYjkmdm()); |
| | | } |
| | | tree.setCreateTime(dates); |
| | | ltkjJianchajianyanTreeService.save(tree); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | //门诊检查申请 |
| | | if(detailsDtoss.size()>0){ |
| | | if(!detailsDtoss.isEmpty()){ |
| | | OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto(); |
| | | outpinexamapplyDto.setHisRegistrationId(order.getCardId()); |
| | | outpinexamapplyDto.setSfzh(customer.getCusIdcard()); |
| | |
| | | LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); |
| | | tree.setXmfl(ejjfxmzd.getYjkmdm()); |
| | | } |
| | | tree.setCreateTime(dates); |
| | | ltkjJianchajianyanTreeService.save(tree); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //药品申请 |
| | | if(outpinmedicapplyDetilsDtos.size()>0){ |
| | | if(!outpinmedicapplyDetilsDtos.isEmpty()){ |
| | | OutpinmedicapplyDto dto1=new OutpinmedicapplyDto(); |
| | | dto1.setHisRegistrationId(order.getCardId()); |
| | | dto1.setSfzh(customer.getCusIdcard()); |
| | |
| | | String result1 = getAjaxResult(result); |
| | | JSONObject object = getJSONObject(result1); |
| | | String code = object.getStr("ResultCode"); |
| | | if(null !=code && code.equals("200")){ |
| | | JSONArray resultData = object.getJSONArray("ResultData"); |
| | | Map<String, Object> resultDatasss = (Map<String, Object>) resultData.get(0); |
| | | String cfh = resultDatasss.get("cfh").toString(); |
| | | 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"); |
| | | |
| | | for (OutpinmedicapplyDetilsDto detilsDto : outpinmedicapplyDetilsDtos) { |
| | | TjCf cf=new TjCf(); |
| | |
| | | cf.setPj(String.valueOf(detilsDto.getPj())); |
| | | cf.setJj(String.valueOf(detilsDto.getJj())); |
| | | cf.setCreateTime(new Date()); |
| | | cf.setJxbz(jxbz); |
| | | cfService.save(cf); |
| | | } |
| | | } |
| | | } |
| | | |
| | | //门诊治疗处置申请 |
| | | if(detailDtos.size()>0){ |
| | | if(!detailDtos.isEmpty()){ |
| | | OutpintreatapplyDto dao = new OutpintreatapplyDto(); |
| | | dao.setHisRegistrationId(order.getCardId()); |
| | | dao.setSfzh(customer.getCusIdcard()); |
| | |
| | | LtkjEjjfxmzd ejjfxmzd = ltkjEjjfxmzdService.getOne(wrapper3); |
| | | tree.setXmfl(ejjfxmzd.getYjkmdm()); |
| | | } |
| | | tree.setCreateTime(dates); |
| | | ltkjJianchajianyanTreeService.save(tree); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | //父项耗材 |
| | | // ArrayList<TjConsumables> collect = list2.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TjConsumables::getId))), ArrayList::new)); |
| | |
| | | private AjaxResult getPieCharts() { |
| | | Map<String, Object> map = new HashMap<>(); |
| | | |
| | | Date date=new Date(); |
| | | |
| | | //获取体检登记数 |
| | | LambdaQueryWrapper<TjOrder> wq0 = new LambdaQueryWrapper<>(); |
| | | wq0.between(TjOrder::getCreateTime, DateUtil.lastMonth(), DateUtil.now()); |
| | | wq0.between(TjOrder::getCreateTime,DateUtil.offsetMonth(date,-1),date); |
| | | List<TjOrder> orderCountList = orderService.list(wq0); |
| | | if (null != orderCountList && orderCountList.size() > 0) { |
| | | if (null != orderCountList && !orderCountList.isEmpty()) { |
| | | List<PieChartVo> pieChartVoList = getTjorderCountMap(orderCountList); |
| | | map.put("tjdj", pieChartVoList); |
| | | } else { |
| | |
| | | } |
| | | //获取体检异常数 |
| | | LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>(); |
| | | wq1.between(TjOrder::getFinishTime, DateUtil.lastMonth(), DateUtil.now()); |
| | | wq1.eq(TjOrder::getCheckStatus, 1); |
| | | List<TjOrder> orderAbnormalCountList = orderService.list(wq1); |
| | | if (null != orderAbnormalCountList && orderAbnormalCountList.size() > 0) { |
| | | List<PieChartVo> pieChartVoList = getTjorderAbnormalCountMap(orderAbnormalCountList); |
| | | wq1.between(TjOrder::getCreateTime,DateUtil.offsetMonth(date,-1),date); |
| | | // wq1.isNotNull(TjOrder::getFinishTime); |
| | | // wq1.eq(TjOrder::getCheckStatus, 1); |
| | | List<TjOrder> orderList = orderService.list(wq1); |
| | | if (null !=orderList && !orderList.isEmpty()) { |
| | | // List<TjOrder> orderList = orderAbnormalCountList.stream().distinct().collect(Collectors.toList()); |
| | | List<PieChartVo> pieChartVoList = getTjorderAbnormalCountMap(orderList); |
| | | map.put("tjyc", pieChartVoList); |
| | | } else { |
| | | map.put("tjyc", 0); |
| | |
| | | int c = 0; |
| | | int d = 0; |
| | | int e = 0; |
| | | Map<String, Object> map = null; |
| | | Map<String, Object> map = new HashMap<>(); |
| | | for (TjOrder tjOrder : orderList) { |
| | | map = new HashMap<>(); |
| | | LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>(); |
| | | wq.eq(TjOrderDetail::getOrderId, tjOrder.getOrderId()); |
| | | wq.eq(TjOrderDetail::getExceptionDesc, 1); |
| | | List<TjOrderDetail> list = tjOrderDetailService.list(wq); |
| | | if (null != list && list.size() > 0) { |
| | | int count = hysqdService.getHyYcXmCount(tjOrder.getCardId()); |
| | | if ((null != list && !list.isEmpty()) || (count>0)) { |
| | | TjCustomer customer = tjCustomerService.getById(tjOrder.getUserId()); |
| | | if (null != customer) { |
| | | int age = DateUtil.ageOfNow(customer.getCusBrithday()); |
| | |
| | | e += 1; |
| | | } |
| | | } |
| | | map.put("0-3岁", a); |
| | | map.put("3-16岁", b); |
| | | map.put("16-40岁", c); |
| | | map.put("40-60岁", d); |
| | | map.put("60岁以上", e); |
| | | } |
| | | } |
| | | map.put("0-3岁", a); |
| | | map.put("3-16岁", b); |
| | | map.put("16-40岁", c); |
| | | map.put("40-60岁", d); |
| | | map.put("60岁以上", e); |
| | | List<PieChartVo> pieChartVoList = new ArrayList<>(); |
| | | assert map != null; |
| | | for (Map.Entry<String, Object> entry : map.entrySet()) { |
| | | PieChartVo pieChartVo = new PieChartVo(); |
| | | pieChartVo.setName(entry.getKey()); |