From 60688f1573eadd0c76dea6b94e684bf363bd99ab Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期三, 03 九月 2025 12:08:33 +0800
Subject: [PATCH] 修改手动推送订单

---
 ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java |  144 +++++++++++++++++++++++++----------------------
 1 files changed, 76 insertions(+), 68 deletions(-)

diff --git a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
index 99f11b7..756d1f3 100644
--- a/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
+++ b/ruoyi-service/ruoyi-chargingPile/src/main/java/com/ruoyi/chargingPile/service/impl/TAccountingStrategyDetailServiceImpl.java
@@ -99,55 +99,53 @@
         Long userId = tokenService.getLoginUserApplet().getUserId();
         // 根据id查询用户信息
         TAppUser appUser = appUserClient.getUserById(userId).getData();
+        TVip vip = null;
         if(Objects.nonNull(appUser)){
             // 查询会员信息
-//            TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
-
             GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail();
             getAppUserVipDetail.setAppUserId(userId);
             getAppUserVipDetail.setVipId(appUser.getVipId());
             R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
             TAppUserVipDetail data1 = appUserVipDetail.getData();
-            TVip vip = null;
+
             if(Objects.nonNull(data1)){
                 String vipJson = data1.getVipJson();
                 vip = JSON.parseObject(vipJson, TVip.class);
             }
-
-            TAccountingStrategyDetailVO accountingStrategyDetailVO;
-            TAccountingStrategyDetailVO accountingStrategyDetailNext;
-            // 获取当前时间段的计费策略明细
-            accountingStrategyDetailVO = list.stream().filter(detail -> DateUtils.string2LocalTime(detail.getStartTime() + ":00").compareTo(LocalTime.now()) <= 0
-                            && DateUtils.string2LocalTime(detail.getEndTime() + ("23:59:59".equals(detail.getEndTime())?"":":00")).compareTo(LocalTime.now()) > 0)
-                    .findFirst().orElseThrow(() -> new ServiceException("当前时间段未查询到计费策略明细"));
-            // 获取后一次的计费策略明细
-            accountingStrategyDetailVO.setEndTime("23:59:59".equals(accountingStrategyDetailVO.getEndTime())? "00:00":accountingStrategyDetailVO.getEndTime());
-            accountingStrategyDetailNext = list.stream().filter(detail -> detail.getStartTime().compareTo(accountingStrategyDetailVO.getEndTime()) == 0)
-                    .findFirst().orElseThrow(() -> new ServiceException("未查询到下一时间段的计费策略明细"));
-            if(Objects.nonNull(vip)) {
-                if (vip.getType() == 2) {
-                    accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(vip.getDiscount())));
-                    accountingStrategyDetailVO.setDiscount(vip.getDiscount().divide(new BigDecimal(10)));
-                    accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(vip.getDiscount())));
-                } else {
-                    if(Objects.isNull(accountingStrategy.getDiscount())){
-                        accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(new BigDecimal(1))));
-                        accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(new BigDecimal(1))));
-                    }else {
-                        accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(accountingStrategy.getDiscount())));
-                        accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(accountingStrategy.getDiscount())));
-                    }
-                }
-            }else {
-                accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge()));
-                accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge()));
-            }
-            list = new ArrayList<>();
-            list.add(accountingStrategyDetailVO);
-            list.add(accountingStrategyDetailNext);
-            return list;
         }
-        return new ArrayList<>();
+
+        TAccountingStrategyDetailVO accountingStrategyDetailVO;
+        TAccountingStrategyDetailVO accountingStrategyDetailNext;
+        // 获取当前时间段的计费策略明细
+        accountingStrategyDetailVO = list.stream().filter(detail -> DateUtils.string2LocalTime(detail.getStartTime() + ":00").compareTo(LocalTime.now()) <= 0
+                        && DateUtils.string2LocalTime(detail.getEndTime() + ("23:59:59".equals(detail.getEndTime())?"":":00")).compareTo(LocalTime.now()) > 0)
+                .findFirst().orElseThrow(() -> new ServiceException("当前时间段未查询到计费策略明细"));
+        // 获取后一次的计费策略明细
+        accountingStrategyDetailVO.setEndTime("23:59:59".equals(accountingStrategyDetailVO.getEndTime())? "00:00":accountingStrategyDetailVO.getEndTime());
+        accountingStrategyDetailNext = list.stream().filter(detail -> detail.getStartTime().compareTo(accountingStrategyDetailVO.getEndTime()) == 0)
+                .findFirst().orElseThrow(() -> new ServiceException("未查询到下一时间段的计费策略明细"));
+        if(Objects.nonNull(vip)) {
+            if (vip.getType() == 2) {
+                accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(vip.getDiscount())));
+                accountingStrategyDetailVO.setDiscount(vip.getDiscount().divide(new BigDecimal(10)));
+                accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(vip.getDiscount())));
+            } else {
+                if(Objects.isNull(accountingStrategy.getDiscount())){
+                    accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(new BigDecimal(1))));
+                    accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(new BigDecimal(1))));
+                }else {
+                    accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(accountingStrategy.getDiscount())));
+                    accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(accountingStrategy.getDiscount())));
+                }
+            }
+        }else {
+            accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge()));
+            accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge()));
+        }
+        list = new ArrayList<>();
+        list.add(accountingStrategyDetailVO);
+        list.add(accountingStrategyDetailNext);
+        return list;
     }
 
     @Override
@@ -246,40 +244,50 @@
         Long userId = tokenService.getLoginUserApplet().getUserId();
         // 根据id查询用户信息
         TAppUser appUser = appUserClient.getUserById(userId).getData();
+        TVip vip = null;
         if(Objects.nonNull(appUser)){
             // 查询会员信息
-            TVip vip = vipClient.getInfo1(appUser.getVipId()).getData();
-            TAccountingStrategyDetailVO accountingStrategyDetailVO;
-            TAccountingStrategyDetailVO accountingStrategyDetailNext;
-            // 获取当前时间段的计费策略明细
-            accountingStrategyDetailVO = list.stream().filter(detail -> DateUtils.string2LocalTime(detail.getStartTime() + ":00").compareTo(LocalTime.now()) <= 0
-                            && DateUtils.string2LocalTime(detail.getEndTime() + ("23:59:59".equals(detail.getEndTime())?"":":00")).compareTo(LocalTime.now()) > 0)
-                    .findFirst().orElseThrow(() -> new ServiceException("当前时间段未查询到计费策略明细"));
-            // 获取后一次的计费策略明细
-            accountingStrategyDetailVO.setEndTime("23:59:59".equals(accountingStrategyDetailVO.getEndTime())? "00:00":accountingStrategyDetailVO.getEndTime());
-            accountingStrategyDetailNext = list.stream().filter(detail -> detail.getStartTime().compareTo(accountingStrategyDetailVO.getEndTime()) == 0)
-                    .findFirst().orElseThrow(() -> new ServiceException("未查询到下一时间段的计费策略明细"));
-            if(Objects.nonNull(vip)) {
-                if (vip.getType() == 2) {
-                    accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(vip.getDiscount())));
-                    accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(vip.getDiscount())));
-                } else {
-                    BigDecimal discount = accountingStrategy.getDiscount();
-                    if(Objects.isNull(discount)){
-                        discount = BigDecimal.ONE;
-                    }
-                    accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(discount)));
-                    accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(discount)));
-                }
-            }else {
-                accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge()));
-                accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge()));
+            GetAppUserVipDetail getAppUserVipDetail = new GetAppUserVipDetail();
+            getAppUserVipDetail.setAppUserId(userId);
+            getAppUserVipDetail.setVipId(appUser.getVipId());
+            R<TAppUserVipDetail> appUserVipDetail = vipDetailClient.getAppUserVipDetail(getAppUserVipDetail);
+            TAppUserVipDetail data1 = appUserVipDetail.getData();
+
+            if(Objects.nonNull(data1)){
+                String vipJson = data1.getVipJson();
+                vip = JSON.parseObject(vipJson, TVip.class);
             }
-            list = new ArrayList<>();
-            list.add(accountingStrategyDetailVO);
-            list.add(accountingStrategyDetailNext);
-            return list;
         }
-        return new ArrayList<>();
+
+        TAccountingStrategyDetailVO accountingStrategyDetailVO;
+        TAccountingStrategyDetailVO accountingStrategyDetailNext;
+        // 获取当前时间段的计费策略明细
+        accountingStrategyDetailVO = list.stream().filter(detail -> DateUtils.string2LocalTime(detail.getStartTime() + ":00").compareTo(LocalTime.now()) <= 0
+                        && DateUtils.string2LocalTime(detail.getEndTime() + ("23:59:59".equals(detail.getEndTime())?"":":00")).compareTo(LocalTime.now()) > 0)
+                .findFirst().orElseThrow(() -> new ServiceException("当前时间段未查询到计费策略明细"));
+        // 获取后一次的计费策略明细
+        accountingStrategyDetailVO.setEndTime("23:59:59".equals(accountingStrategyDetailVO.getEndTime())? "00:00":accountingStrategyDetailVO.getEndTime());
+        accountingStrategyDetailNext = list.stream().filter(detail -> detail.getStartTime().compareTo(accountingStrategyDetailVO.getEndTime()) == 0)
+                .findFirst().orElseThrow(() -> new ServiceException("未查询到下一时间段的计费策略明细"));
+        if(Objects.nonNull(vip)) {
+            if (vip.getType() == 2) {
+                accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(vip.getDiscount())));
+                accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(vip.getDiscount())));
+            } else {
+                BigDecimal discount = accountingStrategy.getDiscount();
+                if(Objects.isNull(discount)){
+                    discount = BigDecimal.ONE;
+                }
+                accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge().multiply(discount)));
+                accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge().multiply(discount)));
+            }
+        }else {
+            accountingStrategyDetailVO.setTotalPrice(accountingStrategyDetailVO.getElectrovalence().add(accountingStrategyDetailVO.getServiceCharge()));
+            accountingStrategyDetailNext.setTotalPrice(accountingStrategyDetailNext.getElectrovalence().add(accountingStrategyDetailNext.getServiceCharge()));
+        }
+        list = new ArrayList<>();
+        list.add(accountingStrategyDetailVO);
+        list.add(accountingStrategyDetailNext);
+        return list;
     }
 }

--
Gitblit v1.7.1