Pu Zhibing
2025-03-28 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderPrivateCarMapper.xml
@@ -78,7 +78,8 @@
    <!--根据条件查询专车订单列表-->
    <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.chineseName as serverCarModel,ifnull(oc.money, 0) as cancel_money,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
@@ -145,24 +146,28 @@
        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.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.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 '余额支付' else '现金支付' end as cancelPayTypeStr
             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
@@ -170,13 +175,14 @@
        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 t_order_cancel as oc on ot.id = oc.orderId and oc.orderType = 1
        LEFT JOIN t_order_cancel as oc on ot.id = oc.orderId and oc.orderType = 1 and oc.state = 2
        LEFT JOIN (
            SELECT ii.money,ii.incomeId,cc.type FROM t_income as ii
            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
            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, money FROM t_income where userType = 2 and type != 1 and orderType = 1) as income2 on income2.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>