zjh
2025-01-23 5e15f28db8bf83cc19697e1ce2bd0078cd9cdfb8
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
@@ -34,6 +34,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import jodd.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.transaction.annotation.Transactional;
@@ -280,8 +281,8 @@
                        wrapper.eq(TbTransition::getCusId,customer.getCusIdcard());
                        wrapper.eq(TbTransition::getCardId,customer.getCardId());
                        wrapper.eq(TbTransition::getJxbz,jxbz);
                        wrapper.isNotNull(TbTransition::getOrdPrice);
                        wrapper.gt(TbTransition::getOrdPrice,0);
                        wrapper.isNotNull(TbTransition::getNowPrice);
                        wrapper.gt(TbTransition::getNowPrice, 0);
                        List<TbTransition> list = transitionService.list(wrapper);
                        for (TbTransition transition : list) {
@@ -294,7 +295,7 @@
                            SysDept dept = sysDeptService.getOne(wrapper2);
                            JSONObject obj = JSONUtil.createObj();
                            BigDecimal danjia = transition.getOrdPrice();
                            BigDecimal danjia = transition.getNowPrice();
                            Integer sl = project.getSl();
                            BigDecimal allPrice = danjia.multiply(new BigDecimal(sl));
                            obj.putOpt("danJia",danjia);
@@ -855,44 +856,28 @@
            if (null != customerList && !customerList.isEmpty()) {
                    LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
                    wq1.in(TjOrder::getUserId,customerList.stream().map(TjCustomer::getCusId).collect(Collectors.toList()));
                    wq1.eq(TjOrder::getCheckStatus, 0);
//                    wq1.isNotNull(TjOrder::getReportTime);
                    wq1.orderByDesc(TjOrder::getCreateTime);
                    List<TjOrder> tjOrders = orderService.list(wq1);
                    if (null != tjOrders && !tjOrders.isEmpty()) {
                        for (TjOrder order : tjOrders) {
                            LambdaQueryWrapper<TjFlowingWater> wq = new LambdaQueryWrapper<>();
                            wq.eq(TjFlowingWater::getOrderId, order.getOrderId());
                            List<TjFlowingWater> list = tjFlowingWaterService.list(wq);
                            for (TjFlowingWater water : list) {
                            TjCustomer customer = customerService.getById(order.getUserId());
                            LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
                            wq2.eq(TjOrderDetail::getOrderId, order.getOrderId());
                            List<TjOrderDetail> detailList = detailService.list(wq2);
                            if (null != detailList && !detailList.isEmpty()) {
                                TjCollectFeesVo tjRefundVo = new TjCollectFeesVo();
                                tjRefundVo.setTjType(order.getTjType());
                                tjRefundVo.setTjCusId(String.valueOf(customer.getCusId()));
                                tjRefundVo.setTjName(customer.getCusName());
                                tjRefundVo.setTjPhone(customer.getCusPhone());
                                tjRefundVo.setSex(String.valueOf(customer.getCusSex()));
                                if (null != customer.getCusIdcard()) tjRefundVo.setIdCard(customer.getCusIdcard());
                                DictComp dictComp = compService.getById(order.getFirmId());
                                if (null != dictComp) {
                                    tjRefundVo.setTjComp(dictComp.getCnName());
                                } else {
                                    tjRefundVo.setTjComp("无");
                                }
                                if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType());
                                LambdaQueryWrapper<TjFlowingWater> wq = new LambdaQueryWrapper<>();
                                wq.eq(TjFlowingWater::getOrderId, order.getOrderId());
//                                wq.eq(TjFlowingWater::getIsAddition, "N");
                                wq.ne(TjFlowingWater::getPayStasus, 2);
                                List<TjFlowingWater> list = tjFlowingWaterService.list(wq);
                                for (TjFlowingWater water : list) {
                                tjRefundVo.setIdCard(customer.getCusIdcard());
                                tjRefundVo.setTjComp(order.getFirmName());
                                    tjRefundVo.setTjFlowingWater(water);
                                    tjRefundVo.setTjNumber(order.getTjNumber());
                                    tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId()));
                                    TjCollectFeesVo vo = BeanUtil.copyProperties(tjRefundVo, TjCollectFeesVo.class);
                                    tjCollectFeesVoList.add(vo);
                                tjCollectFeesVoList.add(tjRefundVo);
                                }
                            }
                        }
                    }
@@ -904,40 +889,30 @@
        if (null != tjNum) {
            LambdaQueryWrapper<TjOrder> wq1 = new LambdaQueryWrapper<>();
            wq1.likeLeft(TjOrder::getTjNumber, tjNum);
//            wq1.eq(TjOrder::getCheckStatus, 0);
            List<TjOrder> orderList = orderService.list(wq1);
            if (null != orderList && !orderList.isEmpty()) {
                for (TjOrder order : orderList) {
                    LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
                    wq2.eq(TjOrderDetail::getOrderId, order.getOrderId());
                    //wq2.isNull(TjOrderDetail::getFlowingWaterId);
                    List<TjOrderDetail> detailList = detailService.list(wq2);
                    if (null != detailList && !detailList.isEmpty()) {
                    LambdaQueryWrapper<TjFlowingWater> wq = new LambdaQueryWrapper<>();
                    wq.eq(TjFlowingWater::getOrderId, order.getOrderId());
                    List<TjFlowingWater> list = tjFlowingWaterService.list(wq);
                    for (TjFlowingWater water : list) {
                        TjCustomer customer = customerService.getById(order.getUserId());
                        if (null != customer) {
                            TjCollectFeesVo tjRefundVo = new TjCollectFeesVo();
                        tjRefundVo.setTjType(order.getTjType());
                            tjRefundVo.setTjCusId(String.valueOf(customer.getCusId()));
                            tjRefundVo.setTjName(customer.getCusName());
                            tjRefundVo.setTjPhone(customer.getCusPhone());
                            tjRefundVo.setSex(String.valueOf(customer.getCusSex()));
                            tjRefundVo.setIdCard(customer.getCusIdcard());
                            if (null != order.getFirmId()) {
                                DictComp byId = compService.getById(order.getFirmId());
                                if (null != byId) {
                                    tjRefundVo.setTjComp(byId.getCnName());
                                }
                            }
                            if (null != order.getTjType()) tjRefundVo.setTjType(order.getTjType());
                            TjFlowingWater one = tjFlowingWaterService.getOne(new LambdaQueryWrapper<TjFlowingWater>()
                                    .eq(TjFlowingWater::getOrderId, order.getOrderId())
                                    .eq(TjFlowingWater::getIsAddition, "N")
                                    .ne(TjFlowingWater::getPayStasus, 2));
                            tjRefundVo.setTjFlowingWater(one);
                        tjRefundVo.setTjComp(order.getFirmName());
                        tjRefundVo.setTjFlowingWater(water);
                            tjRefundVo.setTjNumber(order.getTjNumber());
                            tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId()));
//                        TjCollectFeesVo vo = BeanUtil.copyProperties(tjRefundVo, TjCollectFeesVo.class);
                            tjCollectFeesVoList.add(tjRefundVo);
                        }
                    }
                }
                return AjaxResult.success(tjCollectFeesVoList);
            }
@@ -1014,10 +989,11 @@
    public AjaxResult findTjChargedButNotChargedByTjNumN(@RequestParam @ApiParam(value = "0未缴费1已缴费") Integer type,
                                                        @RequestParam @ApiParam(value = "体检号") String OrderId,
                                                         @RequestParam String tjSerialNumber) {
        if (null != OrderId) {
        if (StringUtil.isNotBlank(OrderId)) {
            TjOrder order = orderService.getById(OrderId);
            if (null != order) {
                List<TjProject> tjProjectList = null;
                List<TjProject> tjProjectList = new ArrayList<>();
                List<TjOrderRemark> remarkList = null;
                LambdaQueryWrapper<TjFlowingWater> wrapper = new LambdaQueryWrapper<>();
                wrapper.eq(TjFlowingWater::getTjSerialNumber,tjSerialNumber);
//                wrapper.eq(TjFlowingWater::getPayStasus,type);
@@ -1026,15 +1002,20 @@
                    return AjaxResult.success(tjProjectList);
                if (type == 0) {
                    if (StrUtil.isBlank(water.getJxbz()))
                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(OrderId);
                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullN(OrderId,water.getJxbz());
//                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(OrderId);
                        remarkList = remarkService.shoufeiyemianweishoufei(order.getTjNumber(), null);
//                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullN(OrderId,water.getJxbz());
                    else remarkList = remarkService.shoufeiyemianweishoufei(order.getTjNumber(), water.getJxbz());
                } else {
                    if (StrUtil.isBlank(water.getJxbz()))
                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(OrderId);
                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullN(OrderId,water.getJxbz());
//                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(OrderId);
                        remarkList = remarkService.shoufeiyemianyishoufei(order.getTjNumber(), null);
//                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullN(OrderId,water.getJxbz());
                    else remarkList = remarkService.shoufeiyemianyishoufei(order.getTjNumber(), water.getJxbz());
                }
                String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber(),order.getCardId());
                String s = tjFlowingWaterService.getDiscount(OrderId);
//                String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(order.getTjNumber(),order.getCardId());
//                String s = tjFlowingWaterService.getDiscount(OrderId);
/*
                if (null != tjProjectList && !tjProjectList.isEmpty()) {
                    for (TjProject project : tjProjectList) {
                        if (project.getProParentId() == 0) {
@@ -1045,12 +1026,12 @@
                                    project.setProPrice(pp.getPriceNow());
                                    project.setProOrdPrice(pp.getPriceNow().multiply(new BigDecimal(s)));
                                } else {
                                    project.setProPrice(project.getProPrice().setScale(2));
                                    project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2));
                                    project.setProPrice(project.getProPrice());
                                    project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)));
                                }
                            } else {
                                project.setProPrice(project.getProPrice().setScale(2));
                                project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2));
                                project.setProPrice(project.getProPrice());
                                project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)));
                            }
                        }
                    }
@@ -1063,12 +1044,25 @@
                        if(null !=projectList && !projectList.isEmpty()){
                            for (TjProject project : projectList) {
                                project.setProOrdPrice(tjPackageProjectService.getPacProPriceByPacIdAndPro(project.getProId(),pacId)
                                        .multiply(new BigDecimal(s)).setScale(2));
                                        .multiply(new BigDecimal(s)));
                                tjProjectList.add(project);
                            }
                        }
                    }
                }
*/
                if (!remarkList.isEmpty()) {
                    for (TjOrderRemark remark : remarkList) {
                        TjProject tjProject = projectService.getById(remark.getProId());
                        BigDecimal newdecimal = transitionService.getTbTransitionNewPriceByTjNumAndParentId(remark.getTjNumber(), remark.getProId().toString());
                        BigDecimal orddecimal = transitionService.getTbTransitionOrdPriceByTjNumAndParentId(remark.getTjNumber(), remark.getProId().toString());
                        tjProject.setProOrdPrice(orddecimal);
                        tjProject.setProPrice(newdecimal);
                        tjProjectList.add(tjProject);
                    }
                }
                return AjaxResult.success(tjProjectList);
            }
@@ -1096,7 +1090,7 @@
            wq.isNotNull(TjOrderDetail::getFlowingWaterId);
            List<TjOrderDetail> detailList = detailService.list(wq);
            String pacId = transitionService.selectPacIdByTbTransitionTjNumAndProId(tjOrder.getTjNumber(),tjOrder.getCardId());
            if (null != detailList && detailList.size() > 0) {
            if (null != detailList && !detailList.isEmpty()) {
                List<TjRefundProInfoVo> tjRefundProInfoVoList = new ArrayList<>();
                for (TjOrderDetail detail : detailList) {
                    TjProject project = projectService.getById(detail.getProId());