heheng
2025-10-24 de7ccc09601007d9fa223755286a106828f01f1c
gkhy-system/src/main/resources/mapper/system/SysDeptMapper.xml
@@ -20,10 +20,15 @@
      <result property="createTime" column="create_time" />
      <result property="updateBy"   column="update_by"   />
      <result property="updateTime" column="update_time" />
      <result property="safety"    column="safety"    />
   </resultMap>
   <resultMap id="SysDeptDataResult" type="com.gkhy.system.domain.vo.DeptVo" extends="SysDeptResult">
      <result property="checkCount" column="check_count" />
   </resultMap>
   
   <sql id="selectDeptVo">
        select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time
        select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time,d.safety
        from sys_dept d
    </sql>
    
@@ -42,10 +47,28 @@
      <if test="status != null and status != ''">
         AND status = #{status}
      </if>
      <if test="safety != null and safety != ''">
         AND safety = #{safety}
      </if>
      <!-- 数据范围过滤 -->
      ${params.dataScope}
      order by d.parent_id, d.order_num
    </select>
   <select id="selectDeptData" parameterType="Date" resultMap="SysDeptDataResult">
      select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone,
            d.email, d.status, d.del_flag, d.create_by, d.create_time ,d.safety,
            ( select count(*) from daily_safety_inspection where del_flag = 0 and research_group = dept_id and date_format(check_date,'%Y%m') = date_format(#{beginDate},'%Y%m')) check_count
      from sys_dept d
      where d.del_flag = '0'
      order by d.parent_id, d.order_num
   </select>
    
    <select id="selectDeptListByRoleId" resultType="Long">
      select d.dept_id
@@ -59,7 +82,7 @@
   </select>
    
    <select id="selectDeptById" parameterType="Long" resultMap="SysDeptResult">
      select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,
      select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status,d.safety,
         (select dept_name from sys_dept where dept_id = d.parent_id) parent_name
      from sys_dept d
      where d.dept_id = #{deptId}
@@ -98,6 +121,7 @@
          <if test="phone != null and phone != ''">phone,</if>
          <if test="email != null and email != ''">email,</if>
          <if test="status != null">status,</if>
         <if test="safety != null">safety,</if>
          <if test="createBy != null and createBy != ''">create_by,</if>
          create_time
       )values(
@@ -110,6 +134,7 @@
          <if test="phone != null and phone != ''">#{phone},</if>
          <if test="email != null and email != ''">#{email},</if>
          <if test="status != null">#{status},</if>
         <if test="safety != null">#{safety},</if>
          <if test="createBy != null and createBy != ''">#{createBy},</if>
          sysdate()
       )
@@ -126,6 +151,7 @@
          <if test="phone != null">phone = #{phone},</if>
          <if test="email != null">email = #{email},</if>
          <if test="status != null and status != ''">status = #{status},</if>
         <if test="safety != null">safety = #{safety},</if>
          <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
          update_time = sysdate()
       </set>
@@ -156,4 +182,4 @@
      update sys_dept set del_flag = '2' where dept_id = #{deptId}
   </delete>
</mapper>
</mapper>