From 5d1d4b8516c6071a4bb69ba507f6d23eb73e8a67 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期五, 31 三月 2023 14:10:38 +0800
Subject: [PATCH] 驾驶舱接口优化
---
ycl-common/src/main/resources/mapper/user/UmsAdminMapper.xml | 179 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 179 insertions(+), 0 deletions(-)
diff --git a/ycl-common/src/main/resources/mapper/user/UmsAdminMapper.xml b/ycl-common/src/main/resources/mapper/user/UmsAdminMapper.xml
new file mode 100644
index 0000000..f422638
--- /dev/null
+++ b/ycl-common/src/main/resources/mapper/user/UmsAdminMapper.xml
@@ -0,0 +1,179 @@
+<?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.ycl.mapper.user.UmsAdminMapper">
+
+ <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 -->
+ <resultMap id="BaseResultMap" type="com.ycl.entity.user.UmsAdmin">
+ <id column="id" property="id"/>
+ <result column="username" property="username"/>
+ <result column="password" property="password"/>
+ <result column="icon" property="icon"/>
+ <result column="email" property="email"/>
+ <result column="nick_name" property="nickName"/>
+ <result column="sex" property="sex"/>
+ <result column="note" property="note"/>
+ <result column="create_time" property="createTime"/>
+ <result column="login_time" property="loginTime"/>
+ <result column="status" property="status"/>
+ <result column="mac_address" property="macAddress"/>
+ <result column="ip_address" property="ipAddress"/>
+ <result column="is_dy" property="isDy"/>
+ <result column="job_title" property="jobTitle"/>
+ <result column="user_type" property="userType"/>
+ <result column="zj" property="zj"/>
+ <result column="mobile" property="mobile"/>
+ <result column="expiration_date" property="expirationDate"/>
+ </resultMap>
+ <resultMap type="com.ycl.entity.user.UmsAdmin" id="CondMapResultMap" extends="BaseResultMap">
+ <collection property="depart" javaType="ArrayList" ofType="com.ycl.entity.depart.UmsDepart">
+ <id column="depart_id" property="id"/>
+ <result column="depart_name" property="departName"/>
+ <result column="depart_des" property="departDes"/>
+ <result column="depart_type" property="departType"/>
+ <result column="parent_id" property="parentId"/>
+ <result column="depart_status" property="status"/>
+ <result column="depart_create_time" property="createTime"/>
+ <result column="depart_update_time" property="updateTime"/>
+ <result column="is_deleted" property="isDeleted"/>
+ </collection>
+ <collection property="roles" javaType="ArrayList" ofType="com.ycl.entity.user.UmsRole">
+ <result column="role_id" property="id"/>
+ <result column="role_name" property="name"/>
+ <result column="role_description" property="description"/>
+ <result column="role_admin_count" property="adminCount"/>
+ <result column="role_create_time" property="createTime"/>
+ <result column="role_status" property="status"/>
+ <result column="role_sort" property="sort"/>
+ </collection>
+ </resultMap>
+
+ <select id="getAdminIdList" resultType="java.lang.Long">
+ SELECT DISTINCT ar.admin_id
+ FROM ums_role_resource_relation rr
+ LEFT JOIN ums_admin_role_relation ar ON rr.role_id = ar.role_id
+ WHERE rr.resource_id = #{resourceId}
+ </select>
+
+ <select id="selectCondPage" parameterType="com.ycl.entity.user.UmsAdmin" resultMap="CondMapResultMap">
+ SELECT
+ ua.*,
+ ud.id depart_id,
+ ud.depart_name,
+ ud.depart_des,
+ ud.depart_type,
+ ud.parent_id,
+ ud.create_time depat_create_time,
+ ud.update_time depat_update_time,
+ ud.STATUS depart_status,
+ ud.is_deleted,
+ r.id role_id,
+ r.`name` role_name
+ FROM
+ ums_admin ua
+ LEFT JOIN ums_depart_manager udm ON ua.id = udm.user_id
+ LEFT JOIN ums_depart ud ON udm.depart_id = ud.id
+ LEFT JOIN ums_admin_role_relation ar on ar.admin_id = ua.id
+ LEFT JOIN ums_role r on ar.role_id = r.id
+ <where>
+ <if test="umsAdmin.keyword !=null and umsAdmin.keyword !=''">
+ AND (ua.username LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.nick_name LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.mobile LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%'))
+ </if>
+ <if test="umsAdmin.userType !=null and umsAdmin.userType >=0 ">
+ AND ua.user_type = #{umsAdmin.userType}
+ </if>
+ <if test="umsAdmin.jobTitle !=null and umsAdmin.keyword !=''">
+ AND ua.job_title = #{umsAdmin.jobTitle}
+ </if>
+ </where>
+ ORDER BY
+ ua.id DESC
+ </select>
+ <select id="selectAdminRoles" parameterType="java.lang.Long" resultType="com.ycl.entity.user.UmsRole">
+ select ur.id role_id,
+ ur.name NAME,
+ ur.description,
+ ur.admin_count,
+ ur.create_time role_create_time,
+ ur.STATUS role_status,
+ ur.sort
+ from ums_admin ua
+ LEFT JOIN ums_admin_role_relation uarr ON ua.id = uarr.admin_id
+ left join ums_role ur on uarr.role_id = ur.id
+ where ua.id = #{id}
+ </select>
+ <select id="selectToExp" resultType="com.ycl.entity.user.UmsAdmin" resultMap="CondMapResultMap">
+ SELECT ua.*,
+ ud.id depart_id,
+ ud.depart_name,
+ ud.depart_des,
+ ud.depart_type,
+ ud.parent_id,
+ ud.create_time depat_create_time,
+ ud.update_time depat_update_time,
+ ud.STATUS depart_status,
+ ud.is_deleted
+ FROM ums_admin ua
+ LEFT JOIN ums_depart_manager udm ON ua.id = udm.user_id
+ LEFT JOIN ums_depart ud ON udm.depart_id = ud.id
+ ORDER BY ua.id DESC
+ </select>
+ <select id="selectCondTotal" parameterType="com.ycl.entity.user.UmsAdmin" resultType="java.lang.Long">
+ SELECT count(1) total
+ FROM
+ ums_admin ua
+ <where>
+ <if test="umsAdmin.keyword !=null and umsAdmin.keyword !=''">
+ AND (ua.username LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.nick_name LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.mobile LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%'))
+ </if>
+ <if test="umsAdmin.userType !=null and umsAdmin.userType >=0 ">
+ AND ua.user_type = #{umsAdmin.userType}
+ </if>
+ <if test="umsAdmin.jobTitle !=null and umsAdmin.keyword !=''">
+ AND ua.job_title = #{umsAdmin.jobTitle}
+ </if>
+ </where>
+ </select>
+ <select id="selectCondList" parameterType="com.ycl.entity.user.UmsAdmin" resultMap="CondMapResultMap">
+ SELECT
+ ua.*,
+ ud.id depart_id,
+ ud.depart_name,
+ ud.depart_des,
+ ud.depart_type,
+ ud.parent_id,
+ ud.create_time depat_create_time,
+ ud.update_time depat_update_time,
+ ud.STATUS depart_status,
+ ud.is_deleted,
+ r.id role_id,
+ r.`name` role_name
+ FROM
+ (select * from ums_admin ua
+ <where>
+ <if test="umsAdmin.keyword !=null and umsAdmin.keyword !=''">
+ AND (ua.username LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.nick_name LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%')
+ or ua.mobile LIKE concat('%',#{umsAdmin.keyword,jdbcType=VARCHAR},'%'))
+ </if>
+ <if test="umsAdmin.userType !=null and umsAdmin.userType >=0 ">
+ AND ua.user_type = #{umsAdmin.userType}
+ </if>
+ <if test="umsAdmin.jobTitle !=null and umsAdmin.keyword !=''">
+ AND ua.job_title = #{umsAdmin.jobTitle}
+ </if>
+ </where>
+ ORDER BY
+ ua.id DESC
+ LIMIT #{offset}, #{size} ) as
+ ua
+ LEFT JOIN ums_depart_manager udm ON ua.id = udm.user_id
+ LEFT JOIN ums_depart ud ON udm.depart_id = ud.id
+ LEFT JOIN ums_admin_role_relation ar on ar.admin_id = ua.id
+ LEFT JOIN ums_role r on ar.role_id = r.id
+
+ </select>
+</mapper>
--
Gitblit v1.8.0