<?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.mzl.flower.mapper.SmsTaskDetailMapper">
|
|
<select id="queryPage" resultType="com.mzl.flower.dto.response.sms.SmsPhoneResultVO">
|
select t.* from t_sms_task_detail t
|
where t.deleted= 0
|
<if test="dto.smsTaskId!=null ">
|
and t.sms_task_id = #{dto.smsTaskId}
|
</if>
|
<if test="dto.phone!=null ">
|
and t.phone like concat('%', #{dto.phone}, '%')
|
</if>
|
<if test="dto.result!=null ">
|
and t.result = #{dto.result}
|
</if>
|
</select>
|
<select id="getCountBySmsTaskId" resultType = "com.mzl.flower.dto.response.sms.SmsTaskDetailVO">
|
SELECT
|
t.id,
|
t.name as smsTaskName,
|
st.name as smsTemplateName,
|
COUNT(CASE WHEN std.result = 'success' THEN 1 END) AS successNum,
|
COUNT(CASE WHEN std.result = 'failure' THEN 1 END) AS failureNum,
|
COUNT(CASE WHEN std.result is null THEN 1 END) AS sendingNum,
|
COUNT(std.id) AS totalNum
|
FROM
|
t_sms_task t
|
LEFT JOIN t_sms_template st ON t.sms_template_id = st.id
|
LEFT JOIN t_sms_task_detail std ON t.id = std.sms_task_id
|
WHERE
|
t.deleted = '0'
|
<if test="id!=null ">
|
and t.id = #{id}
|
</if>
|
GROUP BY
|
t.id, t.name; -- 根据你需要的字段进行分组
|
</select>
|
|
</mapper>
|