UserContactMapper.xml 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="cn.reghao.tnb.user.app.db.mapper.UserContactMapper">
  4. <insert id="save" useGeneratedKeys="true" keyProperty="id">
  5. insert into user_contact
  6. (`friend_id`,`remark_name`,`status`,`owner`)
  7. values
  8. (#{friendId},#{remarkName},#{status},#{owner})
  9. </insert>
  10. <insert id="saveAll" useGeneratedKeys="true" keyProperty="id">
  11. insert into user_contact
  12. (`friend_id`,`remark_name`,`status`,`owner`)
  13. values
  14. <foreach collection="list" item="item" index="index" separator=",">
  15. (#{item.friendId},#{item.remarkName},#{item.status},#{item.owner})
  16. </foreach>
  17. </insert>
  18. <update id="updateContactStatus">
  19. update user_contact
  20. set update_time=now(),`status`=#{status}
  21. where friend_id=#{userId}
  22. </update>
  23. <update id="updateFriendStatus">
  24. update user_contact
  25. set update_time=now(),`status`=#{status}
  26. where `owner`=#{owner} and friend_id=#{userId}
  27. </update>
  28. <update id="updateContactRemark">
  29. update user_contact
  30. set update_time=now(),`remark_name`=#{remarkName}
  31. where owner=#{owner} and friend_id=#{friendId}
  32. </update>
  33. <select id="findByOwner" resultType="cn.reghao.tnb.user.app.model.po.UserContact">
  34. select *
  35. from user_contact
  36. where owner=#{owner}
  37. </select>
  38. <select id="findByOwnerAndFriendId" resultType="cn.reghao.tnb.user.app.model.po.UserContact">
  39. select *
  40. from user_contact
  41. where `status`=1 and owner=#{owner} and friend_id=#{friendId}
  42. </select>
  43. <select id="findOnlineFriends" resultType="java.lang.Long">
  44. select friend_id
  45. from user_contact
  46. where `owner`=#{owner} and `status`=1
  47. </select>
  48. <select id="findFriendsByNotInGroup" resultType="cn.reghao.tnb.user.app.model.po.UserContact">
  49. select *
  50. from user_contact contact
  51. where contact.user_id=#{userId} and contact.friend_id not in
  52. (select user_id from group_member where group_id=#{groupId} and user_id!=#{userId})
  53. </select>
  54. </mapper>