From 045dc3a1be1c2980458c6cf20de9e2f2efe7e15d Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期四, 26 十二月 2024 18:06:13 +0800
Subject: [PATCH] 20241226

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java |  176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 176 insertions(+), 0 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
index 1d1afe6..a5ca054 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjFlowingWaterController.java
+++ b/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;
@@ -593,6 +595,115 @@
         return AjaxResult.error("璇疯緭鍏ヨ鏌ヨ鏉′欢");
     }
 
+    /**
+     * 浣撴(鏀惰垂)椤甸潰鏌ヨ鎺ュ彛
+     */
+    @GetMapping("/findTjCollectFeesByNameAndTjNumAndPhoneN")
+    @ApiOperation(value = "浣撴(鏀惰垂)椤甸潰鏌ヨ鎺ュ彛")
+    public AjaxResult findTjCollectFeesByNameAndTjNumAndPhoneNew(@RequestParam(required = false) @ApiParam(value = "浣撴鍙�") String tjNum,
+                                                              @RequestParam(required = false) @ApiParam(value = "浣撴浜哄鍚�") String tjName,
+                                                              @RequestParam(required = false) @ApiParam(value = "浣撴浜烘墜鏈哄彿") String tjPhone) {
+        List<TjCollectFeesVo> tjCollectFeesVoList = new ArrayList<>();
+        if (null != tjName || null != tjPhone) {
+            LambdaQueryWrapper<TjCustomer> wq0 = new LambdaQueryWrapper<>();
+            wq0.like(TjCustomer::getCusName, tjName)
+                    .or()
+                    .like(TjCustomer::getCusPhone, tjPhone);
+            List<TjCustomer> customerList = customerService.list(wq0);
+            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) {
+                            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.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.setTjFlowingWater(water);
+                                    tjRefundVo.setTjNumber(order.getTjNumber());
+                                    tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId()));
+                                    TjCollectFeesVo vo = BeanUtil.copyProperties(tjRefundVo, TjCollectFeesVo.class);
+                                    tjCollectFeesVoList.add(vo);
+                                }
+                            }
+                        }
+                    }
+
+                return AjaxResult.success(tjCollectFeesVoList);
+            }
+            return AjaxResult.error("璇ョ敤鎴蜂笉瀛樺湪");
+        }
+
+        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()) {
+                        TjCustomer customer = customerService.getById(order.getUserId());
+                        if (null != customer) {
+                            TjCollectFeesVo tjRefundVo = new TjCollectFeesVo();
+                            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.setTjNumber(order.getTjNumber());
+                            tjRefundVo.setTjOrderId(String.valueOf(order.getOrderId()));
+                            tjCollectFeesVoList.add(tjRefundVo);
+                        }
+                    }
+                }
+                return AjaxResult.success(tjCollectFeesVoList);
+            }
+            return AjaxResult.success("璇ョ敤鎴蜂笉瀛樺湪鎴栧凡浣撴瀹屾垚");
+        }
+        return AjaxResult.error("璇疯緭鍏ヨ鏌ヨ鏉′欢");
+    }
+
 
     /**
      * 浣撴宸叉敹璐规湭鏀惰垂淇℃伅鏌ヨ鎺ュ彛
@@ -653,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("鏆傛椂娌℃湁鏁版嵁");
+    }
+
 
     /**
      * 浣撴閫�璐归」鐩煡璇㈡帴鍙�

--
Gitblit v1.8.0