From 8d43111bd0e598bc0b2014cbfa69a32e74959dff Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Wed, 15 Dec 2021 19:24:05 +0800
Subject: [PATCH] ftp sql 同步封装
---
src/main/java/org/springblade/modules/system/mapper/UserMapper.xml | 265 ++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 230 insertions(+), 35 deletions(-)
diff --git a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
index 822efbb..220ebc5 100644
--- a/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
+++ b/src/main/java/org/springblade/modules/system/mapper/UserMapper.xml
@@ -85,9 +85,14 @@
bu.id = str.user_id
where
bu.is_deleted = 0
- and bd.parent_id!=1425365577303621633
- and bd.id != 1425365577303621633
- and bd.id != 1432625856013971457
+ <if test="user.examinationType!=null and user.examinationType != ''">
+ <if test="user.examinationType == 0">
+ and (bu.examination_type = #{user.examinationType} or bu.examination_type is null or bu.examination_type ='')
+ </if>
+ <if test="user.examinationType == 1">
+ and bu.examination_type = #{user.examinationType}
+ </if>
+ </if>
<if test="user.account!=null and user.account != ''">
and bu.account like concat('%', #{user.account},'%')
</if>
@@ -95,7 +100,25 @@
and bu.hold = #{user.hold}
</if>
<if test="user.deptId!=null and user.deptId != ''">
- and (bd.id = #{user.deptId} or bd.parent_id = #{user.deptId})
+ and bd.id in
+ (
+ select id from blade_dept where id = #{user.deptId}
+ union
+ SELECT
+ id
+ FROM
+ (
+ SELECT
+ t1.id,t1.parent_id,t1.dept_name,
+ IF
+ ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild
+ FROM
+ ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1,
+ ( SELECT @pids := #{user.deptId} ) t2
+ ) t3
+ WHERE
+ ischild != 0
+ )
</if>
<if test="user.roleId!=null and user.roleId != ''">
and bu.role_id = #{user.roleId}
@@ -103,7 +126,7 @@
<if test="user.roleAlias!=null and user.roleAlias != ''">
and br.role_alias = '保安'
</if>
- <if test="user.status!=null and user.status != ''">
+ <if test="user.status!=null and user.status != '' and user.status != 6">
and bu.status = #{user.status}
</if>
<if test="user.trainingUnitId!=null and user.trainingUnitId != ''">
@@ -119,7 +142,12 @@
and bu.real_name like concat('%', #{user.realName},'%')
</if>
<if test="user.dispatch!=null and user.dispatch != ''">
- and bu.dispatch = #{user.dispatch}
+ <if test="user.dispatch == 0">
+ and bu.dispatch = #{user.dispatch}
+ </if>
+ <if test="user.dispatch == 1">
+ and bu.dispatch = #{user.dispatch}
+ </if>
</if>
<if test="user.userType!=null and user.userType != ''">
and bu.user_type = #{user.userType}
@@ -130,10 +158,7 @@
<if test="user.cardid!=null and user.cardid != ''">
and bu.cardid like concat('%', #{user.cardid},'%')
</if>
- <if test="user.examinationType!=null and user.examinationType != ''">
- and bu.examination_type = #{user.examinationType}
- </if>
- ORDER BY bu.id
+ ORDER BY bu.id desc
</select>
<select id="selectUserPage" resultMap="userResultMap">
@@ -164,7 +189,25 @@
and real_name like concat(concat('%', #{user.realName}),'%')
</if>
<if test="user.deptId!=null and user.deptId != ''">
- and (bd.id = #{user.deptId} or bd.parent_id = #{user.deptId})
+ and bd.id in
+ (
+ select id from blade_dept where id = #{user.deptId}
+ union
+ SELECT
+ id
+ FROM
+ (
+ SELECT
+ t1.id,t1.parent_id,t1.dept_name,
+ IF
+ ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild
+ FROM
+ ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1,
+ ( SELECT @pids := #{user.deptId} ) t2
+ ) t3
+ WHERE
+ ischild != 0
+ )
</if>
<if test="user.userType!=null and user.userType != ''">
and user_type = #{user.userType}
@@ -190,7 +233,7 @@
<if test="user.examinationType!=null and user.examinationType != ''">
and examination_type = #{user.examinationType}
</if>
- ORDER BY bu.id
+ ORDER BY bu.id desc
</select>
<select id="getUser" resultMap="userResultMap">
@@ -273,6 +316,9 @@
<if test="user.status!=null and user.status != ''">
and bu.status = #{user.status}
</if>
+ <if test="user.equipmentCode!=null">
+ and bu.equipment_code !="" and bu.equipment_code is not null and bu.equipment_code !=null
+ </if>
<if test="user.jurisdiction!=null and user.jurisdiction != ''">
and bu.jurisdiction = #{user.jurisdiction}
</if>
@@ -339,32 +385,42 @@
(
select
- distinct
- bu.id,
- bu.real_name as name,
- #{user.deptId} parentId
- from
- blade_user bu
- left join
- blade_dept bd
- on
- bu.dept_id = bd.id
- left join
- blade_role br
- on
- br.id = bu.role_id
- where
- bu.is_deleted = 0
- and bu.status = 1
- and (bu.examination_type != 1 or bu.examination_type is null)
- and (hold = 2 or hold = 3)
- and bd.id = #{user.deptId}
- and br.role_alias = '保安'
+ a.id,
+ a.name,
+ a.parentId
+ from (
+ select
+ distinct
+ bu.id,
+ ifnull(DATE_FORMAT(NOW(), '%Y') - SUBSTRING(bu.cardid,7,4),0) age,
+ bu.is_apply isApply,
+ bu.is_train isTrain,
+ bu.real_name as name,
+ #{user.deptId} parentId
+ from
+ blade_user bu
+ left join
+ blade_dept bd
+ on
+ bu.dept_id = bd.id
+ left join
+ blade_role br
+ on
+ br.id = bu.role_id
+ where
+ bu.is_deleted = 0
+ and bu.status = 1
+ and (bu.examination_type != 1 or bu.examination_type is null)
+ and (hold = 2 or hold = 3)
+ and bd.id = #{user.deptId}
+ and br.role_alias = '保安'
+ ) a
+ where 1 = 1
<if test="user.examType==1">
- and bu.is_apply != 1
+ and a.isApply != 1
</if>
<if test="user.examType==2">
- and bu.is_train != 1
+ and a.isTrain != 1
</if>
)
</select>
@@ -628,5 +684,144 @@
</select>
+ <!--导出保安员信息-->
+ <select id="exportSecurityInfo" resultType="org.springblade.modules.system.excel.SecurityExcel">
+ select
+ distinct bu.id,
+ bd.dept_name deptId,
+ bu.real_name realName,
+ bu.phone,
+ if(IF(mod(SUBSTR(bu.cardid,17,1),2),1,2)=1,"男","女") sex,
+ bu.cardid,
+ bu.nation,
+ bu.registered,
+ if(bu.hold=1,"是","否") hold,
+ bu.securitynumber
+ from
+ blade_user bu
+ left join
+ blade_dept bd
+ on
+ bu.dept_id = bd.id
+ left join
+ sys_information si
+ on
+ si.departmentid = bd.id
+ left join
+ sys_jurisdiction sj
+ on
+ sj.id = si.jurisdiction
+ left join
+ blade_role br
+ on
+ br.id = bu.role_id
+ left join
+ sys_training_registration str
+ on
+ bu.id = str.user_id
+ where
+ bu.is_deleted = 0
+ <if test="user.examinationType!=null and user.examinationType != ''">
+ <if test="user.examinationType == 0">
+ and (bu.examination_type = #{user.examinationType} or bu.examination_type is null or bu.examination_type ='')
+ </if>
+ <if test="user.examinationType == 1">
+ and bu.examination_type = #{user.examinationType}
+ </if>
+ </if>
+ <if test="user.account!=null and user.account != ''">
+ and bu.account like concat('%', #{user.account},'%')
+ </if>
+ <if test="user.hold!=null and user.hold != ''">
+ and bu.hold = #{user.hold}
+ </if>
+ <if test="user.deptId!=null and user.deptId != ''">
+ and bd.id in
+ (
+ select id from blade_dept where id = #{user.deptId}
+ union
+ SELECT
+ id
+ FROM
+ (
+ SELECT
+ t1.id,t1.parent_id,t1.dept_name,
+ IF
+ ( find_in_set( parent_id, @pids ) > 0, @pids := concat( @pids, ',', id ), 0 ) AS ischild
+ FROM
+ ( SELECT id, parent_id,dept_name FROM blade_dept t ORDER BY parent_id, id ) t1,
+ ( SELECT @pids := #{user.deptId} ) t2
+ ) t3
+ WHERE
+ ischild != 0
+ )
+ </if>
+ <if test="user.roleId!=null and user.roleId != ''">
+ and bu.role_id = #{user.roleId}
+ </if>
+ <if test="user.roleAlias!=null and user.roleAlias != ''">
+ and br.role_alias = '保安'
+ </if>
+ <if test="user.status!=null and user.status != '' and user.status != 6">
+ and bu.status = #{user.status}
+ </if>
+ <if test="user.trainingUnitId!=null and user.trainingUnitId != ''">
+ and str.training_unit_id = #{user.trainingUnitId}
+ </if>
+ <if test="user.deptName!=null and user.deptName != ''">
+ and bd.dept_name like concat('%', #{user.deptName},'%')
+ </if>
+ <if test="user.jurisdiction!=null and user.jurisdiction != '' and user.jurisdiction!='1372091709474910209'">
+ and (sj.id = #{user.jurisdiction} or sj.parent_id = #{user.jurisdiction})
+ </if>
+ <if test="user.realName!=null and user.realName != ''">
+ and bu.real_name like concat('%', #{user.realName},'%')
+ </if>
+ <if test="user.dispatch!=null and user.dispatch != ''">
+ and bu.dispatch = #{user.dispatch}
+ </if>
+ <if test="user.userType!=null and user.userType != ''">
+ and bu.user_type = #{user.userType}
+ </if>
+ <if test="user.securitynumber!=null and user.securitynumber != ''">
+ and bu.securitynumber like concat('%', #{user.securitynumber},'%')
+ </if>
+ <if test="user.cardid!=null and user.cardid != ''">
+ and bu.cardid like concat('%', #{user.cardid},'%')
+ </if>
+ ORDER BY bu.id desc
+ </select>
+ <!--查询押运人员编码不为null的保安信息-->
+ <select id="selectEquipent" resultType="java.util.HashMap">
+ SELECT id,
+ equipment_code as code
+ FROM blade_user
+ WHERE dept_id = '1460129345988239362'
+ AND role_id = '1412226235153731586'
+ AND is_deleted = 0
+ AND `status` = 1
+ AND equipment_code IS NOT NULL
+ </select>
+
+ <!--查詢用戶派遣記錄信息-->
+ <select id="getUserDispatcherInfo" resultType="org.springblade.modules.dispatcher.vo.DispatcherVO">
+ select
+ sdu.name dispatcherCompany,
+ dispatcherTime dispatchertime,
+ sd.end_time endTime
+ from blade_user bu
+ left join
+ sys_dispatcher sd
+ on
+ sd.user_ids = bu.id
+ left join
+ sys_dispatcher_unit sdu
+ on
+ sdu.id = sd.dispatcher_unit_id
+ where 1=1
+ and sd.status = 0
+ and bu.dispatch = 0
+ and bu.id = #{id}
+ </select>
</mapper>
--
Gitblit v1.9.3