<?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.cloudroam.mapper.GroupMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.cloudroam.model.GroupDO">
|
<id column="id" property="id"/>
|
<result column="name" property="name"/>
|
<result column="info" property="info"/>
|
<result column="level" property="level" typeHandler="com.baomidou.mybatisplus.core.handlers.MybatisEnumTypeHandler"/>
|
<result column="create_time" property="createTime"/>
|
<result column="update_time" property="updateTime"/>
|
<result column="is_deleted" property="isDeleted"/>
|
</resultMap>
|
|
|
<select id="selectGroupsByUserId" parameterType="java.lang.Integer" resultMap="BaseResultMap">
|
SELECT g.id, g.name, g.info,g.level,
|
g.create_time,g.update_time,g.delete_time
|
from lin_group AS g
|
WHERE
|
g.is_deleted = 0
|
AND
|
g.id IN
|
(
|
SELECT ug.group_id
|
FROM lin_user AS u
|
LEFT JOIN lin_user_group as ug
|
ON ug.user_id = u.id
|
WHERE u.id = #{userId}
|
AND u.is_deleted = 0
|
)
|
</select>
|
|
<select id="selectUserGroupIds" parameterType="java.lang.Integer" resultType="java.lang.Integer">
|
SELECT g.id
|
from lin_group AS g
|
WHERE
|
g.is_deleted = 0
|
AND
|
g.id IN
|
(
|
SELECT ug.group_id
|
FROM lin_user AS u
|
LEFT JOIN lin_user_group as ug
|
ON ug.user_id = u.id
|
WHERE u.id = #{userId}
|
AND u.is_deleted = 0
|
)
|
</select>
|
|
<select id="selectCountById" parameterType="java.lang.Integer" resultType="java.lang.Integer">
|
SELECT COUNT(*) AS count FROM lin_group WHERE is_deleted = 0 AND id = #{id}
|
</select>
|
|
<select id="selectCountUserByUserIdAndGroupName" resultType="java.lang.Integer">
|
SELECT COUNT(*) AS count
|
FROM lin_user_group AS ug
|
WHERE
|
ug.user_id = #{userId}
|
AND
|
ug.group_id =
|
(SELECT g.id FROM lin_group AS g WHERE g.name = #{groupName} AND g.is_deleted = 0)
|
</select>
|
|
</mapper>
|