|
|
@@ -2477,7 +2477,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
limit 10
|
|
|
</select>
|
|
|
<select id="findUsersByParam" resultType="com.fs.his.dto.FindUsersByDTO">
|
|
|
- <!-- 客户搜索时 onlySales=true,仅返回销售信息,不查客户 -->
|
|
|
+ <!-- 销售/其他用户:可查客户+销售(原逻辑) -->
|
|
|
<if test="onlySales == null or onlySales == false">
|
|
|
SELECT user_id as id, 0 as type,
|
|
|
CONCAT(user_id, '_', IFNULL(nick_name, '')) as name
|
|
|
@@ -2498,23 +2498,61 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
WHERE phone = #{keywords}
|
|
|
UNION
|
|
|
</if>
|
|
|
+ <!-- company_user相关查询(销售) -->
|
|
|
+ SELECT user_id as id, 1 as type,
|
|
|
+ IFNULL(nick_name, '') as name
|
|
|
+ FROM company_user
|
|
|
+ WHERE user_id = #{keywords}
|
|
|
+ UNION
|
|
|
+ SELECT user_id as id, 1 as type,
|
|
|
+ IFNULL(nick_name, '') as name
|
|
|
+ FROM company_user
|
|
|
+ WHERE nick_name LIKE CONCAT(#{keywords}, '%')
|
|
|
+ <if test="keywords.matches('\\d+')">
|
|
|
+ UNION
|
|
|
+ SELECT user_id as id, 1 as type,
|
|
|
+ IFNULL(nick_name, '') as name
|
|
|
+ FROM company_user
|
|
|
+ WHERE phonenumber = #{keywords}
|
|
|
+ </if>
|
|
|
</if>
|
|
|
- <!-- company_user相关查询 -->
|
|
|
- SELECT user_id as id, 1 as type,
|
|
|
- IFNULL(nick_name, '') as name
|
|
|
- FROM company_user
|
|
|
- WHERE user_id = #{keywords}
|
|
|
- UNION
|
|
|
- SELECT user_id as id, 1 as type,
|
|
|
- IFNULL(nick_name, '') as name
|
|
|
- FROM company_user
|
|
|
- WHERE nick_name LIKE CONCAT(#{keywords}, '%')
|
|
|
- <if test="keywords.matches('\\d+')">
|
|
|
+ <!-- 客户搜索:keywords 以 C 开头,仅查销售 -->
|
|
|
+ <if test='onlySales != null and onlySales == true and searchPrefix != null and searchPrefix == "C"'>
|
|
|
+ SELECT user_id as id, 1 as type,
|
|
|
+ IFNULL(nick_name, '') as name
|
|
|
+ FROM company_user
|
|
|
+ WHERE user_id = #{keywords}
|
|
|
UNION
|
|
|
SELECT user_id as id, 1 as type,
|
|
|
IFNULL(nick_name, '') as name
|
|
|
FROM company_user
|
|
|
- WHERE phonenumber = #{keywords}
|
|
|
+ WHERE nick_name LIKE CONCAT(#{keywords}, '%')
|
|
|
+ <if test="keywords.matches('\\d+')">
|
|
|
+ UNION
|
|
|
+ SELECT user_id as id, 1 as type,
|
|
|
+ IFNULL(nick_name, '') as name
|
|
|
+ FROM company_user
|
|
|
+ WHERE phonenumber = #{keywords}
|
|
|
+ </if>
|
|
|
+ </if>
|
|
|
+ <!-- 客户搜索:keywords 以 D 开头,仅查医生 -->
|
|
|
+ <if test='onlySales != null and onlySales == true and searchPrefix != null and searchPrefix == "D"'>
|
|
|
+ SELECT doctor_id as id, 2 as type,
|
|
|
+ IFNULL(doctor_name, '') as name
|
|
|
+ FROM fs_doctor
|
|
|
+ WHERE doctor_id = #{keywords}
|
|
|
+ UNION
|
|
|
+ SELECT doctor_id as id, 2 as type,
|
|
|
+ IFNULL(doctor_name, '') as name
|
|
|
+ FROM fs_doctor
|
|
|
+ WHERE doctor_name LIKE CONCAT(#{keywords}, '%')
|
|
|
+ <if test="keywords.matches('\\d+')">
|
|
|
+ UNION
|
|
|
+ SELECT doctor_id as id, 2 as type,
|
|
|
+ IFNULL(doctor_name, '') as name
|
|
|
+ FROM fs_doctor
|
|
|
+ WHERE mobile = #{keywords}
|
|
|
+ </if>
|
|
|
</if>
|
|
|
</select>
|
|
|
|