From de9d3974b9068ffc0893f62d33b50e3864603c80 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期五, 06 九月 2024 17:38:56 +0800
Subject: [PATCH] 2.0bug修改

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java |   35 +++++++++++++++++++++++++++--------
 1 files changed, 27 insertions(+), 8 deletions(-)

diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
index b7741c2..40a2a35 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
@@ -206,12 +206,14 @@
         TOrderPrivateCar orderPrivateCar = tOrderPrivateCarService.selectById(id);
         orderPrivateCar.setAbnormalMoney(orderPrivateCar.getOrderMoney());
         orderPrivateCar.setOrderMoney(money);
+        orderPrivateCar.setPayMoney(money);
+        orderPrivateCar.setState(7);
+        orderPrivateCar.setIsDispute(1);
         orderPrivateCar.updateById();
         return SUCCESS_TIP;
     }
 
-    @Resource
-    private ITUserService userService;
+
     @RequestMapping(value = "/frozenOrder")
     @ResponseBody
     public Object frozenOrder(@RequestParam Integer tOrderPrivateCarId) throws Exception {
@@ -219,9 +221,23 @@
 
         //添加已收入明细
         TDriver tDriver = driverService.selectById(orderPrivateCar.getDriverId());
+        orderPrivateCar = this.setMoney(orderPrivateCar, 0D, 0D);//计算费用
+
+        //添加已收入明细
+        TCompany company = companyService.selectById(orderPrivateCar.getCompanyId());
+        Double taxi = company.getSpeMoney().doubleValue();
         Integer language =tDriver.getLanguage();
         BigDecimal d = null;//企业收入
         BigDecimal c = null;//司机收入
+        if(company.getIsSpeFixedOrProportional() == 2){//固定
+            d = new BigDecimal(taxi);
+            c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);
+        }
+        if(company.getIsSpeFixedOrProportional() == 1){//比例
+            Double price = orderPrivateCar.getStartMoney().doubleValue() + orderPrivateCar.getMileageMoney().doubleValue() + orderPrivateCar.getWaitMoney().doubleValue()+ orderPrivateCar.getDurationMoney().doubleValue() + orderPrivateCar.getLongDistanceMoney().doubleValue();
+            d = new BigDecimal(price).multiply(new BigDecimal(taxi).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);
+            c = orderPrivateCar.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);
+        }
         if(orderPrivateCar.getIsFrozen()==1){
             TDriver driver = driverService.selectById(orderPrivateCar.getDriverId());
             driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).subtract(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
@@ -256,14 +272,14 @@
                         orderPrivateCar1.setState(8);
                         orderPrivateCar1.setIsFree(2);
                         //添加已收入明细
-                        TCompany company = companyService.selectById(orderPrivateCar1.getCompanyId());
-                        BigDecimal speMoney = company.getSpeMoney();
+                        TCompany tCompany = companyService.selectById(orderPrivateCar1.getCompanyId());
+                        BigDecimal speMoney = tCompany.getSpeMoney();
 
-                        if(company.getIsSpeFixedOrProportional() == 2){//固定
+                        if(tCompany.getIsSpeFixedOrProportional() == 2){//固定
                             d = speMoney;
                             c = orderPrivateCar1.getOrderMoney().subtract(d);//只有出行金额参与抽成,其余归属司机
                         }
-                        if(company.getIsSpeFixedOrProportional() == 1){//比例
+                        if(tCompany.getIsSpeFixedOrProportional() == 1){//比例
                             BigDecimal price = orderPrivateCar1.getStartMoney().add(orderPrivateCar1.getMileageMoney()).add(new BigDecimal(orderPrivateCar1.getWaitMoney())).add(orderPrivateCar1.getDurationMoney()).add(orderPrivateCar1.getLongDistanceMoney());
                             d = price.multiply(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN));
                             c = orderPrivateCar1.getOrderMoney().subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);
@@ -335,12 +351,12 @@
             new Thread(new Runnable() {
                 @Override
                 public void run() {
+                    pushUtil.frozenOrder(finalOrderPrivateCar.getDriverId(),2);
                     pushUtil.pushOrderState(2, finalOrderPrivateCar.getDriverId(), finalOrderPrivateCar.getId(), 1, 7, 0, "");
                 }
             }).start();
         }
         orderPrivateCar.setIsFrozen(orderPrivateCar.getIsFrozen()==1?2:1);
-        orderPrivateCar.setState(7);
         tOrderPrivateCarService.updateAllColumnById(orderPrivateCar);
 
         return SUCCESS_TIP;
@@ -581,7 +597,7 @@
         if(orderPrivateCar.getIsplatPay()==2){
             return "error";
         }
-    //添加已收入明细
+        //添加已收入明细
         TCompany company = companyService.selectById(orderPrivateCar.getCompanyId());
         Double taxi = company.getSpeMoney().doubleValue();
         BigDecimal d = null;//企业收入
@@ -603,6 +619,9 @@
         driver.setBalance((null != driver.getBalance() ? driver.getBalance() : BigDecimal.ZERO).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN));
         driverService.updateById(driver);
         orderPrivateCar.setIsplatPay(2);
+        orderPrivateCar.setPayManner(1);
+        orderPrivateCar.setState(8);
+        orderPrivateCar.setPayMoney(orderPrivateCar.getOrderMoney());
         tOrderPrivateCarService.updateAllColumnById(orderPrivateCar);
         return SUCCESS_TIP;
     }

--
Gitblit v1.7.1