<?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.sinata.rest.modular.member.dao.MemMemberGradeMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.sinata.rest.modular.member.model.MemMemberGrade">
|
<id column="id" property="id" />
|
<result column="grade_name" property="gradeName" />
|
<result column="remark" property="remark" />
|
<result column="sort" property="sort" />
|
</resultMap>
|
|
<!-- 按条件查询指定人员团队 -->
|
<select id="selectTeamMemberBy" resultType="com.sinata.rest.modular.member.model.MemUser">
|
SELECT * FROM mem_user
|
LEFT JOIN mem_user_relation ON mem_user_relation.id = mem_user.id
|
WHERE mem_user_relation.relation_path LIKE CONCAT('%/', #{memberId},'/%')
|
<if test="gradeId != null">
|
AND mem_user.member_grade_id = #{gradeId}
|
</if>
|
<if test="aboveId != null">
|
AND mem_user.member_grade_id >= #{aboveId}
|
</if>
|
ORDER BY mem_user.create_time DESC
|
</select>
|
|
<!-- 按条件查询指定人员团队人数 -->
|
<select id="countTeamMemberBy" resultType="int">
|
SELECT count(*) FROM mem_user
|
LEFT JOIN mem_user_relation ON mem_user_relation.id = mem_user.id
|
WHERE mem_user_relation.relation_path LIKE CONCAT('%/', #{memberId},'/%')
|
<if test="gradeId != null">
|
AND mem_user.member_grade_id = #{gradeId}
|
</if>
|
<if test="aboveId != null">
|
AND mem_user.member_grade_id >= #{aboveId}
|
</if>
|
</select>
|
|
<!-- 按条件查询指定直接邀请人 -->
|
<select id="selectStraitMembers" resultType="com.sinata.rest.modular.member.model.MemUser">
|
SELECT * FROM mem_user LEFT JOIN mem_user_relation ON mem_user_relation.id = mem_user.id WHERE mem_user_relation.parent_id = #{memberId}
|
<if test="gradeId != null">
|
AND mem_user.member_grade_id = #{gradeId}
|
</if>
|
<if test="aboveId != null">
|
AND mem_user.member_grade_id >= #{aboveId}
|
</if>
|
ORDER BY mem_user.create_time DESC
|
</select>
|
|
<!-- 按条件查询指定直接邀请人数 -->
|
<select id="countStraitMembers" resultType="int">
|
SELECT count(*) FROM mem_user LEFT JOIN mem_user_relation ON mem_user_relation.id = mem_user.id WHERE mem_user_relation.parent_id = #{memberId}
|
<if test="gradeId != null">
|
AND mem_user.member_grade_id = #{gradeId}
|
</if>
|
<if test="aboveId != null">
|
AND mem_user.member_grade_id >= #{aboveId}
|
</if>
|
</select>
|
|
<!-- 分页查询指定团队 -->
|
<select id="selectPagedTeamMemberBy" resultType="com.sinata.rest.modular.member.model.MemUser">
|
SELECT * FROM mem_user
|
LEFT JOIN mem_user_relation ON mem_user_relation.id = mem_user.id
|
WHERE mem_user_relation.relation_path LIKE CONCAT('%/', #{memberId},'/%')
|
<if test="gradeId != null">
|
AND mem_user.member_grade_id = #{gradeId}
|
</if>
|
<if test="aboveId != null">
|
AND mem_user.member_grade_id >= #{aboveId}
|
</if>
|
ORDER BY mem_user.create_time DESC
|
</select>
|
|
</mapper>
|