weichaochao 5 lat temu
rodzic
commit
7347807e28

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaShareCountMapper.java Wyświetl plik

@@ -23,7 +23,7 @@ public interface TaShareCountMapper extends BaseMapper<TaShareCount> {
23 23
      * @param personId
24 24
      * @return
25 25
      */
26
-    Integer countShare(@Param("personId") String personId, @Param("orgId")Integer orgId);
26
+    Integer countShare(@Param("personId") String personId, @Param("orgId")Integer orgId, @Param("startCreateDate") String startCreateDate, @Param("endCreateDate") String endCreateDate);
27 27
 
28 28
     /**
29 29
      * 根据条件查询分享内容

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaSharePersonFromMapper.java Wyświetl plik

@@ -15,5 +15,5 @@ import org.apache.ibatis.annotations.Param;
15 15
  */
16 16
 @Mapper
17 17
 public interface TaSharePersonFromMapper extends BaseMapper<TaSharePersonFrom> {
18
-    Integer countViewNum(@Param("userId") Integer userId, @Param("orgId")Integer orgId, @Param("personId")String personId);
18
+    Integer countViewNum(@Param("userId") Integer userId, @Param("orgId")Integer orgId, @Param("personId")String personId, @Param("startCreateDate") String startCreateDate, @Param("endCreateDate") String endCreateDate);
19 19
 }

+ 9
- 9
src/main/java/com/huiju/estateagents/service/impl/StatisticalServiceImpl.java Wyświetl plik

@@ -330,20 +330,20 @@ public class StatisticalServiceImpl implements IStatisticalService {
330 330
     @Override
331 331
     public ResponseBean selectPersonFrom(Integer orgId, LocalDate startDate, LocalDate endDate) {
332 332
         ResponseBean responseBean = new ResponseBean();
333
-//        List<TsPersonFromStatistic> list = tsPersonFromStatisticMapper.selectPersonFrom(orgId,startDate,endDate);
333
+        List<TsPersonFromStatistic> list = tsPersonFromStatisticMapper.selectPersonFrom(orgId,startDate,endDate);
334 334
         QueryWrapper<TdWxDict> tdWxDictQueryWrapper = new QueryWrapper<>();
335 335
         tdWxDictQueryWrapper.groupBy("scene_type");
336 336
         List<TdWxDict> tdWxDicts = tdWxDictMapper.selectList(tdWxDictQueryWrapper);
337
-//        tdWxDicts.forEach(e -> {
338
-//            int fromSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getFromNum).sum();
339
-//            int registerSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getRegisteredNum).sum();
340
-//            e.setFromData(fromSum);
341
-//            e.setRegisterSum(registerSum);
342
-//        });
337
+        tdWxDicts.forEach(e -> {
338
+            int fromSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getFromNum).sum();
339
+            int registerSum = list.stream().filter(l -> e.getSceneType().equals(l.getSceneType())).mapToInt(TsPersonFromStatistic::getRegisteredNum).sum();
340
+            e.setFromData(fromSum);
341
+            e.setRegisterSum(registerSum);
342
+        });
343 343
         Map<String,Object> map = new HashMap<>();
344 344
         map.put("tdWxDicts",tdWxDicts);
345
-//        List<TsPersonFromStatistic> tableList = tsPersonFromStatisticMapper.selectPersonFromGroupByData(orgId,startDate,endDate);
346
-//        map.put("list",tableList);
345
+        List<TsPersonFromStatistic> tableList = tsPersonFromStatisticMapper.selectPersonFromGroupByData(orgId,startDate,endDate);
346
+        map.put("list",tableList);
347 347
         responseBean.addSuccess(map);
348 348
         return responseBean;
349 349
     }

+ 2
- 2
src/main/java/com/huiju/estateagents/service/impl/TaPersonBuildingServiceImpl.java Wyświetl plik

@@ -49,8 +49,8 @@ public class TaPersonBuildingServiceImpl extends ServiceImpl<TaPersonBuildingMap
49 49
             QueryWrapper<TaPerson> taPersonQueryWrapper = new QueryWrapper<>();
50 50
             taPersonQueryWrapper.eq("person_id", taPersonBuilding.getPersonId());
51 51
             TaPerson taPerson = taPersonMapper.selectOne(taPersonQueryWrapper);
52
-            taPersonBuilding.setShareCount(taShareCountMapper.countShare(taPersonBuilding.getPersonId(), orgId));
53
-            taPersonBuilding.setClickNum(taPerson != null ? taSharePersonFromMapper.countViewNum(taPerson.getUserId(), taPerson.getOrgId(), taPerson.getPersonId()) : 0);
52
+            taPersonBuilding.setShareCount(taShareCountMapper.countShare(taPersonBuilding.getPersonId(), orgId, startCreateDate, endCreateDate));
53
+            taPersonBuilding.setClickNum(taPerson != null ? taSharePersonFromMapper.countViewNum(taPerson.getUserId(), taPerson.getOrgId(), taPerson.getPersonId(), startCreateDate, endCreateDate) : 0);
54 54
         }
55 55
         page.setRecords(list);
56 56
         return ResponseBean.success(page);

+ 23
- 15
src/main/resources/mapper/TaShareCountMapper.xml Wyświetl plik

@@ -4,7 +4,15 @@
4 4
     <select id="countShare" resultType="java.lang.Integer">
5 5
         select count(1) from ta_share_count t
6 6
         left join ta_person a on t.person_id = a.person_id
7
-        where t.person_id = #{personId} and a.org_id = #{orgId}
7
+        where
8
+        t.person_id = #{personId}
9
+        and a.org_id = #{orgId}
10
+        <if test="startCreateDate != null and startCreateDate != ''">
11
+            and  date_format(t.create_date,'%Y-%m-%d') >= date_format(#{startCreateDate},'%Y-%m-%d')
12
+        </if>
13
+        <if test="endCreateDate != null and endCreateDate != ''">
14
+            and  date_format(t.create_date,'%Y-%m-%d') &lt;= date_format(#{endCreateDate},'%Y-%m-%d')
15
+        </if>
8 16
     </select>
9 17
     <select id="selectListByParams" resultType="com.huiju.estateagents.entity.TaShareCount">
10 18
         select
@@ -21,13 +29,13 @@
21 29
         end as shareTitle,t.create_date
22 30
 
23 31
         from ta_share_count t
24
-        left join ta_building_dynamic a on t.be_share = a.dynamic_id
25
-        left join ta_help_activity b on t.be_share = b.help_activity_id
26
-        left join ta_share_activity c on t.be_share = c.share_id
27
-        LEFT JOIN ta_drainage d on t.be_share = d.drainage_id
28
-        left join ta_building e on t.be_share = e.building_id
29
-        LEFT JOIN ta_news f on t.be_share = f.news_id
30
-        left JOIN ta_person g on t.be_share = g.person_id
32
+        left join ta_building_dynamic a on t.be_share = a.dynamic_id and t.tagert_type = 'activity'
33
+        left join ta_help_activity b on t.be_share = b.help_activity_id and t.tagert_type = 'help'
34
+        left join ta_share_activity c on t.be_share = c.share_id and t.tagert_type = 'group'
35
+        LEFT JOIN ta_drainage d on t.be_share = d.drainage_id and t.tagert_type = 'h5'
36
+        left join ta_building e on t.be_share = e.building_id and t.tagert_type = 'project'
37
+        LEFT JOIN ta_news f on t.be_share = f.news_id and t.tagert_type = 'news'
38
+        left JOIN ta_person g on t.be_share = g.person_id and t.tagert_type = 'consultant'
31 39
         where t.person_id = #{personId}
32 40
         <if test="shareType != null and shareType != ''">
33 41
             and t.tagert_type = #{shareType}
@@ -66,14 +74,14 @@
66 74
         FROM
67 75
             ta_share_person_from t
68 76
 
69
-        left join ta_building_dynamic g on t.target_id = g.dynamic_id
70
-                left join ta_help_activity b on t.target_id = b.help_activity_id
71
-                left join ta_share_activity c on t.target_id = c.group_activity_id
72
-                LEFT JOIN ta_drainage d on t.target_id = d.drainage_id
73
-                left join ta_building e on t.target_id = e.building_id
74
-                LEFT JOIN ta_news f on t.target_id = f.news_id
77
+        left join ta_building_dynamic g on t.target_id = g.dynamic_id and t.target_type = 'dynamic_share'
78
+                left join ta_help_activity b on t.target_id = b.help_activity_id and t.target_type = 'help_share'
79
+                left join ta_share_activity c on t.target_id = c.group_activity_id and t.target_type = 'group_share'
80
+                LEFT JOIN ta_drainage d on t.target_id = d.drainage_id and t.target_type = 'h5_share'
81
+                left join ta_building e on t.target_id = e.building_id and t.target_type = 'building_share'
82
+                LEFT JOIN ta_news f on t.target_id = f.news_id and t.target_type = 'news_share'
75 83
 
76
-        LEFT JOIN ta_person a ON t.person_id = a.person_id
84
+        LEFT JOIN ta_person a ON t.person_id = a.person_id and t.target_type = 'card_share'
77 85
         WHERE
78 86
             (t.share_person = (select user_id from ta_person where person_id = #{personId}) or t.share_person = #{personId})
79 87
         AND t.org_id = #{orgId}

+ 6
- 0
src/main/resources/mapper/TaSharePersonFromMapper.xml Wyświetl plik

@@ -13,6 +13,12 @@
13 13
         </if>
14 14
         )
15 15
         and t.org_id = #{orgId} and t.status = 1 and t.person_id != #{personId}
16
+        <if test="startCreateDate != null and startCreateDate != ''">
17
+            and  date_format(t.create_date,'%Y-%m-%d') >= date_format(#{startCreateDate},'%Y-%m-%d')
18
+        </if>
19
+        <if test="endCreateDate != null and endCreateDate != ''">
20
+            and  date_format(t.create_date,'%Y-%m-%d') &lt;= date_format(#{endCreateDate},'%Y-%m-%d')
21
+        </if>
16 22
         GROUP BY t.person_id
17 23
       ) t
18 24
     </select>