zjh
2024-09-11 3844954e02e67611fd57dafa236ee2c20e258b78
ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
@@ -503,7 +503,7 @@
    @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");
@@ -522,7 +522,6 @@
        proBl.setBlje(String.valueOf(tjFlowingWater.getPaidIn()));
        blService.save(proBl);
        List<TjConsumables> list2 = new ArrayList<>();
        String[] tjProIds = tjFlowingWater.getTjProIds();
        String config = configService.selectConfigByKey("sfkqdyhis");
@@ -542,8 +541,9 @@
        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();
@@ -591,7 +591,7 @@
                    detail1.setJxbz(jxbz);
                    tjOrderDetailService.save(detail1);
                }
                wqq.in(TbTransition::getProId, proIds);
//                wqq.in(TbTransition::getProId, proIds);
                if(null !=config && config.equals("Y")){
                //检验
@@ -729,7 +729,7 @@
            } 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());
@@ -737,11 +737,9 @@
                        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());
@@ -755,64 +753,23 @@
            }
            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();
@@ -832,7 +789,6 @@
                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());
@@ -982,10 +938,8 @@
        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());
@@ -1048,7 +1002,7 @@
            }
            //门诊检查申请
            if(detailsDtoss.size()>0){
            if(!detailsDtoss.isEmpty()){
                OutpinexamapplyDto outpinexamapplyDto = new OutpinexamapplyDto();
                outpinexamapplyDto.setHisRegistrationId(order.getCardId());
                outpinexamapplyDto.setSfzh(customer.getCusIdcard());
@@ -1109,7 +1063,7 @@
            }
            //药品申请
            if(outpinmedicapplyDetilsDtos.size()>0){
            if(!outpinmedicapplyDetilsDtos.isEmpty()){
                OutpinmedicapplyDto dto1=new OutpinmedicapplyDto();
                dto1.setHisRegistrationId(order.getCardId());
                dto1.setSfzh(customer.getCusIdcard());
@@ -1157,7 +1111,7 @@
            }
            //门诊治疗处置申请
            if(detailDtos.size()>0){
            if(!detailDtos.isEmpty()){
                OutpintreatapplyDto dao = new OutpintreatapplyDto();
                dao.setHisRegistrationId(order.getCardId());
                dao.setSfzh(customer.getCusIdcard());
@@ -1218,7 +1172,6 @@
                }
            }
        }
        //父项耗材
//        ArrayList<TjConsumables> collect = list2.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TjConsumables::getId))), ArrayList::new));