<?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.ruoyi.account.mapper.AgentApplicationMapper">
|
|
<!-- 通用查询映射结果 -->
|
<resultMap id="BaseResultMap" type="com.ruoyi.account.api.model.AgentApplication">
|
<id column="id" property="id" />
|
<result column="app_user_id" property="appUserId" />
|
<result column="application_vip_id" property="applicationVipId" />
|
<result column="application_time" property="applicationTime" />
|
<result column="status" property="status" />
|
<result column="shop_point" property="shopPoint" />
|
<result column="share_point" property="sharePoint" />
|
<result column="direct_vip_num" property="directVipNum" />
|
<result column="direct_agent_num" property="directAgentNum" />
|
<result column="bind_shop_num" property="bindShopNum" />
|
<result column="remark" property="remark" />
|
<result column="del_flag" property="delFlag" />
|
<result column="create_time" property="createTime" />
|
</resultMap>
|
|
<!-- 通用查询结果列 -->
|
<sql id="Base_Column_List">
|
id, app_user_id, application_vip_id, application_time, status, shop_point, share_point, direct_vip_num, direct_agent_num, bind_shop_num, remark, del_flag, create_time
|
</sql>
|
<select id="pageList" resultType="com.ruoyi.account.api.model.AgentApplication">
|
SELECT
|
*
|
FROM
|
(
|
SELECT
|
t1.*,
|
t1.id AS idStr,
|
t2.NAME AS userName,
|
t2.phone AS userPhone,
|
1 AS sort_order
|
FROM
|
t_agent_application t1
|
LEFT JOIN t_app_user t2 ON t1.app_user_id = t2.id
|
WHERE
|
t1.`status` = 1 UNION ALL
|
SELECT
|
t1.*,
|
t1.id AS idStr,
|
t2.NAME AS userName,
|
t2.phone AS userPhone,
|
2 AS sort_order
|
FROM
|
t_agent_application t1
|
LEFT JOIN t_app_user t2 ON t1.app_user_id = t2.id
|
WHERE
|
t1.`status` != 1
|
) AS combined_results
|
<where>
|
<if test="agentQuery.name !=null and agentQuery.name !=''">
|
and userName like concat('%',#{agentQuery.name},'%')
|
</if>
|
<if test="agentQuery.phone !=null and agentQuery.phone !=''">
|
and userPhone like concat('%',#{agentQuery.phone},'%')
|
</if>
|
<if test="agentQuery.vipId !=null">
|
and vip_id = #{agentQuery.vipId}
|
</if>
|
<if test="agentQuery.status !=null">
|
and status = #{agentQuery.status}
|
</if>
|
</where>
|
ORDER BY
|
sort_order,
|
CASE
|
|
WHEN sort_order = 1 THEN
|
application_time ELSE NULL
|
END ASC,
|
CASE
|
|
WHEN sort_order = 2 THEN
|
application_time ELSE NULL
|
END DESC
|
</select>
|
|
</mapper>
|