From d6a14beb93cb572247db0edff3f25f99e217fcf1 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期五, 22 八月 2025 15:34:17 +0800
Subject: [PATCH] 修改bug

---
 DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml |  225 ++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 210 insertions(+), 15 deletions(-)

diff --git a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
index b38b84a..bcd192b 100644
--- a/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
+++ b/DriverQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/DriverMapper.xml
@@ -77,9 +77,7 @@
         <result column="updateUser" property="updateUser"/>
     </resultMap>
 
-
-
-    <select id="queryByPhone" resultType="Driver">
+    <select id="queryIdleDriver" resultType="com.stylefeng.guns.modular.system.model.Driver">
         select
         id as id,
         account as account,
@@ -138,16 +136,210 @@
         state as state,
         addType as addType,
         balance as balance,
-        activityMoney as activityMoney,
-        laveActivityMoney as laveActivityMoney,
-        businessMoney as businessMoney,
-        laveBusinessMoney as laveBusinessMoney,
         flag as flag,
         insertTime as insertTime,
         insertUser as insertUser,
         updateTime as updateTime,
         updateUser as updateUser
-        from t_driver where flag != 3 and authState != 4 and phone = #{phone}
+        from t_driver
+        where flag != 3 and state = 2 and authState = 2
+        <if test="null != companyId">
+            <choose>
+                <when test="companyId != 1">
+                    and companyId = #{companyId} or franchiseeId = #{companyId}
+                </when>
+                <otherwise>
+                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
+                </otherwise>
+            </choose>
+
+        </if>
+        and id in
+        (
+        select driverId from t_driver_work where startTime &lt; now() and state = 1 and `type` like CONCAT('%', #{type}, '%')
+        )
+        <if test="8>type">
+            and id in (select driverId from t_driver_orders where `type` = #{type})
+        </if>
+        <if test="type>7">
+            and id in (select driverId from t_driver_orders where `type` = 1)
+        </if>
+    </select>
+
+    <select id="queryIdleDriver_" resultType="com.stylefeng.guns.modular.system.model.Driver">
+        select
+        id as id,
+        account as account,
+        jobNumber as jobNumber,
+        phone as phone,
+        password as password,
+        name as name,
+        sex as sex,
+        idCard as idCard,
+        companyId as companyId,
+        franchiseeId as franchiseeId,
+        headImgUrl as headImgUrl,
+        faceImgUrl as faceImgUrl,
+        idCardImgUrl1 as idCardImgUrl1,
+        idCardImgUrl2 as idCardImgUrl2,
+        placeOfEmployment as placeOfEmployment,
+        birthday as birthday,
+        bankCardNumber as bankCardNumber,
+        driverNationality as driverNationality,
+        driverNation as driverNation,
+        driverMaritalStatus as driverMaritalStatus,
+        driverLanguageLevel as driverLanguageLevel,
+        driverEducation as driverEducation,
+        driverCensus as driverCensus,
+        driverAddress as driverAddress,
+        driverContactAddress as driverContactAddress,
+        driverAge as driverAge,
+        driveCard as driveCard,
+        driveCardImgUrl as driveCardImgUrl,
+        driverType as driverType,
+        getDriverLicenseDate as getDriverLicenseDate,
+        driverLicenseOn as driverLicenseOn,
+        driverLicenseOff as driverLicenseOff,
+        taxiDriver as taxiDriver,
+        taxiAptitudeCard as taxiAptitudeCard,
+        networkCarlssueImg as networkCarlssueImg,
+        networkCarlssueOrganization as networkCarlssueOrganization,
+        networkCarlssueDate as networkCarlssueDate,
+        getNetworkCarProofDate as getNetworkCarProofDate,
+        networkCarProofOn as networkCarProofOn,
+        networkCarProofOff as networkCarProofOff,
+        registerDate as registerDate,
+        fullTimeDriver as fullTimeDriver,
+        inDriverBlacklist as inDriverBlacklist,
+        commercialType as commercialType,
+        contractCompany as contractCompany,
+        contractOn as contractOn,
+        contractOff as contractOff,
+        emergencyContact as emergencyContact,
+        emergencyContactPhone as emergencyContactPhone,
+        emergencyContactAddress as emergencyContactAddress,
+        remark as remark,
+        isPlatCar as isPlatCar,
+        carId as carId,
+        authState as authState,
+        state as state,
+        addType as addType,
+        balance as balance,
+        flag as flag,
+        insertTime as insertTime,
+        insertUser as insertUser,
+        updateTime as updateTime,
+        updateUser as updateUser
+        from t_driver
+        where flag != 3 and state = 2 and authState = 2
+        <if test="null != companyId">
+            <choose>
+                <when test="companyId != 1">
+                    and companyId = #{companyId} or franchiseeId = #{companyId}
+                </when>
+                <otherwise>
+                    and companyId is null or companyId = 0 or companyId = 1 or franchiseeId is null or franchiseeId = 0
+                </otherwise>
+            </choose>
+
+        </if>
+        and id in
+        (
+        select driverId from t_driver_work where startTime &lt; now() and state = 1 and `type` like CONCAT('%', #{type}, '%')
+        )
+        <if test="8>type">
+            and id in (select driverId from t_driver_orders where `type` = #{type})
+            and carId in (select carId from t_car_service where `type` = #{type}
+
+            <if test="null != serverCarModelId">
+                and serverCarModelId = #{serverCarModelId}
+            </if>
+            )
+        </if>
+        <if test="type>7">
+            and id in (select driverId from t_driver_orders where `type` =1)
+            and carId in (select carId from t_car_service where `type` = 1
+
+            <if test="null != serverCarModelId">
+                and serverCarModelId = #{serverCarModelId}
+            </if>
+            )
+        </if>
+
+    </select>
+
+    <select id="queryByPhone" resultType="Driver">
+        select id                          as id,
+               account                     as account,
+               jobNumber                   as jobNumber,
+               phone                       as phone,
+               password                    as password,
+               name                        as name,
+               sex                         as sex,
+               idCard                      as idCard,
+               companyId                   as companyId,
+               franchiseeId                as franchiseeId,
+               headImgUrl                  as headImgUrl,
+               faceImgUrl                  as faceImgUrl,
+               idCardImgUrl1               as idCardImgUrl1,
+               idCardImgUrl2               as idCardImgUrl2,
+               placeOfEmployment           as placeOfEmployment,
+               birthday                    as birthday,
+               bankCardNumber              as bankCardNumber,
+               driverNationality           as driverNationality,
+               driverNation                as driverNation,
+               driverMaritalStatus         as driverMaritalStatus,
+               driverLanguageLevel         as driverLanguageLevel,
+               driverEducation             as driverEducation,
+               driverCensus                as driverCensus,
+               driverAddress               as driverAddress,
+               driverContactAddress        as driverContactAddress,
+               driverAge                   as driverAge,
+               driveCard                   as driveCard,
+               driveCardImgUrl             as driveCardImgUrl,
+               driverType                  as driverType,
+               getDriverLicenseDate        as getDriverLicenseDate,
+               driverLicenseOn             as driverLicenseOn,
+               driverLicenseOff            as driverLicenseOff,
+               taxiDriver                  as taxiDriver,
+               taxiAptitudeCard            as taxiAptitudeCard,
+               networkCarlssueImg          as networkCarlssueImg,
+               networkCarlssueOrganization as networkCarlssueOrganization,
+               networkCarlssueDate         as networkCarlssueDate,
+               getNetworkCarProofDate      as getNetworkCarProofDate,
+               networkCarProofOn           as networkCarProofOn,
+               networkCarProofOff          as networkCarProofOff,
+               registerDate                as registerDate,
+               fullTimeDriver              as fullTimeDriver,
+               inDriverBlacklist           as inDriverBlacklist,
+               commercialType              as commercialType,
+               contractCompany             as contractCompany,
+               contractOn                  as contractOn,
+               contractOff                 as contractOff,
+               emergencyContact            as emergencyContact,
+               emergencyContactPhone       as emergencyContactPhone,
+               emergencyContactAddress     as emergencyContactAddress,
+               remark                      as remark,
+               isPlatCar                   as isPlatCar,
+               carId                       as carId,
+               authState                   as authState,
+               state                       as state,
+               addType                     as addType,
+               balance                     as balance,
+               activityMoney               as activityMoney,
+               laveActivityMoney           as laveActivityMoney,
+               businessMoney               as businessMoney,
+               laveBusinessMoney           as laveBusinessMoney,
+               flag                        as flag,
+               insertTime                  as insertTime,
+               insertUser                  as insertUser,
+               updateTime                  as updateTime,
+               updateUser                  as updateUser,
+               empId,
+               enterId,
+               entercode
+        from t_driver
+        where flag != 3 and authState != 4 and phone = #{phone}
     </select>
 
 
@@ -308,15 +500,15 @@
         b.carLicensePlate as licensePlate,
         CONCAT(d.`name`, c.`name`, ' . ', b.carColor) as brand,
         (
-        (select count(id) from t_order_private_car where driverId = a.id and state in (7, 8, 9) and to_days(insertTime) = to_days(now())) +
-        (select count(id) from t_order_taxi where driverId = a.id and state in (7, 8, 9) and to_days(insertTime) = to_days(now())) +
-        (select count(id) from t_order_cross_city where driverId = a.id and state in (6, 8, 9) and to_days(insertTime) = to_days(now())) +
+        (select count(id) from t_order_private_car where driverId = a.id and state !=10 and to_days(insertTime) = to_days(now())) +
+        (select count(id) from t_order_taxi where driverId = a.id and state !=10  and to_days(insertTime) = to_days(now())) +
+        (select count(id) from t_order_cross_city where driverId = a.id and state !=10  and to_days(insertTime) = to_days(now())) +
         (select count(id) from t_order_logistics where driverId = a.id and state in (6, 9) and to_days(insertTime) = to_days(now()))
         ) as dayNum,
         (
-        (select count(id) from t_order_private_car where driverId = a.id and state in (7, 8, 9) and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
-        (select count(id) from t_order_taxi where driverId = a.id and state in (7, 8, 9) and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
-        (select count(id) from t_order_cross_city where driverId = a.id and state in (6, 8, 9) and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
+        (select count(id) from t_order_private_car where driverId = a.id and state !=10  and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
+        (select count(id) from t_order_taxi where driverId = a.id and state !=10  and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
+        (select count(id) from t_order_cross_city where driverId = a.id and state !=10  and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m')) +
         (select count(id) from t_order_logistics where driverId = a.id and state in (6, 9) and DATE_FORMAT(insertTime, '%Y%m') = DATE_FORMAT(now(), '%Y%m'))
         ) as mouthNum,
         ((select sum(fraction) from t_order_evaluate where driverId = a.id) / (select count(fraction) from t_order_evaluate where driverId = a.id)) as score,
@@ -364,11 +556,14 @@
         (select count(id) from t_order_logistics where driverId = a.id and state in (6, 9))
         ) as orderNum,
         ((select sum(fraction) from t_order_evaluate where driverId = a.id) / (select count(fraction) from t_order_evaluate where driverId = a.id)) as score,
-        if((select id from t_merchant where auditStatus = 2 and userType = 2 and userId = a.id and state = 1) is null, 0, 1) as merchant
+        if((select id from t_merchant where auditStatus = 2 and userType = 2 and userId = a.id and state = 1) is null, 0, 1) as merchant,
+        a.companyId as companyId,
+        e.name as companyName
         from t_driver a
         left join t_car b on (a.carId = b.id)
         left join t_car_model c on (b.carModelId = c.id)
         left join t_car_brand d on (c.brandId = d.id)
+        left join t_company e on (a.companyId = e.id)
         where a.id = #{uid}
     </select>
 

--
Gitblit v1.7.1