Pu Zhibing
2025-03-28 8b09fbc19a96b57bf1d0e4d7c79b51a76aeca554
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/smallLogistics/dao/mapping/OrderLogisticsMapper.xml
@@ -128,7 +128,8 @@
        trackId as trackId,
        isDelete as isDelete,
        telX as telX,
        bindId as bindId
        bindId as bindId,
        tripId
        from t_order_logistics where isDelete = 1
        <if test="null != start and null != end">
            and insertTime between #{start} and #{end}
@@ -151,14 +152,19 @@
        DATE_FORMAT(travelTime, '%Y-%m-%d %H:%i') as time,
        endAddress as endAddress,
        startAddress as startAddress,
        CONCAT(if(#{language} = 1, if(cargoType = 1, '普通小件', '贵重物品'), if(#{language} = 2, if(cargoType = 1, 'Common goods', 'valuables'), if(cargoType = 1, 'Les articles ordinaires', 'Objets de valeur'))), 'X', cargoNumber) as cargoType,
        CONCAT(if(#{language} = 1, if(cargoType = 1, '包裹', '贵重物品'), if(#{language} = 2, if(cargoType = 1, 'Package', 'valuables'), if(cargoType = 1, 'Colis', 'Objets de valeur'))), '*', cargoNumber) as cargoType,
        driverId as driverId,
        `type` as orderType,
        state as state,
        orderMoney as orderMoney,
        payMoney as payMoney,
        (select price from t_order_logistics_spread where orderLogisticsId = a.id) as differenceMoney
        from t_order_logistics as a where userId = #{uid} order by insertTime desc limit #{pageNum}, #{size}
        ifnull(discountMoney, 0) as discountMoney,
        (select price from t_order_logistics_spread where orderLogisticsId = a.id) as differenceMoney,
        cancelMidway,
        tripId,
        remark,
        companyId
        from t_order_logistics as a where userId = #{uid} and isDelete = 1 order by insertTime desc limit #{pageNum}, #{size}
    </select>
@@ -169,7 +175,7 @@
        DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
        if(type = 4, '包裹订单', '跨城小件物流') as name,
        UNIX_TIMESTAMP(insertTime) as insertTime
        from t_order_logistics where payMoney != 0 and userId = #{uid} and state not in (7, 10)
        from t_order_logistics where payMoney != 0 and userId = #{uid} and state not in (7, 10) and payType = 3
        union all
@@ -180,7 +186,7 @@
        UNIX_TIMESTAMP(a.payTime) as insertTime
        from t_order_logistics_spread a
        left join t_order_logistics b on (a.orderLogisticsId = b.id)
        where a.payTime is not null and b.userId = #{uid}
        where a.payTime is not null and b.userId = #{uid} and a.payType = 3
        ) as aa order by aa.time desc
    </select>
@@ -225,7 +231,7 @@
        a.state as state,
        a.oldState as oldState,
        DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime,
        DATE_FORMAT(a.travelTime, '%m月%d日 %H:%i') as travelTime,
        DATE_FORMAT(a.travelTime, '%m-%d %H:%i') as travelTime,
        DATE_FORMAT(a.arriveTime, '%Y-%m-%d %H:%i:%s') as arriveTime,
        DATE_FORMAT(a.travelTime, '%Y-%m-%d %H:%i:%s') as travelTime1,
        a.startLon as startLon,
@@ -235,24 +241,39 @@
        a.endLat as endLat,
        a.endAddress as endAddress,
      a.driverId as driverId,
      a.orderMoney as orderMoney,
      a.redPacketMoney as redPacketMoney,
      a.couponMoney as couponMoney,
      a.discountMoney as discountMoney,
      a.payMoney as payMoney,
        a.orderMoney as orderMoney,
        a.startMileage as startMileage,
        a.mileage as mileage,
        a.startMoney as startMoney,
        a.mileageKilometers as mileageKilometers,
        a.mileageMoney as mileageMoney,
        a.duration as duration,
        a.durationMoney as durationMoney,
        a.wait as wait,
        a.waitMoney as waitMoney,
        a.longDistance as longDistance,
        a.longDistanceMoney as longDistanceMoney,
        a.parkMoney as parkMoney,
        a.roadTollMoney as roadTollMoney,
        a.redPacketMoney as redPacketMoney,
        a.couponMoney as couponMoney,
        a.discount as discount,
        a.discountMoney as discountMoney,
        a.priceDifference,
        a.payType,
        a.payMoney as payMoney,
        a.remark as remark,
        a.companyId,
      b.headImgUrl as driverAvatar,
      CONCAT(b.firstName, " ", b.lastName) as driverName,
      c.carLicensePlate as licensePlate,
      c.carColor as carColor,
      CONCAT(f.`name`, d.`name`) as brand,
      ((select sum(fraction) from t_order_evaluate where driverId = a.driverId) / (select count(id) from t_order_evaluate where driverId = a.driverId)) as score,
      (
      (select count(id) from t_order_private_car where driverId = a.driverId and state in (7, 8, 9)) +
      (select count(id) from t_order_taxi where driverId = a.driverId and state in (7, 8, 9)) +
      (select count(id) from t_order_cross_city where driverId = a.driverId and state in (6, 8, 9)) +
      (select count(id) from t_order_logistics where driverId = a.driverId and state in (6, 9))
      ) as orderNum,
        (
        (select count(id) from t_order_private_car where driverId = a.driverId and state in (6, 7, 8, 9)) +
        (select count(id) from t_order_logistics where driverId = a.driverId and state in (6, 7, 8, 9))
        ) as orderNum,
      b.phone as driverPhone,
      if(a.state = 10, (select money from t_order_cancel where orderId = a.id and orderType = a.type and state = 1 order by insertTime desc limit 0, 1), if(a.state = 10, (select money from t_order_cancel where orderId = a.id and orderType = a.type and state = 2 order by insertTime desc limit 0, 1), 0)) as cancelPayMoney,
      if(a.state = 10, (select id from t_order_cancel where orderId = a.id and orderType = a.type and state = 1 order by insertTime desc limit 0, 1), 0) as cancelId,
@@ -262,7 +283,10 @@
      h.userType as cancelUserType,
      h.money as cancelMoney,
      h.reason as cancelReason,
      h.remark as cancelRemark
      h.remark as cancelRemark,
        a.tripId,
        a.snatchOrderTime,
        a.startDuration
        from t_order_logistics a
      left join t_driver b on (a.driverId = b.id)
      left join t_car c on (a.carId = c.id)
@@ -272,4 +296,32 @@
      left join t_order_cancel h on (a.id = h.orderId and h.orderType = a.type and h.state = 2)
      where a.id = #{orderId}
    </select>
    <select id="queryRedEnvelope" resultType="map">
        select
            redPacketMoney as money,
            DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as time,
        ('包裹') as name,
        UNIX_TIMESTAMP(insertTime) as insertTime
        from t_order_logistics where userId = #{uid} and redPacketId is not null
    </select>
    <select id="queryByState" resultType="OrderLogistics">
        select *
        from t_order_logistics where isDelete = 1 and isFrozen = 1 and userId = #{uid}
        <if test="null != orderType">
            and orderType = #{orderType}
        </if>
        <if test="null != state">
            and state in
            <foreach collection="state" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
        <if test="null != type">
            and `type` = #{type}
        </if>
    </select>
</mapper>