2024-08-15 16:25:44 +08:00
|
|
|
<?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.ai.da.mapper.primary.NotificationMapper">
|
|
|
|
|
|
|
|
|
|
<select id="getTypeCount" resultType="java.util.Map">
|
|
|
|
|
SELECT type, count(id) as count
|
|
|
|
|
FROM `t_notification`
|
|
|
|
|
WHERE receiver_id = #{receiverId}
|
|
|
|
|
AND is_read = 0
|
2024-08-19 15:10:41 +08:00
|
|
|
AND is_deleted = 0
|
2024-08-15 16:25:44 +08:00
|
|
|
GROUP BY type
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<select id="getUniqueLikeAndFollow" resultType="com.ai.da.mapper.primary.entity.Notification">
|
|
|
|
|
SELECT *
|
|
|
|
|
FROM `t_notification`
|
|
|
|
|
WHERE type = #{type}
|
|
|
|
|
AND sender_id = #{senderId}
|
|
|
|
|
AND receiver_id = #{receiverId}
|
|
|
|
|
<if test="type == 'like'">
|
|
|
|
|
AND portfolio_id = #{portfolioId}
|
|
|
|
|
</if>
|
|
|
|
|
LIMIT 1
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
<update id="updateUniqueLikeAndFollow" >
|
|
|
|
|
UPDATE `t_notification`
|
|
|
|
|
SET
|
|
|
|
|
is_read = 0,
|
|
|
|
|
create_time = #{time},
|
|
|
|
|
update_time = #{time},
|
|
|
|
|
is_deleted = 0
|
|
|
|
|
WHERE id = #{id}
|
|
|
|
|
</update>
|
|
|
|
|
|
|
|
|
|
<update id="deleteNotification" >
|
|
|
|
|
UPDATE `t_notification`
|
|
|
|
|
SET
|
|
|
|
|
update_time = #{time},
|
|
|
|
|
is_deleted = 1
|
|
|
|
|
WHERE id = #{id}
|
|
|
|
|
</update>
|
|
|
|
|
|
2024-08-16 10:32:15 +08:00
|
|
|
<update id="setPersonalNotificationAllRead">
|
|
|
|
|
update `t_notification`
|
|
|
|
|
SET
|
|
|
|
|
is_read = 1,
|
|
|
|
|
update_time = #{time}
|
|
|
|
|
WHERE type = #{type}
|
|
|
|
|
AND receiver_id = #{receiverId}
|
|
|
|
|
AND is_read = 0
|
|
|
|
|
AND is_deleted = 0
|
|
|
|
|
</update>
|
|
|
|
|
|
|
|
|
|
<select id="getUnreadSysNotification" resultType="Long">
|
|
|
|
|
SELECT id
|
|
|
|
|
FROM `t_notification`
|
|
|
|
|
WHERE type = 'system'
|
|
|
|
|
AND id NOT IN (
|
|
|
|
|
SELECT system_notification_id
|
|
|
|
|
FROM `t_sys_notification_read_status`
|
|
|
|
|
WHERE account_id = #{accountId}
|
|
|
|
|
)
|
|
|
|
|
</select>
|
|
|
|
|
|
|
|
|
|
|
2024-08-15 16:25:44 +08:00
|
|
|
</mapper>
|