You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
96 lines
3.2 KiB
96 lines
3.2 KiB
<?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.epmet.dao.MemoAttrDao">
|
|
|
|
<select id="memosToRemind" resultType="com.epmet.dto.result.MemosToRemindResultDTO">
|
|
SELECT a.memoId, a.remindTime, a.type, a.typeName, a.content FROM (
|
|
SELECT
|
|
ma.id memoId,
|
|
ma.remind_time remindTime,
|
|
ma.type type,
|
|
'人员关怀' typeName,
|
|
mc.content content
|
|
FROM
|
|
memo_attr ma
|
|
INNER JOIN memo_concern mc ON ma.type = 'concern' AND ma.id = mc.id
|
|
WHERE
|
|
ma.del_flag = '0'
|
|
AND mc.del_flag = '0'
|
|
AND ma.read_flag = '0'
|
|
AND ma.receiver = #{userId}
|
|
<choose>
|
|
<when test='remindTime != "" and remindTime != null'>
|
|
AND ma.remind_time = #{remindTime}
|
|
</when>
|
|
<otherwise>
|
|
AND ma.remind_time <![CDATA[<=]]> NOW()
|
|
</otherwise>
|
|
</choose>
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
ma.id memoId,
|
|
ma.remind_time remindTime,
|
|
ma.type type,
|
|
'难点堵点' typeName,
|
|
md.content content
|
|
FROM
|
|
memo_attr ma
|
|
INNER JOIN memo_difficulty md ON ma.type = 'difficulty' AND ma.id = md.id
|
|
WHERE
|
|
ma.del_flag = '0'
|
|
AND md.del_flag = '0'
|
|
AND ma.read_flag = '0'
|
|
AND ma.receiver = #{userId}
|
|
<choose>
|
|
<when test='remindTime != "" and remindTime != null'>
|
|
AND ma.remind_time = #{remindTime}
|
|
</when>
|
|
<otherwise>
|
|
AND ma.remind_time <![CDATA[<=]]> NOW()
|
|
</otherwise>
|
|
</choose>
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
ma.id memoId,
|
|
ma.remind_time remindTime,
|
|
ma.type type,
|
|
'工作日志' typeName,
|
|
mwd.content content
|
|
FROM
|
|
memo_attr ma
|
|
INNER JOIN memo_work_diary mwd ON ma.type = 'work_diary' AND ma.id = mwd.id
|
|
WHERE
|
|
ma.del_flag = '0'
|
|
AND mwd.del_flag = '0'
|
|
AND ma.read_flag = '0'
|
|
AND ma.receiver = #{userId}
|
|
<choose>
|
|
<when test='remindTime != "" and remindTime != null'>
|
|
AND ma.remind_time = #{remindTime}
|
|
</when>
|
|
<otherwise>
|
|
AND ma.remind_time <![CDATA[<=]]> NOW()
|
|
</otherwise>
|
|
</choose>
|
|
) a ORDER BY a.remindTime ASC
|
|
</select>
|
|
|
|
<select id="memoTime" resultType="java.lang.String">
|
|
SELECT DISTINCT
|
|
DATE_FORMAT(remind_time, '%Y-%m-%d %H:%i') remindTime
|
|
FROM
|
|
memo_attr
|
|
WHERE
|
|
del_flag = '0'
|
|
AND receiver = #{userId}
|
|
AND remind_time > NOW()
|
|
AND remind_time <![CDATA[<]]> CURDATE() + 1
|
|
ORDER BY remind_time ASC
|
|
</select>
|
|
|
|
</mapper>
|