wms/nflg-wms-repository/src/main/resources/mapper/QmsIssueTicketToDoMapper.xml

35 lines
1.4 KiB
XML

<?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.nflg.wms.repository.mapper.QmsIssueTicketToDoMapper">
<select id="search" resultType="com.nflg.wms.common.pojo.vo.QmsTodoItemVO">
SELECT
CASE
WHEN vit."type" = 0 THEN 0
WHEN vit.handler_user_id = #{userId} THEN 1
WHEN vit.approval_user_id = #{userId} THEN 2
END AS type,
vit.*
FROM qms_issue_ticket_todo itd
INNER JOIN v_qms_issue_ticket vit ON itd.ticket_id = vit.ticket_id
where itd.handler_user_id = #{userId} and (vit.handler_user_id=#{userId} or vit.approval_user_id=#{userId})
<if test="request.sourceType != null">
AND vit.source_type = #{request.sourceType}
</if>
<if test="request.ticketTitle != null and request.ticketTitle != ''">
AND vit.ticket_title ilike concat('%', #{request.ticketTitle}, '%')
</if>
<if test="request.hasProcessed != null">
AND itd.has_processed = #{request.hasProcessed}
</if>
<if test="request.startDate != null">
AND vit.create_time &gt;= #{request.startDate}
</if>
<if test="request.endDate != null">
AND vit.create_time &lt;= #{request.endDate}
</if>
ORDER BY itd.id DESC
</select>
</mapper>