zhaoxian преди 2 години
родител
ревизия
05b74b7edc
променени са 1 файла, в които са добавени 34 реда и са изтрити 86 реда
  1. 34 86
      ruixuan-live/src/main/resources/mapper/isc/KuaishouPromoterMapper.xml

+ 34 - 86
ruixuan-live/src/main/resources/mapper/isc/KuaishouPromoterMapper.xml

@@ -98,98 +98,46 @@
     <select id="selectAllPromoterList" resultType="com.alibaba.fastjson.JSONObject">
         SELECT *
         FROM (
-        <if test="status == null or status == '' ">
-            SELECT
-            t1.promoter_id as 'promoterId',
-            t1.promoter_nick_name as 'promoterNickName',
-            user_name as 'userName',
-            t1.commission_requirement as 'commissionRequirement',
-            t1.promoter_url as 'promoterUrl',
-            t1.fans_number as 'fansNumber',
-            t2.30day_gmv as 'monthDayGmv',
-            t2.30day_order_num as 'monthDayOrderNum',
-            t2.valid_amount as 'validAmount'
-            FROM
-            kuaishou_promoter t1
-            LEFT JOIN promoter_oerder_amount t2 ON t1.promoter_id = t2.promoter_id
-            <where>
-                <if test="promoterId != null ">
-                    and t1.promoter_id = #{promoterId}
-                </if>
-                <if test="promoterNickName != null  and promoterNickName != ''">
-                    and t1.promoter_nick_name like concat('%', #{promoterNickName}, '%')
-                </if>
-            </where>
-            UNION ALL
-            SELECT
-            t1.promoter_id as 'promoterId',
-            t1.promoter_name as 'promoterNickName',
-            '-' as 'userName',
-            '-' as 'commissionRequirement',
-            t1.handurl as 'promoterUrl',
-            t1.fans as 'fansNumber',
-            t2.30day_gmv as 'monthDayGmv',
-            t2.30day_order_num as 'monthDayOrderNum',
-            t2.valid_amount as 'validAmount'
-            FROM
-            promoter_info t1
-            LEFT JOIN promoter_oerder_amount t2 ON t1.promoter_id = t2.promoter_id
-            WHERE
-            NOT EXISTS ( SELECT 1 FROM kuaishou_promoter t3 WHERE t3.promoter_id = t1.promoter_id )
+        SELECT
+        t0.promoter_id AS 'promoterId',
+        (CASE WHEN t2.promoter_id IS NULL THEN 1 ELSE 2 END) AS 'status',
+        IF(t0.promoter_name is null,t2.promoter_nick_name,t0.promoter_name) AS 'promoterNickName',
+        t2.userName AS 'userName',
+        t2.commission_requirement AS 'commissionRequirement',
+        IF(t0.handurl is null,t2.promoter_url,t0.handurl) AS 'promoterUrl',
+        IF(t0.fans is null,t2.fans_number,t0.fans) AS 'fansNumber',
+        t1.30day_gmv AS 'monthDayGmv',
+        t1.30day_order_num AS 'monthDayOrderNum',
+        t1.valid_amount AS 'validAmount'
+        FROM
+        promoter_info t0
+        LEFT JOIN promoter_oerder_amount t1 ON t1.promoter_id = t0.promoter_id
+        LEFT JOIN (
+        SELECT
+        promoter_id,
+        group_concat( user_name ) AS 'userName',
+        fans_number, promoter_url,
+        commission_requirement,
+        promoter_nick_name
+        FROM kuaishou_promoter
+        GROUP BY promoter_id
+        ) t2 ON t1.promoter_id =
+        t2.promoter_id
+        <where>
             <if test="promoterId != null ">
                 and t1.promoter_id = #{promoterId}
             </if>
             <if test="promoterNickName != null  and promoterNickName != ''">
-                and t1.promoter_name like concat('%', #{promoterNickName}, '%')
-            </if>
-        </if>
-        <if test="status == 2 ">
-            SELECT
-            t1.promoter_id as 'promoterId',
-            t1.promoter_name as 'promoterNickName',
-            '-' as 'userName',
-            '-' as 'commissionRequirement',
-            t1.handurl as 'promoterUrl',
-            t1.fans as 'fansNumber',
-            t2.30day_gmv as 'monthDayGmv',
-            t2.30day_order_num as 'monthDayOrderNum',
-            t2.valid_amount as 'validAmount'
-            FROM
-            promoter_info t1
-            LEFT JOIN promoter_oerder_amount t2 ON t1.promoter_id = t2.promoter_id
-            WHERE NOT EXISTS
-            (SELECT 1 FROM kuaishou_promoter t3 WHERE t3.promoter_id = t1.promoter_id)
-            <if test="promoterId != null ">
-                and t1.promoter_id = #{promoterId}
+                and t2.promoter_nick_name like concat('%', #{promoterNickName}, '%')
             </if>
-            <if test="promoterNickName != null  and promoterNickName != ''">
-                and t1.promoter_name like concat('%', #{promoterNickName}, '%')
+        </where>
+        ) t
+        <where>
+            <if test="status != null ">
+                and `status` = #{status}
             </if>
-        </if>
-        <if test="status == 1">
-            SELECT
-            t1.promoter_id as 'promoterId',
-            t1.promoter_nick_name as 'promoterNickName',
-            user_name as 'userName',
-            t1.commission_requirement as 'commissionRequirement',
-            t1.promoter_url as 'promoterUrl',
-            t1.fans_number as 'fansNumber',
-            t2.30day_gmv as 'monthDayGmv',
-            t2.30day_order_num as 'monthDayOrderNum',
-            t2.valid_amount as 'validAmount'
-            FROM
-            kuaishou_promoter t1
-            LEFT JOIN promoter_oerder_amount t2 on t1.promoter_id = t2.promoter_id
-            <where>
-                <if test="promoterId != null ">
-                    and t1.promoter_id = #{promoterId}
-                </if>
-                <if test="promoterNickName != null  and promoterNickName != ''">
-                    and t1.promoter_nick_name like concat('%', #{promoterNickName}, '%')
-                </if>
-            </where>
-        </if>
-        ) t order by ${parameter} ${orderBy}
+        </where>
+        order by ${parameter} ${orderBy}
     </select>
 
     <select id="selectKuaishouPromoterById" parameterType="Long" resultMap="KuaishouPromoterResult">