ai-course/app/api/playedu-course/src/main/resources/mapper/jc/BookDepartmentUserMapper.xml
2025-11-29 18:46:05 +08:00

46 lines
2.0 KiB
XML

<?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="xyz.playedu.jc.mapper.BookDepartmentUserMapper">
<resultMap id="BookDepartmentUserResultMap" type="xyz.playedu.jc.domain.BookDepartmentUser">
<result column="book_id" property="bookId"/>
<result column="creator" property="creator"/>
<result column="updater" property="updater"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="tenant_id" property="tenantId"/>
</resultMap>
<sql id="Base_Column_List">
id,
book_id,
department_id,
user_id,
creator,
updater,
create_time,
update_time,
tenant_id
</sql>
<select id="chunksByDepIdsOrUserIdsOrGroupIds" resultType="xyz.playedu.jc.domain.BookDepartmentUser">
SELECT DISTINCT `jc_book_department_user`.*
FROM `jc_book_department_user`
<where>
<if test="depIds != null and !depIds.isEmpty()">
OR (`jc_book_department_user`.`range_id` IN (<foreach collection="depIds" item="tmpId" separator=",">
#{tmpId}</foreach>) AND `jc_book_department_user`.`type` = 0)
</if>
<if test="userIds != null and !userIds.isEmpty()">
OR (`jc_book_department_user`.`range_id` IN (<foreach collection="userIds" item="tmpId" separator=",">
#{tmpId}</foreach>) AND `jc_book_department_user`.`type` = 1)
</if>
<if test="groupIds != null and !groupIds.isEmpty()">
OR (`jc_book_department_user`.`range_id` IN (<foreach collection="groupIds" item="tmpId" separator=",">
#{tmpId}</foreach>) AND `jc_book_department_user`.`type` = 2)
</if>
</where>
</select>
</mapper>