xiangpei
2024-07-08 c447386e06ce5927fb6e3ccb22ee673535b3f566
src/main/resources/mapper/ExamPaperMapper.xml
@@ -439,9 +439,9 @@
  </select>
    <select id="list" resultType="com.mindskip.xzs.domain.ExamPaper">
    select id, name from t_exam_paper
    <if test="deptIds != null and deptIds.size() > 0">
    select id, name, paper_type, create_time from t_exam_paper
    where paper_type != 7
    <if test="deptIds != null and deptIds.size() > 0">
    and dept_id in
    <foreach collection="deptIds" item="item" open="(" separator="," close=")">
        #{item}
@@ -449,6 +449,17 @@
    </if>
    order by create_time desc
    </select>
  <select id="template" resultType="com.mindskip.xzs.domain.ExamPaper">
    select id, name, paper_type, ctime as create_time from t_exam_templates
    <if test="deptIds != null and deptIds.size() > 0">
    where dept_id in
    <foreach collection="deptIds" item="item" open="(" separator="," close=")">
      #{item}
    </foreach>
    </if>
    order by ctime desc
  </select>
    <select id="selectStudent" resultType="com.mindskip.xzs.domain.vo.UserVO" parameterType="com.mindskip.xzs.domain.vo.UserVO">
      SELECT
@@ -459,9 +470,6 @@
          left join t_user_department c on a.id = c.user_id
      where
          user_name != 'admin' and a.status != 2 and a.deleted = 0 and (a.`condition` = 0 or a.`condition` is null)
          <if test="tagId != null and tagId != ''">
             and b.tag_id = #{tagId}
          </if>
          <if test="deptIds != null and deptIds.size > 0">
            and c.department_id in
            <foreach collection="deptIds" open="(" separator="," close=")" item="deptId">
@@ -469,6 +477,20 @@
            </foreach>
          </if>
      group by a.id, a.real_name
        <if test="(tagIds != null and tagIds.size > 0) or (excludeTagIds != null and excludeTagIds.size > 0)">
        having
        </if>
        <if test="tagIds != null and tagIds.size > 0">
          <foreach collection="tagIds" open="(" separator="or" close=")" item="item">
            find_in_set(#{item}, group_concat(b.tag_id))
          </foreach>
        </if>
        <if test="excludeTagIds != null and excludeTagIds.size > 0">
          <if test="tagIds != null and tagIds.size > 0">and</if>
          <foreach collection="excludeTagIds" open="(" separator="and" close=")" item="item">
            not find_in_set(#{item}, group_concat(b.tag_id))
          </foreach>
        </if>
      order by a.id
    </select>