2017-08-15 09:47:18 +07: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" >
|
2017-08-25 10:34:41 +07:00
|
|
|
<mapper namespace="io.spring.infrastructure.mybatis.readservice.ArticleFavoritesReadService">
|
2017-08-15 09:47:18 +07:00
|
|
|
<select id="isUserFavorite" resultType="java.lang.Boolean">
|
|
|
|
select count(1) from article_favorites where user_id = #{userId} and article_id = #{articleId}
|
|
|
|
</select>
|
|
|
|
<select id="articleFavoriteCount" resultType="java.lang.Integer">
|
|
|
|
select count(1) from article_favorites where article_id = #{articleId}
|
|
|
|
</select>
|
2017-08-21 16:25:00 +07:00
|
|
|
<select id="articlesFavoriteCount" resultMap="transfer.data.favoriteCount">
|
2017-08-18 11:09:07 +07:00
|
|
|
select A.id, count(AF.user_id) as favoriteCount from articles A
|
2017-08-17 16:17:37 +07:00
|
|
|
left join article_favorites AF on A.id = AF.article_id
|
|
|
|
where id in
|
|
|
|
<foreach collection="ids" item="item" separator="," open="(" close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
group by A.id
|
|
|
|
</select>
|
|
|
|
<select id="userFavorites" resultType="java.lang.String">
|
|
|
|
select
|
|
|
|
A.id
|
|
|
|
from articles A
|
|
|
|
left join article_favorites AF on A.id = AF.article_id
|
|
|
|
where id in
|
|
|
|
<foreach collection="ids" item="item" separator="," open="(" close=")">
|
|
|
|
#{item}
|
|
|
|
</foreach>
|
|
|
|
and AF.user_id = #{currentUser.id}
|
|
|
|
</select>
|
2017-08-15 09:47:18 +07:00
|
|
|
</mapper>
|