ImGroupMemberAuditMapper.xml 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  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="com.yonge.cooleshow.biz.dal.dao.ImGroupMemberAuditDao">
  4. <resultMap id="BaseResultMap" type="com.yonge.cooleshow.biz.dal.entity.ImGroupMemberAudit">
  5. <id column="id_" jdbcType="INTEGER" property="id"/>
  6. <result column="user_id_" jdbcType="INTEGER" property="userId"/>
  7. <result column="role_type_" jdbcType="VARCHAR" property="roleType"/>
  8. <result column="group_id_" jdbcType="VARCHAR" property="groupId"/>
  9. <result column="desc_" jdbcType="VARCHAR" property="desc"/>
  10. <result column="audit_status_" jdbcType="VARCHAR" property="auditStatus"/>
  11. <result column="create_time_" jdbcType="TIMESTAMP" property="createTime"/>
  12. <result column="update_time_" jdbcType="TIMESTAMP" property="updateTime"/>
  13. </resultMap>
  14. <resultMap id="ImGroupMemberAuditDto" type="com.yonge.cooleshow.biz.dal.dto.ImGroupMemberAuditDto" extends="BaseResultMap">
  15. <result property="username" column="username_"/>
  16. <result property="avatar" column="avatar_"/>
  17. </resultMap>
  18. <sql id="Base_Column_List">
  19. id_
  20. , user_id_, role_type_, group_id_, desc_, audit_status_, create_time_, update_time_
  21. </sql>
  22. <insert id="insertBatch" keyColumn="id_" keyProperty="id" useGeneratedKeys="true"
  23. parameterType="com.yonge.cooleshow.biz.dal.entity.ImGroupMemberAudit">
  24. insert into im_group_member_audit(user_id_, role_type_, group_id_, desc_, audit_status_,
  25. create_time_, update_time_)
  26. values
  27. <foreach collection="entities" item="entity" separator=",">
  28. (#{entity.userId}, #{entity.roleType}, #{entity.groupId}, #{entity.desc},
  29. #{entity.auditStatus}, NOW(), NOW())
  30. </foreach>
  31. </insert>
  32. <update id="batchUpdateAuditStatus">
  33. UPDATE im_group_member_audit SET audit_status_ = #{auditStatus},update_time_ = NOW()
  34. WHERE FIND_IN_SET(id_,#{auditIds})
  35. </update>
  36. <delete id="delByGroupId">
  37. DELETE FROM im_group_member_audit WHERE group_id_ = #{groupId}
  38. </delete>
  39. <select id="findOne" resultMap="BaseResultMap">
  40. SELECT <include refid="Base_Column_List"/> FROM im_group_member_audit
  41. <where>
  42. <if test="groupId != null">
  43. AND group_id_ = #{groupId}
  44. </if>
  45. <if test="userId != null">
  46. AND user_id_ = #{userId}
  47. </if>
  48. <if test="auditStatus != null and auditStatus != ''">
  49. AND audit_status_ = #{auditStatus}
  50. </if>
  51. </where>
  52. LIMIT 1
  53. </select>
  54. <select id="queryAll" resultMap="ImGroupMemberAuditDto">
  55. SELECT gma.*,su.avatar_,CASE WHEN gma.role_type_ = 'STUDENT' THEN su.username_ ELSE su.real_name_ END username_
  56. FROM im_group_member_audit gma
  57. LEFT JOIN sys_user su ON su.id_ = gma.user_id_
  58. <where>
  59. <if test="params.auditStatus != null and params.auditStatus != ''">
  60. AND gma.audit_status_ = #{params.auditStatus}
  61. </if>
  62. <if test="params.groupId != null">
  63. AND gma.group_id_ = #{params.groupId}
  64. </if>
  65. <if test="params.userId != null">
  66. AND gma.user_id_ = #{params.userId}
  67. </if>
  68. </where>
  69. ORDER BY gma.id_ DESC
  70. </select>
  71. <select id="findByIds" resultMap="BaseResultMap">
  72. SELECT <include refid="Base_Column_List"/> FROM im_group_member_audit WHERE FIND_IN_SET(id_,#{auditIds})
  73. </select>
  74. <select id="selectAuditUserInfo" resultType="com.yonge.cooleshow.biz.dal.vo.AuditUserInfo">
  75. select distinct
  76. su.id_ as auditUserId,
  77. su.phone_ as auditUserPhone,
  78. ig.name_ as groupName,
  79. su2.id_ as groupUserId,
  80. su2.username_ as groupUsername
  81. from im_group_member_audit igma
  82. left join im_group ig on ig.id_ = igma.group_id_
  83. left join sys_user su on igma.user_id_ = su.id_
  84. left join sys_user su2 on ig.create_by_ = su.id_
  85. where igma.id_ in ( #{auditIds})
  86. </select>
  87. </mapper>