1
lige
2024-03-06 3cc862ededfa98fcd89c7b523f84a1d7d172798f
ltkj-admin/src/main/java/com/ltkj/web/controller/service/TjSysAsyncServiceImpl.java
@@ -176,7 +176,6 @@
    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()));
        if (!b) {
            List<TjGroupingPro> proList = groupingProService.list(new LambdaQueryWrapper<TjGroupingPro>().eq(TjGroupingPro::getGroupingId, tjOrder.getGroupId()));
@@ -239,7 +238,8 @@
            tjOrderDetailService.updateTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()),
                    sysUser.getNickName(), String.valueOf(sysUser.getUserId()), String.valueOf(tjFlowingWater.getTjSerialNumber()));
        }
        transitionService.updateTbTransitionPriceByCusId(tjCustomer.getCusIdcard(),BigDecimal.valueOf(Long.parseLong(tjFlowingWater.getDiscount())), tjOrder.getTjNumber());
        tjOrderDetailService.saveTjPureToneTesByCusId(tjCustomer.getCusIdcard(), tjOrder.getTjNumber(), sysUser.getNickName(), String.valueOf(sysUser.getUserId()));
//        List<TjOrderDetail> list = tjOrderDetailService.getTjOrderDetailsByOrderId(String.valueOf(tjOrder.getOrderId()));
//        if (list != null) {
//            for (TjOrderDetail tjOrderDetail : list) {
@@ -281,8 +281,8 @@
        orderRemarkService.deletedOrderRemarkByTjNum(order.getTjNumber());
        redisCache.deleteObject("getOrderDetailByProParentId" + order.getTjNumber());
        for (TbTransition transition : tbTransitionList) {
            transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(discount)).divide(BigDecimal.valueOf(10))));
            transitionService.updateById(transition);
//            transition.setNowPrice(transition.getOrdPrice().multiply(BigDecimal.valueOf(Double.parseDouble(discount)).divide(BigDecimal.valueOf(10))));
//            transitionService.updateById(transition);
            TjProject tjProject = projectService.selectTjProjectByProId(transition.getProId());
            //子项
            if (null != tjProject) {
@@ -398,16 +398,20 @@
            wq1.eq(TjProject::getProId, tjOrderDetail.getProId());
            TjProject one = projectService.getOne(wq1);
            if (one != null) {
                if (one.getProParentId() != 0) {
//                if (one.getProParentId() != 0) {
                    tjOrderDetail.setTjStatus(2L);
                    tjOrderDetail.setProResult("弃检");
                    tjOrderDetail.setUpdateTime(new DateTime());
                    tjOrderDetailService.updateById(tjOrderDetail);
                } else {
                    tjOrderDetail.setTjStatus(1L);
                    tjOrderDetail.setUpdateTime(new DateTime());
                    tjOrderDetailService.updateById(tjOrderDetail);
                }
//                } else {
//                    tjOrderDetail.setTjStatus(1L);
//                    tjOrderDetail.setUpdateTime(new DateTime());
//                    tjOrderDetailService.updateById(tjOrderDetail);
//                }
//               LambdaQueryWrapper<TjOrderRemark> wq=new LambdaQueryWrapper<>();
//               wq.eq(TjOrderRemark::getTjNumber,tjNumber);
//               wq.eq(TjOrderRemark::getProId,tjOrderDetail.getProId());
               orderRemarkService.updateTjOrderRemark(tjNumber, String.valueOf(tjOrderDetail.getProId()));
                //给弃检表添加记录
                TjDiscardInspection td = new TjDiscardInspection();
                td.setProId(String.valueOf(one.getProId()));
@@ -507,7 +511,9 @@
            }
            LambdaQueryWrapper<TbTransition> wqq = new LambdaQueryWrapper<>();
            wqq.eq(TbTransition::getCusId, customer.getCusIdcard());
            wqq.in(TbTransition::getProId, proIds);
            if ( proIds.size() > 0){
                wqq.in(TbTransition::getProId, proIds);
            }
            List<TbTransition> tbTransitionList = transitionService.list(wqq);
            if (null != tbTransitionList && tbTransitionList.size() > 0) {
                for (TbTransition transition : tbTransitionList) {
@@ -726,6 +732,7 @@
            LambdaQueryWrapper<TjProject> wq1 = new LambdaQueryWrapper<>();
            wq1.eq(TjProject::getProParentId, remark.getProId());
            wq1.eq(TjProject::getNeedReport, "Y");
            List<TjProject> projectList = projectService.list(wq1);
            if (null != projectList && projectList.size() > 0) {
                List<Long> collect = projectList.stream().map(TjProject::getProId).collect(Collectors.toList());
@@ -989,6 +996,104 @@
    @Async("async")
    public void getPieChart() {
        redisCache.setCacheObject("getPieChart", getPieCharts());
    }
    @Override
    public void addTjChargingStandard(TjOrder order, List<TbTransition> tbTransitionList, SysUser sysUser) {
        List<TjConsumables> list2=new ArrayList<>();
        for (TbTransition transition : tbTransitionList) {
            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(new Date());
                tjChargingStandard.setUpdateBy(sysUser.getNickName());
                tjChargingStandard.setUpdateTime(new Date());
                tjChargingStandard.setCreateId(String.valueOf(sysUser.getUserId()));
                tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId()));
                chargingStandardService.save(tjChargingStandard);
            }
        }
        //父项
        ArrayList<TbTransition> collect1 = tbTransitionList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TbTransition::getParentProId))), ArrayList::new));
        List<Long> parentProIds = collect1.stream().map(TbTransition::getParentProId).collect(Collectors.toList());
        if (parentProIds.size() > 0) {
            for (Long parentProId : parentProIds) {
                TjProject parentProject = projectService.selectTjProjectByProId(parentProId);
                if (null != parentProject) {
                    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);
                        }
                    }
                }
            }
        }
        ArrayList<TjConsumables> collect = list2.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(TjConsumables::getId))), ArrayList::new));
        for (TjConsumables tjConsumables : collect) {
            TjChargingStandard tjChargingStandard = new TjChargingStandard();
            tjChargingStandard.setTjNum(order.getTjNumber());
            tjChargingStandard.setConsumablesId(tjConsumables.getId());
            tjChargingStandard.setPrice(tjConsumables.getPrice());
            tjChargingStandard.setProName(tjConsumables.getMakings());
            tjChargingStandard.setConsumablesName(tjConsumables.getMakings());
            tjChargingStandard.setCompany(tjConsumables.getSpecifications());
            tjChargingStandard.setCreateBy(sysUser.getNickName());
            tjChargingStandard.setCreateTime(new Date());
            tjChargingStandard.setUpdateBy(sysUser.getNickName());
            tjChargingStandard.setUpdateTime(new Date());
            tjChargingStandard.setCreateId(String.valueOf(sysUser.getUserId()));
            tjChargingStandard.setUpdateId(String.valueOf(sysUser.getUserId()));
            chargingStandardService.save(tjChargingStandard);
        }
        LambdaQueryWrapper<TjOrderDetail> wq = new LambdaQueryWrapper<>();
        wq.eq(TjOrderDetail::getOrderId, order.getOrderId());
        wq.isNotNull(TjOrderDetail::getFlowingWaterId);
        wq.eq(TjOrderDetail::getIsSampling, 0);
        List<TjOrderDetail> detailList = tjOrderDetailService.list(wq);
        if (null != detailList && detailList.size() > 0) {
            String format = DateUtil.format(new Date(), "yyMMddHHmmssSSS");
            for (TjOrderDetail detail : detailList) {
                TjSampling sampling = new TjSampling();
                if (null == projectService.getById(detail.getProId())) continue;
                Long proParentId = projectService.getById(detail.getProId()).getProParentId();
                if (null != proParentId && proParentId == 0) {
                    sampling.setSpecimenType(projectService.getById(detail.getProId()).getSpecimenType());
                } else {
                    sampling.setSpecimenType(projectService.getById(projectService.getById(detail.getProId()).getProParentId()).getSpecimenType());
                }
                sampling.setSamplingNumber(format);
                sampling.setTjNum(order.getTjNumber());
                sampling.setCusId(String.valueOf(order.getUserId()));
                if (tjCustomerService.getById(String.valueOf(order.getUserId())) != null) {
                    sampling.setCusName(tjCustomerService.getById(String.valueOf(order.getUserId())).getCusName());
                }
                sampling.setApplicationTime(new Date());
                sampling.setTjTime(order.getCreateTime());
                sampling.setProId(String.valueOf(detail.getProId()));
                sampling.setProName(projectService.getById(detail.getProId()).getProName());
                sampling.setCreateBy(sysUser.getNickName());
                sampling.setCreateTime(new Date());
                sampling.setUpdateBy(sysUser.getNickName());
                sampling.setUpdateTime(new Date());
                sampling.setCreateId(String.valueOf(sysUser.getUserId()));
                sampling.setUpdateId(String.valueOf(sysUser.getUserId()));
                samplingService.save(sampling);
            }
        }
    }
    //首页饼状图登记人数接口
@@ -1439,7 +1544,10 @@
                            StringBuilder stringBuilder = new StringBuilder();
                            for (TjOrderRemark remark : list) {
                                TjProject byId = projectService.getById(remark.getProId());
                                stringBuilder.append(byId.getProName()).append(";");
                                if(null !=byId){
                                    stringBuilder.append(byId.getProName()).append(";");
                                }
                            }
                            customer.setNotCheckeds(String.valueOf(stringBuilder));
                            if (null == customer.getNotCheckeds()) customer.setNotCheckeds("全部已检");