From b9903ead016b8b1aa68eb04b48fca3b53fdab0d3 Mon Sep 17 00:00:00 2001
From: cloudroam <cloudroam>
Date: 星期一, 30 十二月 2024 10:42:43 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master-v4' into master-v4
---
src/main/resources/mapper/system/UserMapper.xml | 77 ++++++++++++++++++++++++++++++++++++++
1 files changed, 77 insertions(+), 0 deletions(-)
diff --git a/src/main/resources/mapper/system/UserMapper.xml b/src/main/resources/mapper/system/UserMapper.xml
index d1e3d96..1fb0056 100644
--- a/src/main/resources/mapper/system/UserMapper.xml
+++ b/src/main/resources/mapper/system/UserMapper.xml
@@ -89,4 +89,81 @@
</foreach>
</select>
+
+ <select id="searchUserInfo" resultType="com.mzl.flower.dto.response.system.UserListInfoDTO">
+ SELECT
+ user_id,
+ id,
+ name AS loginName,
+ contact_tel tel,
+ type
+ FROM (
+ SELECT user_id, id, name, contact_tel, 'supplier' AS type
+ FROM t_supplier_info
+ WHERE user_id IN (SELECT id FROM t_user WHERE type = 'supplier')
+
+ UNION ALL
+
+ SELECT user_id, id, name, contact_tel, 'partner' AS type
+ FROM t_partner_info
+ WHERE user_id IN (SELECT id FROM t_user WHERE type = 'partner')
+
+ UNION ALL
+
+ SELECT c.user_id, c.id, c.name, u.tel AS contact_tel, 'customer' AS type
+ FROM t_customer_info c
+ JOIN t_user u ON c.user_id = u.id
+ WHERE c.user_id IN (SELECT id FROM t_user WHERE type = 'customer')
+ ) AS combined_table
+ <where>
+ <if test="condition.userType != null and condition.userType != ''">
+ AND type = #{condition.userType}
+ </if>
+ <if test="condition.id != null and condition.id != ''">
+ AND id = #{condition.id}
+ </if>
+ <if test="condition.loginName != null and condition.loginName != ''">
+ AND name like concat('%', #{condition.loginName},'%')
+ </if>
+ <if test="condition.tel != null and condition.tel != ''">
+ AND contact_tel like concat('%', #{condition.tel},'%')
+ </if>
+ </where>
+ </select>
+
+ <select id="getSelectList" resultType="com.mzl.flower.dto.response.sms.SmsSelectVO">
+ SELECT
+ user_id,
+ id,
+ name AS loginName,
+ contact_tel tel,
+ type
+ FROM (
+ SELECT user_id, id, name, contact_tel, 'supplier' AS type
+ FROM t_supplier_info
+ WHERE user_id IN (SELECT id FROM t_user WHERE type = 'supplier')
+
+ UNION ALL
+
+ SELECT user_id, id, name, contact_tel, 'partner' AS type
+ FROM t_partner_info
+ WHERE user_id IN (SELECT id FROM t_user WHERE type = 'partner')
+
+ UNION ALL
+
+ SELECT c.user_id, c.id, c.name, u.tel AS contact_tel, 'customer' AS type
+ FROM t_customer_info c
+ JOIN t_user u ON c.user_id = u.id
+ WHERE c.user_id IN (SELECT id FROM t_user WHERE type = 'customer')
+ ) AS combined_table
+ <where>
+ 1=1
+ <if test="idList != null and idList.size() > 0">
+ AND user_id IN
+ <foreach collection="idList" item="id" open="(" separator="," close=")">
+ #{id}
+ </foreach>
+ </if>
+ </where>
+ </select>
</mapper>
--
Gitblit v1.9.3