From 05e13dc68b3db44868d9e02a10ccc330366a49c6 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期二, 08 八月 2023 11:58:36 +0800
Subject: [PATCH] 修改bug
---
management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml | 328 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 320 insertions(+), 8 deletions(-)
diff --git a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
index 0a1fd14..41da08c 100644
--- a/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
+++ b/management/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderMapper.xml
@@ -58,10 +58,18 @@
<sql id="Base_Column_Order">
o.id, o.code, o.userId, o.driverId, o.`source`, o.agentId, o.branchOfficeId, o.startTime, o.startAddress, o.startLat, o.startLng, o.endAddress, o.endLat, o.endLng,
- o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime,
- o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice,
-o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice,a.nickname AS userName,
- a.phone AS userPhone,a.cancelCount,a.status AS userStatus,d.name AS driverName,d.phone AS driverPhone
+ o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime,
+ o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice,
+ o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice,
+ o.userPhone,o.userName,a.cancelCount,a.status AS userStatus,d.name AS driverName,d.phone AS driverPhone
+ </sql>
+
+ <sql id="Base_Column_Server_Order">
+ o.id, o.code, o.userId, o.driverId, o.`source`, o.agentId, o.branchOfficeId, o.startTime, o.startAddress, o.startLat, o.startLng, o.endAddress, o.endLat, o.endLng,
+ o.boardingTime, o.getoffTime, o.estimatedPrice, o.orderMoney, o.payMoney, o.discountedPrice, o.couponId, o.payType, o.payTime, o.`state`, o.status, o.createTime,
+ o.startDistance,o.startPrice,o.overDriveDistance,o.overDrivePrice,o.longDistance,o.longDistancePrice,o.overLongDistance,o.overLongDistancePrice,
+ o.waitTime,o.waitTimePrice,o.outWaitTime,o.outWaitTimePrice,o.badWeatherDistance,o.badWeatherPrice,o.overBadWeatherDistance,o.overBadWeatherPrice,
+ o.userPhone,o.userName,d.name AS driverName,d.phone AS driverPhone
</sql>
<select id="getOrderList" resultType="com.stylefeng.guns.modular.system.controller.resp.TOrderResp">
@@ -91,9 +99,6 @@
<if test="driverName != null and driverName != ''">
AND d.name LIKE concat('%',#{driverName},'%')
</if>
- <if test="isException != null">
- AND a.is_exception = #{isException}
- </if>
<if test="roleType != null and roleType == 2">
AND o.branchOfficeId = #{objectId}
</if>
@@ -101,7 +106,314 @@
AND o.agentId = #{objectId}
</if>
</where>
- ORDER BY o.createTime
+ ORDER BY o.createTime DESC
+ </select>
+ <select id="getDataStatisticsByYear" resultType="com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp">
+ SELECT date_format(createTime, '%m') AS `month`,COUNT(id) AS orderCount
+ FROM t_order
+ <where>
+ <if test="agentId != null">
+ AND agentId = #{agentId}
+ </if>
+ <if test="yearDate != null and yearDate != ''">
+ AND date_format(createTime, '%Y') LIKE concat('',#{yearDate},'%')
+ </if>
+ </where>
+ GROUP BY `month`
+ </select>
+ <select id="getDataStatisticsOrderCount" resultType="com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp">
+ SELECT date_format(o.payTime, '%Y-%m') AS monthTime,COUNT(o.id) AS amount,d.userName
+ FROM t_order o
+ LEFT JOIN (SELECT id,name AS userName from t_driver) d ON o.driverId = d.id
+ <where>
+ <if test="agentId != null">
+ AND o.agentId = #{agentId}
+ </if>
+ <if test="monthDate != null and monthDate != ''">
+ AND date_format(o.payTime, '%Y-%m') LIKE concat('',#{monthDate},'%')
+ </if>
+ AND (o.`state` = 107 OR o.`state` = 108 OR o.`state` = 109)
+ AND d.userName is not null
+ </where>
+ GROUP BY monthTime,userName
+ ORDER BY amount DESC
+ LIMIT 10
+ </select>
+ <select id="getDataStatisticsCount" resultType="java.lang.Integer">
+ SELECT COUNT(id)
+ FROM t_order
+ <where>
+ <if test="agentId != null">
+ AND agentId = #{agentId}
+ </if>
+ <if test="type != null">
+ AND `state` = #{type}
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ </where>
+ </select>
+ <select id="getDataStatisticsServerCount" resultType="java.lang.Integer">
+ SELECT COUNT(id)
+ FROM t_order
+ <where>
+ <if test="agentId != null">
+ AND agentId = #{agentId}
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ AND (`state` = 102
+ OR `state` = 103
+ OR `state` = 104
+ OR `state` = 105
+ OR `state` = 106
+ OR `state` = 201
+ OR `state` = 401
+ )
+ </where>
+ </select>
+ <select id="getDataStatisticsServerList" resultType="com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp">
+ select <include refid="Base_Column_Server_Order"></include>
+ FROM t_order o
+ LEFT JOIN t_driver d ON o.driverId = d.id
+ <where>
+ <if test="agentId != null">
+ AND o.agentId = #{agentId}
+ </if>
+ <if test="localDate != null">
+ AND date_format(o.createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ AND (o.`state` = 102
+ OR o.`state` = 103
+ OR o.`state` = 104
+ OR o.`state` = 105
+ OR o.`state` = 106
+ OR o.`state` = 201
+ OR o.`state` = 401
+ )
+ </where>
+ </select>
+ <select id="getDataStatisticsAllList" resultType="com.stylefeng.guns.modular.system.model.TOrder">
+ select <include refid="Base_Column_List"></include>
+ FROM t_order
+ <where>
+ <if test="agentId != null">
+ AND agentId = #{agentId}
+ </if>
+ <if test="type != null and type == 1">
+ AND `state` = 101
+ </if>
+ <if test="type != null and type == 2">
+ AND (`state` = 102
+ OR `state` = 103
+ OR `state` = 104
+ OR `state` = 105
+ OR `state` = 106
+ OR `state` = 201
+ OR `state` = 401
+ )
+ </if>
+ <if test="type != null and type == 3">
+ AND (`state` = 107 OR `state` = 108 OR `state` = 109)
+ </if>
+ <if test="type != null and type == 4">
+ AND `state` = 301
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ </where>
+ </select>
+ <select id="getDataStatisticsCountByIds" resultType="java.lang.Integer">
+ SELECT COUNT(id)
+ FROM t_order
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="type == 1">
+ AND `state` = 101
+ </if>
+ <if test="type == 2">
+ AND (`state` = 107
+ OR `state` = 108
+ OR `state` = 109)
+ </if>
+ <if test="type == 3">
+ AND `state` = 301
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ </where>
+ </select>
+ <select id="getDataStatisticsServerCountByIds" resultType="java.lang.Integer">
+ SELECT COUNT(id)
+ FROM t_order
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ AND (`state` = 102
+ OR `state` = 103
+ OR `state` = 104
+ OR `state` = 105
+ OR `state` = 106
+ OR `state` = 201
+ OR `state` = 401
+ )
+ </where>
+ </select>
+ <select id="getDataStatisticsServerListByIds" resultType="com.stylefeng.guns.modular.system.controller.resp.TOrderServerResp">
+ select <include refid="Base_Column_Server_Order"></include>
+ FROM t_order o
+ LEFT JOIN t_driver d ON o.driverId = d.id
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND o.agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="localDate != null">
+ AND date_format(o.createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ AND (o.`state` = 102
+ OR o.`state` = 103
+ OR o.`state` = 104
+ OR o.`state` = 105
+ OR o.`state` = 106
+ OR o.`state` = 201
+ OR o.`state` = 401
+ )
+ </where>
+ </select>
+ <select id="getDataStatisticsAllListByIds" resultType="com.stylefeng.guns.modular.system.model.TOrder">
+ select <include refid="Base_Column_List"></include>
+ FROM t_order
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="type != null and type == 1">
+ AND `state` = 101
+ </if>
+ <if test="type != null and type == 2">
+ AND (`state` = 102
+ OR `state` = 103
+ OR `state` = 104
+ OR `state` = 105
+ OR `state` = 106
+ OR `state` = 201
+ OR `state` = 401
+ )
+ </if>
+ <if test="type != null and type == 3">
+ AND (`state` = 107 OR `state` = 108 OR `state` = 109)
+ </if>
+ <if test="type != null and type == 4">
+ AND `state` = 301
+ </if>
+ <if test="localDate != null">
+ AND date_format(createTime, '%Y-%m-%d') LIKE concat('',#{localDate},'%')
+ </if>
+ </where>
+ </select>
+ <select id="getDataStatisticsByYearByIds" resultType="com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp">
+ SELECT date_format(createTime, '%m') AS `month`,COUNT(id) AS orderCount
+ FROM t_order
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="yearDate != null and yearDate != ''">
+ AND date_format(createTime, '%Y') LIKE concat('',#{yearDate},'%')
+ </if>
+ </where>
+ GROUP BY `month`
+ </select>
+ <select id="getDataStatisticsOrderCountByIds" resultType="com.stylefeng.guns.modular.system.controller.resp.PerformanceTableResp">
+ SELECT date_format(o.createTime, '%Y-%m') AS monthTime,COUNT(o.id) AS amount,d.userName
+ FROM t_order o
+ LEFT JOIN (SELECT id,name AS userName from t_driver) d ON o.driverId = d.id
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND o.agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="monthDate != null and monthDate != ''">
+ AND date_format(o.createTime, '%Y-%m') LIKE concat('',#{monthDate},'%')
+ </if>
+ AND (o.`state` = 107 OR o.`state` = 108 OR o.`state` = 109)
+ AND d.userName is not null
+ </where>
+ GROUP BY monthTime,userName
+ ORDER BY amount DESC
+ LIMIT 10
+ </select>
+ <select id="getStatisticsOrderByMonth" resultType="com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp">
+ SELECT date_format(createTime, '%d') AS `month`,COUNT(id) AS orderCount
+ FROM t_order
+ <where>
+ <if test="agentId != null">
+ AND agentId = #{agentId}
+ </if>
+ <if test="dayDate != null and dayDate != ''">
+ AND date_format(createTime, '%Y-%m') LIKE concat('',#{dayDate},'%')
+ </if>
+ </where>
+ GROUP BY `month`
+ </select>
+ <select id="getStatisticsOrderByMonthIds" resultType="com.stylefeng.guns.modular.system.controller.resp.DataStatisticsOrderYearResp">
+ SELECT date_format(createTime, '%d') AS `month`,COUNT(id) AS orderCount
+ FROM t_order
+ <where>
+ <if test="ids != null and ids.size() > 0">
+ AND agentId IN
+ <foreach collection="ids" close=")" open="(" item="id" separator=",">
+ #{id}
+ </foreach>
+ </if>
+ <if test="dayDate != null and dayDate != ''">
+ AND date_format(createTime, '%Y-%m') LIKE concat('',#{dayDate},'%')
+ </if>
+ </where>
+ GROUP BY `month`
+ </select>
+ <select id="getValidOrderCount" resultType="java.lang.Integer">
+ select count(id)
+ from t_order
+ <where>
+ <if test="driverId != null">
+ AND driverId = #{driverId}
+ </if>
+ <if test="orderMoney != null">
+ AND orderMoney > #{orderMoney}
+ </if>
+ <if test="month != null">
+ AND DATE_FORMAT(createTime, '%Y-%m') = #{month}
+ </if>
+ AND (`state` = 107 OR `state` = 108 OR `state` = 109)
+ </where>
</select>
</mapper>
--
Gitblit v1.7.1