From 9b3f6f5952d45ceeb0770fe4622721007b8fc79d Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期五, 23 二月 2024 15:32:51 +0800
Subject: [PATCH] 修改

---
 UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java    |   43 ++++++++-----
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java                                 |   68 ++++++++++++++++++++++
 DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java |   45 +++++++++------
 3 files changed, 121 insertions(+), 35 deletions(-)

diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
index b15ac78..83fa659 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java
@@ -1240,20 +1240,88 @@
                 }
 
                 if("3".equals(type)){
+                    switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
+                        case 1:
+                            baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
+                            break;
+                        case 2:
+                            baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
+                            break;
+                        case 3:
+                            baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
+                            break;
+                        case 4:
+                            baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison");
+                            break;
+                        case 5:
+                            baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
+                            break;
+                    }
                     baseWarpper.setName(language == 1 ? "取消订单费用" : language == 2 ? "Cancellation fee" : "Frais d'annulation");
                     baseWarpper.setData(new Object());
                 }
                 if("5".equals(type)){
+                    switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
+                        case 1:
+                            baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
+                            break;
+                        case 2:
+                            baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
+                            break;
+                        case 3:
+                            baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
+                            break;
+                        case 4:
+                            baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison");
+                            break;
+                        case 5:
+                            baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
+                            break;
+                    }
                     Map<String, Object> map1 = new HashMap<>();
                     map1.put("content", language == 1 ? "优惠券 (平台补贴)" : language == 2 ? "Coupon (I-GO Promotions)" : "Coupon (Promotions d’I-GO)");
                     baseWarpper.setData(map1);
                 }
                 if("6".equals(type)){
+                    switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
+                        case 1:
+                            baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
+                            break;
+                        case 2:
+                            baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
+                            break;
+                        case 3:
+                            baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
+                            break;
+                        case 4:
+                            baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison");
+                            break;
+                        case 5:
+                            baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
+                            break;
+                    }
                     Map<String, Object> map1 = new HashMap<>();
                     map1.put("content", language == 1 ? "折扣 (平台补贴)" : language == 2 ? "Discount (I-GO Promotions)" : "Rabais (Promotions d’I-GO)");
                     baseWarpper.setData(map1);
                 }
                 if("7".equals(type)){
+                    switch (Integer.valueOf(String.valueOf(null != map.get("orderType") ? map.get("orderType") : 0))){
+                        case 1:
+                            baseWarpper.setName(language == 1 ? "打车" : language == 2 ? "Ride" : "Course");
+                            break;
+                        case 2:
+                            baseWarpper.setName(language == 1 ? "出租车" : language == 2 ? "taxi" : "taxi");
+                            break;
+                        case 3:
+                            baseWarpper.setName(language == 1 ? "城际出行" : language == 2 ? "Intercity travel" : "Mobilité entre villes");
+                            break;
+                        case 4:
+                            baseWarpper.setName(language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison");
+                            break;
+                        case 5:
+                            baseWarpper.setName(language == 1 ? "跨城小件物流" : language == 2 ? "Cross-city small parts logistics" : "Logistique des petites pièces à travers la ville");
+                            break;
+                    }
                     Map<String, Object> map1 = new HashMap<>();
                     map1.put("content", language == 1 ? "红包 (平台补贴)" : language == 2 ? "Lucky promo (I-GO Promotions)" : "Bonus (Promotions d’I-GO)");
                     baseWarpper.setData(map1);
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
index df0a6d2..e5503ee 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/server/impl/OrderLogisticsServiceImpl.java
@@ -380,7 +380,7 @@
                     if(d.compareTo(new BigDecimal(0)) > 0){
                         SettlementDetail settlementDetail = new SettlementDetail();
                         settlementDetail.setOrderId(orderId);
-                        settlementDetail.setOrderType(1);
+                        settlementDetail.setOrderType(4);
                         settlementDetail.setDriverId(orderLogistics.getDriverId());
                         settlementDetail.setOrderMoney(sum);
                         settlementDetail.setPrice(d.doubleValue());
@@ -391,24 +391,33 @@
                         if(null != settlementAllocation){
                             JSONObject jsonObject = JSON.parseObject(settlementAllocation.getContent());
                             Double maxPrice = jsonObject.getDouble("maxPrice");
-                            List<SettlementDetail> settlementDetailList = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>().eq("driverId", orderLogistics.getDriverId()).isNull("settlementRecordId").last(" and DATE_FORMAT(now(), '%Y-%m-%d') = DATE_FORMAT(createTime, '%Y-%m-%d')"));
-                            BigDecimal total = new BigDecimal(0);
-                            for (SettlementDetail detail : settlementDetailList) {
-                                total = total.add(new BigDecimal(detail.getPrice()));
-                            }
-                            if(maxPrice.compareTo(total.doubleValue()) <= 0){
-                                SettlementRecord settlementRecord = new SettlementRecord();
-                                settlementRecord.setDay(new Date());
-                                settlementRecord.setDriverId(orderLogistics.getDriverId());
-                                settlementRecord.setType(1);
-                                settlementRecord.setPaymentStatus(1);
-                                settlementRecord.setPayMoney(d.doubleValue());
-                                settlementRecord.setInsertTime(new Date());
-                                settlementRecordService.insert(settlementRecord);
-
+                            Integer type = jsonObject.getInteger("type");
+                            if(type == 1){
+                                List<SettlementDetail> settlementDetailList = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>().eq("driverId", orderLogistics.getDriverId()).isNull("settlementRecordId").last(" and DATE_FORMAT(now(), '%Y-%m-%d') = DATE_FORMAT(createTime, '%Y-%m-%d')"));
+                                BigDecimal total = new BigDecimal(0);
                                 for (SettlementDetail detail : settlementDetailList) {
-                                    detail.setSettlementRecordId(settlementRecord.getId());
-                                    settlementDetailService.updateById(detail);
+                                    total = total.add(new BigDecimal(detail.getPrice()));
+                                }
+                                if(maxPrice.compareTo(total.doubleValue()) <= 0){
+                                    SettlementRecord settlementRecord = settlementRecordService.selectOne(new EntityWrapper<SettlementRecord>().eq("driverId", orderLogistics.getDriverId())
+                                            .eq("type", type).eq("paymentStatus", 1).last(" and day = DATE_FORMAT(now(), '%Y-%m-%d')"));
+                                    if(null == settlementRecord){
+                                        settlementRecord = new SettlementRecord();
+                                        settlementRecord.setDay(new Date());
+                                        settlementRecord.setDriverId(orderLogistics.getDriverId());
+                                        settlementRecord.setType(type);
+                                        settlementRecord.setPaymentStatus(1);
+                                        settlementRecord.setPayMoney(total.doubleValue());
+                                        settlementRecord.setInsertTime(new Date());
+                                        settlementRecordService.insert(settlementRecord);
+                                    }else{
+                                        settlementRecord.setPayMoney(total.doubleValue());
+                                        settlementRecordService.updateById(settlementRecord);
+                                    }
+                                    for (SettlementDetail detail : settlementDetailList) {
+                                        detail.setSettlementRecordId(settlementRecord.getId());
+                                        settlementDetailService.updateById(detail);
+                                    }
                                 }
                             }
                         }
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
index 1e797c5..d1d586d 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/specialTrain/server/impl/OrderPrivateCarServiceImpl.java
@@ -1417,24 +1417,33 @@
                     if(null != settlementAllocation){
                         JSONObject jsonObject = JSON.parseObject(settlementAllocation.getContent());
                         Double maxPrice = jsonObject.getDouble("maxPrice");
-                        List<SettlementDetail> settlementDetailList = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>().eq("driverId", driver.getId()).isNull("settlementRecordId").last(" and DATE_FORMAT(now(), '%Y-%m-%d') = DATE_FORMAT(createTime, '%Y-%m-%d')"));
-                        BigDecimal total = new BigDecimal(0);
-                        for (SettlementDetail detail : settlementDetailList) {
-                            total = total.add(new BigDecimal(detail.getPrice()));
-                        }
-                        if(maxPrice.compareTo(total.doubleValue()) <= 0){
-                            SettlementRecord settlementRecord = new SettlementRecord();
-                            settlementRecord.setDay(new Date());
-                            settlementRecord.setDriverId(driver.getId());
-                            settlementRecord.setType(1);
-                            settlementRecord.setPaymentStatus(1);
-                            settlementRecord.setPayMoney(total.doubleValue());
-                            settlementRecord.setInsertTime(new Date());
-                            settlementRecordService.insert(settlementRecord);
-
+                        Integer type1 = jsonObject.getInteger("type");
+                        if(1 == type1){
+                            List<SettlementDetail> settlementDetailList = settlementDetailService.selectList(new EntityWrapper<SettlementDetail>().eq("driverId", driver.getId()).isNull("settlementRecordId").last(" and DATE_FORMAT(now(), '%Y-%m-%d') = DATE_FORMAT(createTime, '%Y-%m-%d')"));
+                            BigDecimal total = new BigDecimal(0);
                             for (SettlementDetail detail : settlementDetailList) {
-                                detail.setSettlementRecordId(settlementRecord.getId());
-                                settlementDetailService.updateById(detail);
+                                total = total.add(new BigDecimal(detail.getPrice()));
+                            }
+                            if(maxPrice.compareTo(total.doubleValue()) <= 0){
+                                SettlementRecord settlementRecord = settlementRecordService.selectOne(new EntityWrapper<SettlementRecord>().eq("driverId", orderPrivateCar.getDriverId())
+                                        .eq("type", type1).eq("paymentStatus", 1).last(" and day = DATE_FORMAT(now(), '%Y-%m-%d')"));
+                                if(null == settlementRecord){
+                                    settlementRecord = new SettlementRecord();
+                                    settlementRecord.setDay(new Date());
+                                    settlementRecord.setDriverId(orderPrivateCar.getDriverId());
+                                    settlementRecord.setType(type1);
+                                    settlementRecord.setPaymentStatus(1);
+                                    settlementRecord.setPayMoney(total.doubleValue());
+                                    settlementRecord.setInsertTime(new Date());
+                                    settlementRecordService.insert(settlementRecord);
+                                }else{
+                                    settlementRecord.setPayMoney(total.doubleValue());
+                                    settlementRecordService.updateById(settlementRecord);
+                                }
+                                for (SettlementDetail detail : settlementDetailList) {
+                                    detail.setSettlementRecordId(settlementRecord.getId());
+                                    settlementDetailService.updateById(detail);
+                                }
                             }
                         }
                     }

--
Gitblit v1.7.1