<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) 2020 yifu4cloud Authors. All Rights Reserved.
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~     http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License.
  -->

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yifu.cloud.plus.v1.yifu.admin.mapper.SysDeptMapper">
	<!-- 通用查询映射结果 -->
	<resultMap id="BaseResultMap" type="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysDept">
		<id column="deptId" property="deptId"/>
		<result column="name" property="name"/>
		<result column="parent_id" property="parentId"/>
		<result column="dept_dn" property="deptDn"/>
		<result column="sort_order" property="sortOrder"/>
		<result column="create_by" property="createBy"/>
		<result column="create_time" property="createTime"/>
		<result column="update_by" property="updateBy"/>
		<result column="update_time" property="updateTime"/>
		<result column="del_flag" property="delFlag"/>
	</resultMap>

	<select id="selectCountId" resultType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysDept">
		SELECT
		*
		from sys_dept a
		<where>
			a.dept_id = #{deptId}
		</where>
	</select>

	<select id="selectDeptDn" resultType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysDept">
		SELECT
		*
		from sys_dept a
		<where>
			a.dept_dn = #{deptDn}
		</where>
	</select>

	<update id="updateDeptById">
		update sys_dept
		<trim prefix="set" suffixOverrides=",">
			<if test="dept.name != null">name=#{dept.name},</if>
			<if test="dept.parentId != null">parent_id=#{dept.parentId},</if>
			<if test="dept.deptDn != null">dept_dn=#{dept.deptDn},</if>
			del_flag = '0',
			update_time = now()
		</trim>
		WHERE dept_id=#{dept.deptId}
	</update>
</mapper>
