From 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 28 三月 2025 19:57:56 +0800
Subject: [PATCH] 修改bug

---
 ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml |   34 ++++++++++++++++++++++++----------
 1 files changed, 24 insertions(+), 10 deletions(-)

diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml
index e5ed740..401d606 100644
--- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml
+++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml
@@ -78,12 +78,14 @@
     <!--根据条件查询专车订单列表-->
     <select id="getPrivateCarOrderList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT * FROM (SELECT ui.nickName as userName,ui.phone as userPhone,CONCAT(di.firstName, " ", di.lastName,'-',di.phone) as driver,CONCAT(cb.`name`,'-',ci.carLicensePlate) as car,
-        sc.`name` as serverCarModel,ot.* FROM t_order_private_car as ot
+        sc.chineseName as serverCarModel,ifnull(oc.money, 0) as cancel_money,ot.*
+        FROM t_order_private_car as ot
         LEFT JOIN t_user as ui on ui.id = ot.userId
         LEFT JOIN t_driver as di on di.id = ot.driverId
         LEFT JOIN t_car as ci on ci.id= ot.carId
         LEFT JOIN t_car_brand as cb on cb.id = ci.carBrandId
         LEFT JOIN t_server_carmodel as sc on sc.id = ot.serverCarModelId
+        left join t_order_cancel as oc on (ot.id = oc.orderId and oc.orderType = 1 and oc.state = 2)
         ) as o
         <where>
             o.isDelete = 1 and o.type = 1
@@ -144,31 +146,43 @@
         when ot.orderSource = 4 then '司机下单'
         when ot.orderSource = 5 then '调度下单' else '' end orderSourceStr,
         ui.nickName as userName,ui.phone as userPhone,
+        ot.payType,
         case when ot.payType = 1 then '手机支付'
         when ot.payType = 2 then '银行卡支付'
         when ot.payType = 3 then '余额支付' else '现金支付' end as payTypeStr,
-
+        
         case when ot.isFree = 2 then ot.orderMoney
         when ot.freeMoney > ot.orderMoney then ot.orderMoney else ot.freeMoney end as freeMoney1,
-        sc.`name` as serverCarModel,
+        sc.chineseName as serverCarModel,
         case when income1.type = 1 then income1.money else 0 end as platIncome,
         case when income1.type = 2 then income1.money else 0 end as companyIncome,
         case when income1.type = 3 then income1.money else 0 end as franchiseeIncome,
+        IFNULL(sd.price, 0) as settlementPrice,
         IFNULL(income2.money,0) as driverIncome,
         CONCAT(di.firstName, " ", di.lastName,'-',di.phone) as driver,
         CONCAT(cb.`name`,'-',ci.carLicensePlate) as car,
-        cc.`name` as companyName,ot.*
-         FROM t_order_private_car as ot
+        cc.type as companyType,
+        cc.`name` as companyName,ot.*,
+        oc.money as cancelMoney,
+        case when oc.payType = 1 then '手机支付'
+             when oc.payType = 2 then '银行卡支付'
+             when oc.payType = 3 then '余额支付'
+             when oc.payType = 4 then '现金支付'else '' end as cancelPayTypeStr
+        FROM t_order_private_car as ot
         LEFT JOIN t_user as ui on ui.id = ot.userId
         LEFT JOIN t_driver as di on di.id = ot.driverId
         LEFT JOIN t_car as ci on ci.id= ot.carId
         LEFT JOIN t_car_brand as cb on cb.id = ci.carBrandId
         LEFT JOIN t_company as cc on cc.id = ot.companyId
         LEFT JOIN t_server_carmodel as sc on sc.id = ot.serverCarModelId
-        LEFT JOIN (SELECT ii.money,ii.incomeId,cc.type FROM t_income as ii
-        LEFT JOIN t_company as cc on ii.objectId = cc.id
-        where ii.userType = 1 and ii.type = 2 and ii.orderType = 1) as income1 on income1.incomeId = ot.id
-        LEFT JOIN (SELECT incomeId, money FROM t_income where userType = 2 and type = 2 and orderType = 1) as income2 on income2.incomeId = ot.id
+        LEFT JOIN t_order_cancel as oc on ot.id = oc.orderId and oc.orderType = 1 and oc.state = 2
+        LEFT JOIN (
+            SELECT sum(ii.money) as money,ii.incomeId,cc.type FROM t_income as ii
+            LEFT JOIN t_company as cc on ii.objectId = cc.id
+            where ii.userType = 1 and ii.type != 1 and ii.orderType = 1 group by ii.incomeId, cc.type
+        ) as income1 on income1.incomeId = ot.id
+        LEFT JOIN (SELECT incomeId, sum(money) as money FROM t_income where userType = 2 and type != 1 and orderType = 1 group by incomeId) as income2 on income2.incomeId = ot.id
+        LEFT JOIN t_settlement_detail sd on ot.id = sd.orderId and sd.orderType = 1
         where ot.id = #{orderId}
     </select>
 
@@ -176,7 +190,7 @@
     <!--根据条件查询专车订单列表noPage-->
     <select id="getPrivateCarOrderListNoPage" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
         SELECT * FROM (SELECT ui.nickName as userName,ui.phone as userPhone,CONCAT(di.firstName, " ", di.lastName,'-',di.phone) as driver,CONCAT(cb.`name`,'-',ci.carLicensePlate) as car,
-        sc.`name` as serverCarModel,ot.* FROM t_order_private_car as ot
+        sc.chineseName as serverCarModel,ot.* FROM t_order_private_car as ot
         LEFT JOIN t_user as ui on ui.id = ot.userId
         LEFT JOIN t_driver as di on di.id = ot.driverId
         LEFT JOIN t_car as ci on ci.id= ot.carId

--
Gitblit v1.7.1