魏超 5 년 전
부모
커밋
dda19682aa
1개의 변경된 파일30개의 추가작업 그리고 31개의 파일을 삭제
  1. 30
    31
      src/main/resources/mapper/statistic/TaActivityStaticMapper.xml

+ 30
- 31
src/main/resources/mapper/statistic/TaActivityStaticMapper.xml 파일 보기

@@ -1401,7 +1401,7 @@
1401 1401
         'live_share', 'group_share')
1402 1402
         and t.org_id = #{orgId} group by t.share_person ) t
1403 1403
         left join ta_person a on t.share_person = a.person_id
1404
-        left join ta_person b on t.share_person = b.person_id
1404
+        left join ta_person b on t.share_person = b.user_id
1405 1405
         ) as visitNum on visitNum.person_id = person.person_id
1406 1406
 
1407 1407
         left join (
@@ -1413,9 +1413,9 @@
1413 1413
         WHERE t.create_date >= DATE_FORMAT(#{startDate}, '%Y-%m-%d %H:%I:%S' ) and t.create_date <=
1414 1414
         DATE_FORMAT(#{endDate}, '%Y-%m-%d %H:%I:%S' )
1415 1415
         and t.target_type in ('dynamic_share','h5_share','help_share','live_share', 'group_share')
1416
-        and t.org_id = #{orgId} ) t
1416
+        and t.org_id = #{orgId} group by t.share_person ) t
1417 1417
         left join ta_person a on t.share_person = a.person_id
1418
-        left join ta_person b on t.share_person = b.person_id
1418
+        left join ta_person b on t.share_person = b.user_id
1419 1419
         ) as visitPersonNum on visitPersonNum.person_id = person.person_id
1420 1420
         <if test="colKey == null or colKey == ''">
1421 1421
             order by person.create_date desc
@@ -1546,28 +1546,33 @@
1546 1546
 
1547 1547
         ) as visitNum on visitNum.person_id = person.person_id
1548 1548
 
1549
+        left join (
1550
+        SELECT t.visitNum, ifnull(a.person_id,b.person_id) AS person_id
1551
+        FROM (
1552
+        SELECT t.share_person, count(1) as visitNum
1553
+        FROM ta_share_person_from t
1554
+        WHERE t.create_date >= DATE_FORMAT(#{startDate}, '%Y-%m-%d %H:%I:%S') AND t.create_date &lt;=
1555
+        DATE_FORMAT(#{endDate}, '%Y-%m-%d %H:%I:%S') AND t.target_type IN ('dynamic_share', 'h5_share', 'help_share',
1556
+        'live_share', 'group_share')
1557
+        and t.org_id = #{orgId} group by t.share_person ) t
1558
+        left join ta_person a on t.share_person = a.person_id
1559
+        left join ta_person b on t.share_person = b.user_id
1560
+        ) as visitNum on visitNum.person_id = person.person_id
1561
+
1549 1562
         left join (
1550 1563
 
1551
-        SELECT count(1) as visitPersonNum, visitPersonNum.share_person as person_id
1564
+        SELECT t.visitPersonNum, ifnull(a.person_id,b.person_id) AS person_id
1552 1565
         FROM (
1553
-        select t.*, a.person_id From (
1554
-        SELECT count(1) as visitPersonNum , t.share_person
1566
+        SELECT count(DISTINCT t.person_id ) as visitPersonNum, t.share_person
1555 1567
         FROM ta_share_person_from t
1556 1568
         WHERE t.create_date >= DATE_FORMAT(#{startDate}, '%Y-%m-%d %H:%I:%S' ) and t.create_date &lt;=
1557 1569
         DATE_FORMAT(#{endDate}, '%Y-%m-%d %H:%I:%S' )
1558 1570
         and t.target_type in ('dynamic_share','h5_share','help_share','live_share', 'group_share')
1559
-        and t.org_id = #{orgId} group by t.person_id
1560
-        ) as t
1561
-        LEFT JOIN (
1562
-        SELECT a.person_id, b.user_id
1563
-        FROM ta_person a
1564
-        LEFT JOIN ta_user b
1565
-        ON a.user_id = b.user_id
1566
-        WHERE a.org_id = 84 ) as a
1567
-        ON t.share_person = a.person_id or t.share_person = a.user_id
1568
-        ) as visitPersonNum group by visitPersonNum.person_id
1569
-
1571
+        and t.org_id = #{orgId} group by t.share_person ) t
1572
+        left join ta_person a on t.share_person = a.person_id
1573
+        left join ta_person b on t.share_person = b.user_id
1570 1574
         ) as visitPersonNum on visitPersonNum.person_id = person.person_id
1575
+
1571 1576
         <if test="colKey == null or colKey == ''">
1572 1577
             order by person.create_date desc
1573 1578
         </if>
@@ -2091,16 +2096,13 @@
2091 2096
         From (
2092 2097
         SELECT count(1) as visitNum, t.person_id, t.create_date
2093 2098
         FROM ta_share_person_from t
2094
-        LEFT JOIN (
2095
-        SELECT a.person_id, b.user_id
2096
-        FROM ta_person a
2097
-        LEFT JOIN ta_user b
2098
-        ON a.user_id = b.user_id
2099
-        WHERE a.org_id = #{orgId} ) as a ON t.share_person = a.person_id or t.share_person = a.user_id
2100 2099
         WHERE t.create_date >= DATE_FORMAT(#{startDate}, '%Y-%m-%d %H:%I:%S' ) and t.create_date &lt;=
2101 2100
         DATE_FORMAT(#{endDate}, '%Y-%m-%d %H:%I:%S' ) and t.target_type in
2102 2101
         ('dynamic_share','h5_share','help_share','live_share', 'group_share')
2103
-        and t.share_person = #{personId} group by t.person_id
2102
+        and
2103
+        (t.share_person = (select b.user_id from ta_person t left join ta_user b on t.user_id = b.user_id where t.person_id = #{personId})
2104
+        or t.share_person = #{personId})
2105
+        group by t.person_id
2104 2106
         ) as t
2105 2107
 
2106 2108
         left join ta_person a on t.person_id = a.person_id
@@ -2158,16 +2160,13 @@
2158 2160
         From (
2159 2161
         SELECT count(1) as visitNum, t.person_id, t.create_date
2160 2162
         FROM ta_share_person_from t
2161
-        LEFT JOIN (
2162
-        SELECT a.person_id, b.user_id
2163
-        FROM ta_person a
2164
-        LEFT JOIN ta_user b
2165
-        ON a.user_id = b.user_id
2166
-        WHERE a.org_id = #{orgId} ) as a ON t.share_person = a.person_id or t.share_person = a.user_id
2167 2163
         WHERE t.create_date >= DATE_FORMAT(#{startDate}, '%Y-%m-%d %H:%I:%S' ) and t.create_date &lt;=
2168 2164
         DATE_FORMAT(#{endDate}, '%Y-%m-%d %H:%I:%S' ) and t.target_type in
2169 2165
         ('dynamic_share','h5_share','help_share','live_share', 'group_share')
2170
-        and t.share_person = #{personId} group by t.person_id
2166
+        and
2167
+        (t.share_person = (select b.user_id from ta_person t left join ta_user b on t.user_id = b.user_id where t.person_id = #{personId})
2168
+        or t.share_person = #{personId})
2169
+        group by t.person_id
2171 2170
         ) as t
2172 2171
 
2173 2172
         left join ta_person a on t.person_id = a.person_id