<?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.example.jz.dao.ReportDao">
|
|
<select id="getPage" resultType="com.example.jz.modle.vo.ReportListVo">
|
select u.user_mobile mobile,u.user_idcard idcard,u.real_name reporterName,r.*
|
from report r
|
join user u on r.user_id = u.id
|
<where>
|
1=1
|
<if test="reportParamDto.people != ''">
|
and (u.real_name like '%${reportParamDto.people}%')
|
</if>
|
<if test="reportParamDto.phoneNumber != ''">
|
and u.user_mobile like '%${reportParamDto.phoneNumber}%'
|
</if>
|
<if test="reportParamDto.havaMaterial != ''">
|
<if test="reportParamDto.havaMaterial == 1">
|
and r.report_materials is not null
|
</if>
|
<if test="reportParamDto.havaMaterial == 0">
|
and (r.report_materials is null or r.report_materials='')
|
</if>
|
</if>
|
<if test="reportParamDto.isInGroup != null">
|
and r.is_in_group = ${reportParamDto.isInGroup}
|
</if>
|
and (r.status = 0 or r.status = 2)
|
</where>
|
order by r.ctime DESC
|
</select>
|
<select id="getReportListVoById" resultType="com.example.jz.modle.vo.ReportListVo">
|
select u.user_mobile mobile, u.user_idcard idcard, u.real_name reporterName, u.sex sex,r.*
|
from report r
|
join user u on r.user_id = u.id
|
where r.id = #{id}
|
</select>
|
<select id="getPageByGroupId" resultType="com.example.jz.modle.vo.ReportListVo">
|
select u.user_mobile mobile,u.user_idcard idcard,u.real_name reporterName,r.*
|
from report r
|
join user u on r.user_id = u.id
|
<where>
|
1=1
|
<if test="reportParamDto.people != ''">
|
and (u.real_name like '%${reportParamDto.people}%')
|
</if>
|
<if test="reportParamDto.phoneNumber != ''">
|
and u.user_mobile like '%${reportParamDto.phoneNumber}%'
|
</if>
|
<if test="reportParamDto.isInGroup != null">
|
and r.is_in_group = ${reportParamDto.isInGroup}
|
</if>
|
<if test="reportParamDto.havaMaterial !=null">
|
<if test="reportParamDto.havaMaterial == 1">
|
and r.report_materials is not null
|
</if>
|
<if test="reportParamDto.havaMaterial == 0">
|
and r.report_materials is null
|
</if>
|
</if>
|
</where>
|
and r.cause_id = #{causeId} order by r.ctime DESC limit #{size},#{current}
|
</select>
|
|
<select id="getPageByGroupIdCount" resultType="Integer">
|
select count(1) from (
|
select u.user_mobile mobile,u.user_idcard idcard,u.real_name reporterName,r.*
|
from report r
|
join user u on r.user_id = u.id
|
<where>
|
1=1
|
<if test="reportParamDto.people != ''">
|
and (u.real_name like '%${reportParamDto.people}%' or u.user_idcard like '%${reportParamDto.people}%')
|
</if>
|
<if test="reportParamDto.phoneNumber != ''">
|
and u.user_mobile like '%${reportParamDto.phoneNumber}%'
|
</if>
|
<if test="reportParamDto.isInGroup != null">
|
and r.is_in_group = ${reportParamDto.isInGroup}
|
</if>
|
<if test="reportParamDto.havaMaterial !=null">
|
<if test="reportParamDto.havaMaterial == 1">
|
and r.report_materials is not null
|
</if>
|
<if test="reportParamDto.havaMaterial == 0">
|
and r.report_materials is null
|
</if>
|
</if>
|
</where>
|
and r.cause_id = #{causeId}
|
) as reporter
|
</select>
|
|
<select id="selectListGroup" resultType="com.example.jz.modle.entity.Report">
|
SELECT
|
t1.*
|
FROM
|
report t1
|
LEFT JOIN group_user t2 ON t1.id = t2.user_id
|
where t1.user_id=#{id}
|
GROUP BY
|
t2.group_id
|
</select>
|
<select id="selectReportByReportId" resultType="com.example.jz.modle.entity.Report">
|
SELECT
|
*
|
FROM
|
`report`
|
WHERE id =#{id}
|
</select>
|
|
</mapper>
|