zhaowenxuan
2024-12-26 045dc3a1be1c2980458c6cf20de9e2f2efe7e15d
ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
@@ -6,7 +6,9 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.extra.pinyin.PinyinUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
@@ -611,12 +613,13 @@
            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.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) {
                            TjCustomer customer = customerService.getById(order);
                            TjCustomer customer = customerService.getById(order.getUserId());
                            LambdaQueryWrapper<TjOrderDetail> wq2 = new LambdaQueryWrapper<>();
                            wq2.eq(TjOrderDetail::getOrderId, order.getOrderId());
                            List<TjOrderDetail> detailList = detailService.list(wq2);
@@ -644,7 +647,8 @@
                                    tjRefundVo.setTjFlowingWater(water);
                                    tjRefundVo.setTjNumber(order.getTjNumber());
                                    tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId()));
                                    tjCollectFeesVoList.add(tjRefundVo);
                                    TjCollectFeesVo vo = BeanUtil.copyProperties(tjRefundVo, TjCollectFeesVo.class);
                                    tjCollectFeesVoList.add(vo);
                                }
                            }
                        }
@@ -760,6 +764,71 @@
        return AjaxResult.error("暂时没有数据");
    }
    /**
     * 体检已收费未收费信息查询接口
     */
    @GetMapping("/findTjChargedButNotChargedByTjNumN")
    @ApiOperation(value = "体检已收费未收费信息查询接口")
    public AjaxResult findTjChargedButNotChargedByTjNumN(@RequestParam @ApiParam(value = "0未缴费1已缴费") Integer type,
                                                        @RequestParam @ApiParam(value = "体检号") String OrderId,
                                                         @RequestParam String tjSerialNumber) {
        if (null != OrderId) {
            TjOrder order = orderService.getById(OrderId);
            if (null != order) {
                List<TjProject> tjProjectList = null;
                TjFlowingWater water = tjFlowingWaterService.getById(tjSerialNumber);
                if (type == 0) {
                    if (StrUtil.isBlank(water.getJxbz()))
                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullAndJxbzIsNull(OrderId);
                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNullN(OrderId,water.getJxbz());
                } else {
                    if (StrUtil.isBlank(water.getJxbz()))
                        tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullAndJxbzIsNull(OrderId);
                    else tjProjectList = detailService.selectTjOrderDetailListByFlowingWaterIdIsNotNullN(OrderId,water.getJxbz());
                }
                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) {
                            if (null != pacId) {
                                TjPackageProject pp = tjPackageProjectService.getOne(new LambdaQueryWrapper<TjPackageProject>().eq(TjPackageProject::getPacId, pacId)
                                        .eq(TjPackageProject::getProId, String.valueOf(project.getProId())));
                                if (null != pp) {
                                    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));
                                }
                            } else {
                                project.setProPrice(project.getProPrice().setScale(2));
                                project.setProOrdPrice(project.getProPrice().multiply(new BigDecimal(s)).setScale(2));
                            }
                        }
                    }
                    List<TjFlowingWater> list = tjFlowingWaterService.list(new LambdaQueryWrapper<TjFlowingWater>()
                            .eq(TjFlowingWater::getOrderId, order)
                            .eq(TjFlowingWater::getPayStasus, 2));
                    if (null != list && !list.isEmpty()) {
                        List<TjProject> projectList = projectService.getTjProListByPacIdAndDeptId(pacId);
                        if(null !=projectList && !projectList.isEmpty()){
                            for (TjProject project : projectList) {
                                project.setProOrdPrice(tjPackageProjectService.getPacProPriceByPacIdAndPro(project.getProId(),pacId)
                                        .multiply(new BigDecimal(s)).setScale(2));
                                tjProjectList.add(project);
                            }
                        }
                    }
                }
                return AjaxResult.success(tjProjectList);
            }
        }
        return AjaxResult.error("暂时没有数据");
    }
    /**
     * 体检退费项目查询接口