<?xml version="1.0" encoding="UTF-8"?>
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<mapper namespace="com.stylefeng.guns.modular.system.dao.DriverActivityHistoryMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.stylefeng.guns.modular.system.model.DriverActivityHistory">
|
<id column="id" property="id" />
|
<result column="day" property="day" />
|
<result column="driverId" property="driverId" />
|
<result column="type" property="type" />
|
<result column="activityId" property="activityId" />
|
<result column="carryOut" property="carryOut" />
|
<result column="money" property="money" />
|
<result column="collectionTime" property="collectionTime"/>
|
<result column="insertTime" property="insertTime" />
|
</resultMap>
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
id, day, driverId, type, activityId, carryOut, money, insertTime
|
</sql>
|
<select id="getList" resultType="map" parameterType="com.baomidou.mybatisplus.plugins.Page">
|
SELECT
|
d.`name`,d.phone,h.insertTime,h.money,h.collectionTime
|
FROM
|
t_driver_activity_history h
|
LEFT JOIN t_driver d ON h.driverId = d.id
|
WHERE h.type=#{type} AND h.activityId=#{activityId} and carryOut=2
|
</select>
|
|
<select id="getListt" resultType="map">
|
SELECT
|
d.`name`,d.phone,h.insertTime,h.money,h.collectionTime
|
FROM
|
t_driver_activity_history h
|
LEFT JOIN t_driver d ON h.driverId = d.id
|
WHERE h.type=#{type} AND h.activityId=#{activityId} and h.carryOut=2
|
</select>
|
|
|
|
<select id="rewardDetailsList" resultType="map">
|
select
|
a.id,
|
DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime,
|
b.`name`,
|
if(a.type = 1 or a.type = 2, d.`name`, if(a.type = 3, f.name, if(a.type = 4, h.name, ''))) as activityName,
|
a.money
|
from t_driver_activity_history a
|
left join t_driver b on (a.driverId = b.id)
|
left join t_driver_activity_registered c on (a.activityId = c.id and a.type = 1 or a.type = 2)
|
left join t_driver_activity d on (c.driverActivityId = d.id)
|
left join t_driver_activity_online e on (a.activityId = e.id and a.type = 3)
|
left join t_driver_activity f on (e.driverActivityId = f.id)
|
left join t_driver_activity_order g on (a.activityId = g.id and a.type = 4)
|
left join t_driver_activity h on (g.driverActivityId = h.id)
|
where a.carryOut = 2 and a.money > 0
|
<if test="null != companyId">
|
and b.companyId = #{companyId}
|
</if>
|
<if test="null != driverName and '' != driverName">
|
and b.`name` like CONCAT('%', #{driverName}, '%')
|
</if>
|
<if test="null != driverPhone and '' != driverPhone">
|
and b.phone like CONCAT('%', #{driverPhone}, '%')
|
</if>
|
<if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
|
and a.insertTime between #{startTime} and #{endTime}
|
</if>
|
order by a.insertTime desc
|
<if test="null != offset and null != limit">
|
limit #{offset}, #{limit}
|
</if>
|
</select>
|
|
|
<select id="rewardDetailsListCount" resultType="int">
|
select
|
count(1)
|
from t_driver_activity_history a
|
left join t_driver b on (a.driverId = b.id)
|
left join t_driver_activity c on (a.activityId = c.id)
|
where a.carryOut = 2 and a.money > 0
|
<if test="null != companyId">
|
and b.companyId = #{companyId}
|
</if>
|
<if test="null != driverName and '' != driverName">
|
and b.`name` like CONCAT('%', #{driverName}, '%')
|
</if>
|
<if test="null != driverPhone and '' != driverPhone">
|
and b.phone like CONCAT('%', #{driverPhone}, '%')
|
</if>
|
<if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
|
and a.insertTime between #{startTime} and #{endTime}
|
</if>
|
</select>
|
|
|
<select id="rewardDetailsListSum" resultType="double">
|
select
|
sum(a.money) as money
|
from t_driver_activity_history a
|
left join t_driver b on (a.driverId = b.id)
|
left join t_driver_activity c on (a.activityId = c.id)
|
where a.carryOut = 2 and a.money > 0
|
<if test="null != companyId">
|
and b.companyId = #{companyId}
|
</if>
|
<if test="null != driverName and '' != driverName">
|
and b.`name` like CONCAT('%', #{driverName}, '%')
|
</if>
|
<if test="null != driverPhone and '' != driverPhone">
|
and b.phone like CONCAT('%', #{driverPhone}, '%')
|
</if>
|
<if test="null != startTime and '' != startTime and null != endTime and '' != endTime">
|
and a.insertTime between #{startTime} and #{endTime}
|
</if>
|
</select>
|
</mapper>
|