Sfoglia il codice sorgente

Merge branch 'master' of http://git.ycjcjy.com/zhiyuxing/estateagents

张延森 5 anni fa
parent
commit
0245c180cc

+ 49
- 2
src/main/java/com/huiju/estateagents/controller/StatisticalController.java Vedi File

@@ -64,8 +64,9 @@ public class StatisticalController {
64 64
     public ResponseBean selectUserBehavior(@RequestParam(required = false) Integer pageNum,
65 65
                                            @RequestParam(required = false) Integer pageCode,
66 66
                                            @RequestParam(value = "startDate", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDate startDate,
67
-                                           @RequestParam(value = "endDate", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)  LocalDate endDate) {
68
-        return iStatisticalService.selectUserBehavior(pageNum, pageCode, startDate, endDate);
67
+                                           @RequestParam(value = "endDate", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME)  LocalDate endDate,
68
+                                           @RequestParam(value = "buildingId", required = false) String buildingId) {
69
+        return iStatisticalService.selectUserBehavior(pageNum, pageCode, startDate, endDate, buildingId);
69 70
     }
70 71
 
71 72
     /**
@@ -91,5 +92,51 @@ public class StatisticalController {
91 92
     }
92 93
 
93 94
 
95
+    /**
96
+     * 用户总数
97
+     * @return
98
+     */
99
+    @GetMapping(value = "/admin/selectUserCount")
100
+    public ResponseBean selectUserResource() {
101
+        return iStatisticalService.selectUserCount();
102
+    }
103
+
104
+    /**
105
+     * 用户注册数
106
+     * @return
107
+     */
108
+    @GetMapping(value = "/admin/selectRegisteredCount")
109
+    public ResponseBean selectRegisteredCount() {
110
+        return iStatisticalService.selectRegisteredCount();
111
+    }
112
+
113
+    /**
114
+     * 用户最近七天
115
+     * @return
116
+     */
117
+    @GetMapping(value = "/admin/selectRecentlyCount")
118
+    public ResponseBean selectRecentlyCount(@RequestParam(value = "startDate", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDate startDate,
119
+                                            @RequestParam(value = "endDate", required = false) @DateTimeFormat(iso = DateTimeFormat.ISO.DATE_TIME) LocalDate endDate) {
120
+        return iStatisticalService.selectRecentlyCount(startDate, endDate);
121
+    }
122
+
123
+    /**
124
+     * 性别比例
125
+     * @return
126
+     */
127
+    @GetMapping(value = "/admin/selectSexUser")
128
+    public ResponseBean selectSexUser() {
129
+        return iStatisticalService.selectSexUser();
130
+    }
131
+
132
+    /**
133
+     * 城市比例
134
+     * @return
135
+     */
136
+    @GetMapping(value = "/admin/selectCityUser")
137
+    public ResponseBean selectCityUser() {
138
+        return iStatisticalService.selectCityUser();
139
+    }
140
+
94 141
 
95 142
 }

+ 53
- 5
src/main/java/com/huiju/estateagents/controller/TaBuildingDynamicController.java Vedi File

@@ -3,19 +3,19 @@ package com.huiju.estateagents.controller;
3 3
 
4 4
 import com.alibaba.fastjson.JSONObject;
5 5
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
6
+import com.baomidou.mybatisplus.core.metadata.IPage;
6 7
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
7 8
 import com.huiju.estateagents.base.BaseController;
8 9
 import com.huiju.estateagents.base.ResponseBean;
10
+import com.huiju.estateagents.common.CommConstant;
9 11
 import com.huiju.estateagents.common.JWTUtils;
10 12
 import com.huiju.estateagents.common.StringUtils;
11
-import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
12
-import com.huiju.estateagents.entity.TaBuilding;
13
-import com.huiju.estateagents.entity.TaBuildingDynamic;
14
-import com.huiju.estateagents.entity.TaPerson;
13
+import com.huiju.estateagents.entity.*;
15 14
 import com.huiju.estateagents.mapper.TaActivityDynamicEnlistMapper;
16 15
 import com.huiju.estateagents.mapper.TaBuildingMapper;
17 16
 import com.huiju.estateagents.service.ITaBuildingDynamicService;
18 17
 import com.huiju.estateagents.service.ITaPersonService;
18
+import com.huiju.estateagents.service.ITaSaveService;
19 19
 import org.springframework.beans.factory.annotation.Autowired;
20 20
 import org.springframework.beans.propertyeditors.CustomDateEditor;
21 21
 import org.springframework.web.bind.ServletRequestDataBinder;
@@ -27,6 +27,7 @@ import javax.swing.*;
27 27
 import java.text.DateFormat;
28 28
 import java.text.SimpleDateFormat;
29 29
 import java.time.LocalDateTime;
30
+import java.util.ArrayList;
30 31
 import java.util.Date;
31 32
 import java.util.HashMap;
32 33
 import java.util.List;
@@ -52,6 +53,9 @@ public class TaBuildingDynamicController extends BaseController {
52 53
     @Autowired
53 54
     private ITaPersonService taPersonService;
54 55
 
56
+    @Autowired
57
+    private ITaSaveService taSaveService;
58
+
55 59
     @InitBinder
56 60
     protected void initBinder(HttpServletRequest request, ServletRequestDataBinder binder) throws Exception {
57 61
         DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
@@ -97,7 +101,7 @@ public class TaBuildingDynamicController extends BaseController {
97 101
                 return responseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
98 102
             }
99 103
             TaPerson person = taPersons.get(0);
100
-            responseBean.addSuccess(taPersonService.getJoinedActivity(pageNum,pageSize,person.getPhone(),""));
104
+            responseBean.addSuccess(iBuildingDynamicService.getJoinedActivity(pageNum,pageSize,"",person));
101 105
         }else {
102 106
             responseBean = iBuildingDynamicService.getWxBuildingDynamiceList(pageNum,pageSize,buildingId,openid);
103 107
         }
@@ -105,6 +109,50 @@ public class TaBuildingDynamicController extends BaseController {
105 109
         return responseBean;
106 110
     }
107 111
 
112
+    /**
113
+     * 活动列表
114
+     * @param pageNum
115
+     * @param pageSize
116
+     * @param request
117
+     * @return
118
+     */
119
+    @RequestMapping(value = "/wx/save/buildingDynamiceList", method = RequestMethod.GET)
120
+    public ResponseBean wxSaveBuildingDynamiceList(@RequestParam(value = "buildingId", required = false)String buildingId,
121
+                                               @RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum,
122
+                                               @RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
123
+                                               HttpServletRequest request){
124
+        String openid = JWTUtils.getSubject(request);
125
+        ResponseBean  responseBean = new ResponseBean();
126
+            List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
127
+            if (null == taPersons || taPersons.size() != 1) {
128
+                return responseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
129
+            }
130
+            TaPerson person = taPersons.get(0);
131
+            QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
132
+            saveQueryWrapper.eq("person_id",person.getPersonId());
133
+            saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_ACTIVITY);
134
+            List<TaSave> saveList = taSaveService.list(saveQueryWrapper);
135
+            if(saveList.size()>0){
136
+                List<String> ids = new ArrayList<>();
137
+                for(int i = 0; i<saveList.size();i++){
138
+                    ids.add(saveList.get(i).getSavedTarget());
139
+                }
140
+                IPage<TaBuildingDynamic> page = new Page<>(pageNum, pageSize);
141
+                QueryWrapper<TaBuildingDynamic> buildingDynamicQueryWrapper = new QueryWrapper<>();
142
+                buildingDynamicQueryWrapper.in("dynamic_id",ids);
143
+                IPage<TaBuildingDynamic> buildingDynamicIPage = iBuildingDynamicService.page(page,buildingDynamicQueryWrapper);
144
+                for(int j=0;j<buildingDynamicIPage.getRecords().size();j++){
145
+                    iBuildingDynamicService.setExtendInfo(buildingDynamicIPage.getRecords().get(j),person);
146
+                }
147
+                responseBean.addSuccess(buildingDynamicIPage);
148
+            }else {
149
+                responseBean.addSuccess("暂无收藏活动");
150
+            }
151
+
152
+
153
+        return responseBean;
154
+    }
155
+
108 156
     /**
109 157
      * 活动详情
110 158
      * @param dynamicId

+ 0
- 27
src/main/java/com/huiju/estateagents/controller/TaPersonController.java Vedi File

@@ -351,34 +351,7 @@ public class TaPersonController extends BaseController {
351 351
 //        }
352 352
 //
353 353
 //    }
354
-    /**
355
-     * 获取我参加过的活动列表
356
-     * @param pageNumber
357
-     * @param pageSize
358
-     * @return
359
-     */
360
-    @GetMapping("/wx/joinedActivity/")
361
-    public ResponseBean getJoinedActivity(@RequestParam(defaultValue = "1") int pageNumber,
362
-                                             @RequestParam(defaultValue = "10") int pageSize,HttpServletRequest request){
363
-        String openid = JWTUtils.getSubject(request);
364
-        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
365
-        if (null == taPersons || taPersons.size() != 1) {
366
-            return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
367
-        }
368
-        TaPerson person = taPersons.get(0);
369 354
 
370
-        if (pageNumber < 0 || pageSize < 0) {
371
-            return ResponseBean.error("分页参数不正确", ResponseBean.ERROR_ILLEGAL_PARAMS);
372
-        }
373
-        try {
374
-            IPage<TaBuildingDynamic> result = taPersonService.getJoinedActivity(pageNumber,pageSize,person.getPhone(),"");
375
-            return ResponseBean.success(result);
376
-        }catch (Exception e){
377
-            e.printStackTrace();
378
-            return ResponseBean.error("查询失败", ResponseBean.ERROR_UNAVAILABLE);
379
-        }
380
-
381
-    }
382 355
 
383 356
 
384 357
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java Vedi File

@@ -86,7 +86,7 @@ public interface TaPersonMapper extends BaseMapper<TaPerson> {
86 86
      * @param endDate
87 87
      * @return
88 88
      */
89
-    List<PersonPO> selectUserBehavior(@Param("personType") String personType, @Param("startDate")LocalDate startDate, @Param("endDate")LocalDate endDate);
89
+    List<PersonPO> selectUserBehavior(@Param("personType") String personType, @Param("startDate")LocalDate startDate, @Param("endDate")LocalDate endDate, @Param("buildingId") String buildingId);
90 90
 
91 91
     /**
92 92
      * 活跃用户数 / 最近新增的用户数

+ 1
- 1
src/main/java/com/huiju/estateagents/mapper/TaPersonVisitRecordMapper.java Vedi File

@@ -30,7 +30,7 @@ public interface TaPersonVisitRecordMapper extends BaseMapper<TaPersonVisitRecor
30 30
      * @param page
31 31
      * @return
32 32
      */
33
-    IPage<TaPersonVisitRecord> selectAll(IPage<TaPersonVisitRecord> page);
33
+    IPage<TaPersonVisitRecord> selectAll(IPage<TaPersonVisitRecord> page, String buildingId);
34 34
 
35 35
 
36 36
     /**

+ 34
- 1
src/main/java/com/huiju/estateagents/service/IStatisticalService.java Vedi File

@@ -16,6 +16,39 @@ public interface IStatisticalService {
16 16
      */
17 17
     ResponseBean indexStatistical();
18 18
 
19
+    // ----------------   用户统计 start --------------
20
+    /**
21
+     * 用户总数
22
+     * @return
23
+     */
24
+    ResponseBean selectUserCount();
25
+
26
+    /**
27
+     * 注册数
28
+     * @return
29
+     */
30
+    ResponseBean selectRegisteredCount();
31
+
32
+    /**
33
+     * 用户最近七天
34
+     * @return
35
+     */
36
+    ResponseBean selectRecentlyCount(LocalDate startDate, LocalDate endDate);
37
+
38
+    // ----------------   用户统计 end --------------
39
+
40
+    /**
41
+     * 性别比例
42
+     * @return
43
+     */
44
+    ResponseBean selectSexUser();
45
+
46
+    /**
47
+     * 城市比例
48
+     * @return
49
+     */
50
+    ResponseBean selectCityUser();
51
+
19 52
     /**
20 53
      * 活跃用户数
21 54
      * @return
@@ -36,7 +69,7 @@ public interface IStatisticalService {
36 69
      * @param endDate
37 70
      * @return
38 71
      */
39
-    ResponseBean selectUserBehavior(Integer pageNum, Integer pageSize, LocalDate startDate,LocalDate endDate);
72
+    ResponseBean selectUserBehavior(Integer pageNum, Integer pageSize, LocalDate startDate,LocalDate endDate, String buildingId);
40 73
 
41 74
     /**
42 75
      * 行为分析的 具体数据列表

+ 86
- 80
src/main/java/com/huiju/estateagents/service/ITaBuildingDynamicService.java Vedi File

@@ -1,80 +1,86 @@
1
-package com.huiju.estateagents.service;
2
-
3
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
4
-import com.baomidou.mybatisplus.extension.service.IService;
5
-import com.huiju.estateagents.base.ResponseBean;
6
-import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
7
-import com.huiju.estateagents.entity.TaBuildingDynamic;
8
-
9
-import java.util.HashMap;
10
-
11
-/**
12
- * <p>
13
- * 项目动态表 服务类
14
- * </p>
15
- *
16
- * @author jobob
17
- * @since 2019-03-21
18
- */
19
-public interface ITaBuildingDynamicService extends IService<TaBuildingDynamic> {
20
-
21
-    /**
22
-     * 项目动态管理列表
23
-     * @return
24
-     */
25
-    ResponseBean iBuildingDynamicList(Integer pageNum, Integer pageSize, String name, String buildingId,Integer cityId);
26
-
27
-    /**
28
-     * 项目详情
29
-     * @param id
30
-     * @return
31
-     */
32
-    ResponseBean iBuildingDynamicSelectId(String id);
33
-
34
-    /**
35
-     * 微信小程序 项目动态管理列表
36
-     * @return
37
-     */
38
-    ResponseBean getWxBuildingDynamiceList(Integer pageNum, Integer pageSize,String buildingId,String openid);
39
-
40
-    /**
41
-     * 微信小程序 项目详情
42
-     * @param dynamicId
43
-     * @return
44
-     */
45
-    ResponseBean getWxBuildingDynamiceInfo(String dynamicId,String buildingId,String openid);
46
-
47
-    /**
48
-     * 动态管理添加
49
-     * @param map
50
-     * @return
51
-     */
52
-    ResponseBean buildingDynamicAdd(HashMap map);
53
-
54
-    /**
55
-     * 动态删除
56
-     * @param id
57
-     * @return
58
-     */
59
-    ResponseBean buildingDynamicDelete(String id);
60
-
61
-    /**
62
-     * 动态修改
63
-     * @param map
64
-     * @return
65
-     */
66
-    ResponseBean buildingDynamicUpdate(HashMap<Object, Object> map);
67
-
68
-    /**
69
-     * 报名活动
70
-     * @return
71
-     */
72
-    ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist);
73
-
74
-    /**
75
-     * 报名列表
76
-     * @param page
77
-     * @return
78
-     */
79
-    ResponseBean signList(Page<TaActivityDynamicEnlist> page,String dynamicId);
80
-}
1
+package com.huiju.estateagents.service;
2
+
3
+import com.baomidou.mybatisplus.core.metadata.IPage;
4
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
+import com.baomidou.mybatisplus.extension.service.IService;
6
+import com.huiju.estateagents.base.ResponseBean;
7
+import com.huiju.estateagents.entity.TaActivityDynamicEnlist;
8
+import com.huiju.estateagents.entity.TaBuildingDynamic;
9
+import com.huiju.estateagents.entity.TaPerson;
10
+
11
+import java.util.HashMap;
12
+
13
+/**
14
+ * <p>
15
+ * 项目动态表 服务类
16
+ * </p>
17
+ *
18
+ * @author jobob
19
+ * @since 2019-03-21
20
+ */
21
+public interface ITaBuildingDynamicService extends IService<TaBuildingDynamic> {
22
+
23
+    /**
24
+     * 项目动态管理列表
25
+     * @return
26
+     */
27
+    ResponseBean iBuildingDynamicList(Integer pageNum, Integer pageSize, String name, String buildingId,Integer cityId);
28
+
29
+    /**
30
+     * 项目详情
31
+     * @param id
32
+     * @return
33
+     */
34
+    ResponseBean iBuildingDynamicSelectId(String id);
35
+
36
+    /**
37
+     * 微信小程序 项目动态管理列表
38
+     * @return
39
+     */
40
+    ResponseBean getWxBuildingDynamiceList(Integer pageNum, Integer pageSize,String buildingId,String openid);
41
+
42
+    /**
43
+     * 微信小程序 项目详情
44
+     * @param dynamicId
45
+     * @return
46
+     */
47
+    ResponseBean getWxBuildingDynamiceInfo(String dynamicId,String buildingId,String openid);
48
+
49
+    /**
50
+     * 动态管理添加
51
+     * @param map
52
+     * @return
53
+     */
54
+    ResponseBean buildingDynamicAdd(HashMap map);
55
+
56
+    /**
57
+     * 动态删除
58
+     * @param id
59
+     * @return
60
+     */
61
+    ResponseBean buildingDynamicDelete(String id);
62
+
63
+    /**
64
+     * 动态修改
65
+     * @param map
66
+     * @return
67
+     */
68
+    ResponseBean buildingDynamicUpdate(HashMap<Object, Object> map);
69
+
70
+    /**
71
+     * 报名活动
72
+     * @return
73
+     */
74
+    ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist);
75
+
76
+    /**
77
+     * 报名列表
78
+     * @param page
79
+     * @return
80
+     */
81
+    ResponseBean signList(Page<TaActivityDynamicEnlist> page,String dynamicId);
82
+
83
+    IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize, String building, TaPerson person);
84
+
85
+    void setExtendInfo(TaBuildingDynamic taBuildingDynamic, TaPerson taPerson);
86
+}

+ 0
- 1
src/main/java/com/huiju/estateagents/service/ITaPersonService.java Vedi File

@@ -60,7 +60,6 @@ public interface ITaPersonService extends IService<TaPerson> {
60 60
 
61 61
     IPage<Map<String,Object>> getSavedConsaultants(int pageNumber, int pageSize,String personId);
62 62
 
63
-    IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building);
64 63
 
65 64
     List<TaPersonBuilding> getPersonBuildings(String personId);
66 65
 }

+ 75
- 4
src/main/java/com/huiju/estateagents/service/impl/StatisticalServiceImpl.java Vedi File

@@ -10,6 +10,7 @@ import com.huiju.estateagents.mapper.*;
10 10
 import com.huiju.estateagents.po.PersonPO;
11 11
 import com.huiju.estateagents.service.IStatisticalService;
12 12
 import lombok.extern.slf4j.Slf4j;
13
+import org.omg.CORBA.OBJECT_NOT_EXIST;
13 14
 import org.springframework.beans.factory.annotation.Autowired;
14 15
 import org.springframework.stereotype.Service;
15 16
 
@@ -58,7 +59,7 @@ public class StatisticalServiceImpl implements IStatisticalService {
58 59
         Integer selectRecentlyCount = taPersonMapper.selectRecentlyCount(CommConstant.PERSON_REALTY_CONSULTANT, null, null);
59 60
 
60 61
         // 用户行为
61
-        List<PersonPO> selectUserBehavior = taPersonMapper.selectUserBehavior(CommConstant.PERSON_REALTY_CONSULTANT, null, null);
62
+        List<PersonPO> selectUserBehavior = taPersonMapper.selectUserBehavior(CommConstant.PERSON_REALTY_CONSULTANT, null, null, null);
62 63
 
63 64
         // 用户活跃数
64 65
         List<Map<String, Object>> selectActiveUserCount = taPersonMapper.selectActiveUserCount(CommConstant.PERSON_REALTY_CONSULTANT, CommConstant.DAY, null, null);
@@ -160,14 +161,14 @@ public class StatisticalServiceImpl implements IStatisticalService {
160 161
     }
161 162
 
162 163
     @Override
163
-    public ResponseBean selectUserBehavior(Integer pageNum, Integer pageSize, LocalDate startDate, LocalDate endDate) {
164
+    public ResponseBean selectUserBehavior(Integer pageNum, Integer pageSize, LocalDate startDate, LocalDate endDate, String buildingId) {
164 165
         ResponseBean responseBean = new ResponseBean();
165 166
 
166 167
         // 用户行为
167
-        List<PersonPO> selectUserBehavior = taPersonMapper.selectUserBehavior(CommConstant.PERSON_REALTY_CONSULTANT, startDate, endDate);
168
+        List<PersonPO> selectUserBehavior = taPersonMapper.selectUserBehavior(CommConstant.PERSON_REALTY_CONSULTANT, startDate, endDate, buildingId);
168 169
 
169 170
         IPage<TaPersonVisitRecord> page = new Page<>(pageNum, pageSize);
170
-        IPage<TaPersonVisitRecord> visitRecordIPage = taPersonVisitRecordMapper.selectAll(page);
171
+        IPage<TaPersonVisitRecord> visitRecordIPage = taPersonVisitRecordMapper.selectAll(page, buildingId);
171 172
 
172 173
         Map<String, Object> map = new HashMap<>();
173 174
         map.put("selectUserBehavior", selectUserBehavior);
@@ -267,4 +268,74 @@ public class StatisticalServiceImpl implements IStatisticalService {
267 268
         responseBean.addSuccess(result);
268 269
         return responseBean;
269 270
     }
271
+
272
+
273
+    @Override
274
+    public ResponseBean selectUserCount() {
275
+        ResponseBean responseBean = new ResponseBean();
276
+        // 总用户数
277
+        Integer selectUserCount = taPersonMapper.selectUserCount(CommConstant.PERSON_REALTY_CONSULTANT);
278
+        Map<String, Object> map = new HashMap<>();
279
+        map.put("selectUserCount", selectUserCount);
280
+        responseBean.addSuccess(map);
281
+        return responseBean;
282
+    }
283
+
284
+    @Override
285
+    public ResponseBean selectRegisteredCount() {
286
+        ResponseBean responseBean = new ResponseBean();
287
+        // 注册数
288
+        Integer selectRegisteredCount = taPersonMapper.selectRegisteredCount(CommConstant.PERSON_REALTY_CONSULTANT);
289
+        Map<String, Object> map = new HashMap<>();
290
+        map.put("selectRegisteredCount", selectRegisteredCount);
291
+        responseBean.addSuccess(map);
292
+        return responseBean;
293
+    }
294
+
295
+    @Override
296
+    public ResponseBean selectRecentlyCount(LocalDate startDate, LocalDate endDate) {
297
+        ResponseBean responseBean = new ResponseBean();
298
+        // 最近七天
299
+        Integer selectRecentlyCount = taPersonMapper.selectRecentlyCount(CommConstant.PERSON_REALTY_CONSULTANT, startDate, endDate);
300
+        Map<String, Object> map = new HashMap<>();
301
+        map.put("selectRecentlyCount", selectRecentlyCount);
302
+        responseBean.addSuccess(map);
303
+        return responseBean;
304
+    }
305
+
306
+    @Override
307
+    public ResponseBean selectSexUser() {
308
+        ResponseBean responseBean = new ResponseBean();
309
+
310
+        // 性别比例
311
+        // 1 男 2 女
312
+        Integer selectSexMale = taPersonMapper.selectSexUser(CommConstant.PERSON_REALTY_CONSULTANT, CommConstant.SEX_MALE);
313
+        Integer selectSexFemale = taPersonMapper.selectSexUser(CommConstant.PERSON_REALTY_CONSULTANT, CommConstant.SEX_FEMALE);
314
+        Map<String, Object> selectSexMaleMap = new HashMap<>();
315
+        selectSexMaleMap.put("name", "男");
316
+        selectSexMaleMap.put("value", selectSexMale);
317
+        Map<String, Object> selectSexFemaleMap = new HashMap<>();
318
+        selectSexFemaleMap.put("name", "女");
319
+        selectSexFemaleMap.put("value", selectSexFemale);
320
+        List<Map<String, Object>> selectSexUser = new ArrayList<>();
321
+        selectSexUser.add(selectSexMaleMap);
322
+        selectSexUser.add(selectSexFemaleMap);
323
+
324
+        Map<String, Object> map = new HashMap<>();
325
+        map.put("selectSexUser", selectSexUser);
326
+        responseBean.addSuccess(map);
327
+        return responseBean;
328
+    }
329
+
330
+    @Override
331
+    public ResponseBean selectCityUser() {
332
+        ResponseBean responseBean = new ResponseBean();
333
+
334
+        // 城市比例
335
+        List<Map<String, Object>> selectCityUser = taPersonMapper.selectCityUser(CommConstant.PERSON_REALTY_CONSULTANT);
336
+        Map<String, Object> map = new HashMap<>();
337
+        map.put("selectCityUser", selectCityUser);
338
+        responseBean.addSuccess(map);
339
+        return responseBean;
340
+    }
270 341
 }

+ 46
- 3
src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java Vedi File

@@ -27,6 +27,7 @@ import java.time.Instant;
27 27
 import java.time.LocalDateTime;
28 28
 import java.time.ZoneId;
29 29
 import java.time.ZoneOffset;
30
+import java.util.ArrayList;
30 31
 import java.util.Date;
31 32
 import java.util.HashMap;
32 33
 import java.util.List;
@@ -267,13 +268,14 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
267 268
     }
268 269
 
269 270
 
270
-    private void setExtendInfo(TaBuildingDynamic taBuildingDynamic, TaPerson taPerson) {
271
+    @Override
272
+    public void setExtendInfo(TaBuildingDynamic taBuildingDynamic, TaPerson taPerson) {
271 273
         // 是否已报名
272 274
         QueryWrapper<TaActivityDynamicEnlist> activityDynamicEnlist = new QueryWrapper<>();
273 275
         activityDynamicEnlist.eq("person_id", taPerson.getPersonId());
274 276
         activityDynamicEnlist.eq("dynamic_id", taBuildingDynamic.getDynamicId());
275
-        TaActivityDynamicEnlist taActivityDynamicEnlistPhone= taActivityDynamicEnlistMapper.selectOne(activityDynamicEnlist);
276
-        if (null == taActivityDynamicEnlistPhone){
277
+        Integer taActivityDynamicEnlistPhone= taActivityDynamicEnlistMapper.selectCount(activityDynamicEnlist);
278
+        if (taActivityDynamicEnlistPhone>0){
277 279
             taBuildingDynamic.setIsSign(1);
278 280
         } else {
279 281
             taBuildingDynamic.setIsSign(0);
@@ -296,4 +298,45 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
296 298
 
297 299
         timeCondition(taBuildingDynamic);
298 300
     }
301
+
302
+    @Override
303
+    public IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String building,TaPerson person){
304
+        QueryWrapper<TaActivityDynamicEnlist> activityDynamicEnlistQueryWrapper = new QueryWrapper<>();
305
+        activityDynamicEnlistQueryWrapper.eq("phone",person.getPhone());
306
+        if(!StringUtils.isEmpty(building)){
307
+            activityDynamicEnlistQueryWrapper.eq("building_id",building);
308
+        }
309
+        List<TaActivityDynamicEnlist> activityDynamicEnlists = taActivityDynamicEnlistMapper.selectList(activityDynamicEnlistQueryWrapper);
310
+        List<String>activityIds = new ArrayList<>();
311
+        for (int i=0;i<activityDynamicEnlists.size();i++){
312
+            activityIds.add(activityDynamicEnlists.get(i).getDynamicId());
313
+        }
314
+        IPage<TaBuildingDynamic> page = new Page<>(pageNumber, pageSize);
315
+        QueryWrapper<TaBuildingDynamic> empty = new QueryWrapper<>();
316
+        if(activityIds.size()>0){
317
+            empty.in("dynamic_id",activityIds);
318
+            empty.orderBy(true,false,"start_date");
319
+            IPage<TaBuildingDynamic> result = buildingDynamicMapper.selectPage(page,empty);
320
+            for(int i=0;i<result.getRecords().size();i++){
321
+                result.getRecords().get(i).setIsSign(CommConstant.STATUS_NORMAL);
322
+                // 获取报名总数
323
+                QueryWrapper<TaActivityDynamicEnlist> taActivityDynamicEnlist = new QueryWrapper<>();
324
+                taActivityDynamicEnlist.eq("dynamic_id", result.getRecords().get(i).getDynamicId());
325
+                taActivityDynamicEnlist.eq("building_id", result.getRecords().get(i).getBuildingId());
326
+                int applyCount= taActivityDynamicEnlistMapper.selectCount(taActivityDynamicEnlist);
327
+                result.getRecords().get(i).setCount(applyCount);
328
+
329
+                // 是否收藏
330
+                TaSave taSave = iTaSaveService.getInfoBy(person.getPersonId(), CommConstant.FAVOR_ACTIVITY, result.getRecords().get(i).getDynamicId());
331
+                if (null == taSave) {
332
+                    result.getRecords().get(i).setIsSaved(0);
333
+                } else {
334
+                    result.getRecords().get(i).setIsSaved(1);
335
+                }
336
+            }
337
+            return result;
338
+        }else {
339
+            return null;
340
+        }
341
+    }
299 342
 }

+ 4
- 2
src/main/java/com/huiju/estateagents/service/impl/TaBuildingServiceImpl.java Vedi File

@@ -139,7 +139,7 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
139 139
 
140 140
         getBuildingAttaches(building);
141 141
         QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
142
-        saveQueryWrapper.eq("target_type",CommConstant.FAVOR_PROJECT);
142
+        saveQueryWrapper.eq("tagert_type",CommConstant.FAVOR_PROJECT);
143 143
         saveQueryWrapper.eq("person_id",personId);
144 144
         saveQueryWrapper.eq("saved_target",building.getBuildingId());
145 145
         Integer num = taSaveMapper.selectCount(saveQueryWrapper);
@@ -195,7 +195,9 @@ public class TaBuildingServiceImpl extends ServiceImpl<TaBuildingMapper, TaBuild
195 195
         JSONObject object= JSONObject.parseObject(parameter);
196 196
 
197 197
         TaBuilding building = JSONObject.parseObject(parameter,TaBuilding.class);
198
-        building.setOpeningDate(DateUtils.date2LocalDateTime(object.getDate("openingDate")));
198
+        if(null!= object.getDate("openingDate")){
199
+            building.setOpeningDate(DateUtils.date2LocalDateTime(object.getDate("openingDate")));
200
+        }
199 201
         building.setCreateDate(LocalDateTime.now());
200 202
         building.setStatus(0);
201 203
         if (taBuildingMapper.insert(building) < 1) {

+ 1
- 1
src/main/java/com/huiju/estateagents/service/impl/TaNewsServiceImpl.java Vedi File

@@ -167,7 +167,7 @@ public class TaNewsServiceImpl extends ServiceImpl<TaNewsMapper, TaNews> impleme
167 167
             responseBean.addError("数据不存!");
168 168
         }else {
169 169
             QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
170
-            saveQueryWrapper.eq("tagret_type", CommConstant.FAVOR_NEWS);
170
+            saveQueryWrapper.eq("tagert_type", CommConstant.FAVOR_NEWS);
171 171
             saveQueryWrapper.eq("person_id",personId);
172 172
             saveQueryWrapper.eq("saved_target",taNews.getNewsId());
173 173
             Integer num = taSaveMapper.selectCount(saveQueryWrapper);

+ 1
- 26
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java Vedi File

@@ -234,7 +234,7 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
234 234
         result.put("address", person.getAddress());
235 235
         result.put("personTags",person.getPersonTags());
236 236
         QueryWrapper<TaSave> saveQueryWrapper = new QueryWrapper<>();
237
-        saveQueryWrapper.eq("tagret_type", CommConstant.FAVOR_CONSULTANT);
237
+        saveQueryWrapper.eq("tagert_type", "card");
238 238
         saveQueryWrapper.eq("person_id",personId);
239 239
         saveQueryWrapper.eq("saved_target",person.getPersonId());
240 240
         Integer num = taSaveMapper.selectCount(saveQueryWrapper);
@@ -630,30 +630,5 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
630 630
 
631 631
     }
632 632
 
633
-    @Override
634
-    public IPage<TaBuildingDynamic> getJoinedActivity(int pageNumber, int pageSize,String phone,String building){
635
-        QueryWrapper<TaActivityDynamicEnlist> activityDynamicEnlistQueryWrapper = new QueryWrapper<>();
636
-        activityDynamicEnlistQueryWrapper.eq("phone",phone);
637
-        if(!StringUtils.isEmpty(building)){
638
-            activityDynamicEnlistQueryWrapper.eq("building_id",building);
639
-        }
640
-        List<TaActivityDynamicEnlist> activityDynamicEnlists = taActivityDynamicEnlistMapper.selectList(activityDynamicEnlistQueryWrapper);
641
-        List<String>activityIds = new ArrayList<>();
642
-        for (int i=0;i<activityDynamicEnlists.size();i++){
643
-            activityIds.add(activityDynamicEnlists.get(i).getDynamicId());
644
-        }
645
-        IPage<TaBuildingDynamic> page = new Page<>(pageNumber, pageSize);
646
-        QueryWrapper<TaBuildingDynamic> empty = new QueryWrapper<>();
647
-        if(activityIds.size()>0){
648
-            empty.in("dynamic_id",activityIds);
649
-            empty.orderBy(true,false,"start_date");
650
-            return taBuildingDynamicMapper.selectPage(page,empty);
651
-        }else {
652
-            return null;
653
-        }
654
-
655 633
 
656
-
657
-
658
-    }
659 634
 }

+ 1
- 1
src/main/java/com/huiju/estateagents/service/impl/TaSaveServiceImpl.java Vedi File

@@ -123,7 +123,7 @@ public class TaSaveServiceImpl extends ServiceImpl<TaSaveMapper, TaSave> impleme
123 123
 
124 124
         // 如果是收藏资讯, 则 - 1
125 125
         if (typeOf.equals(CommConstant.FAVOR_NEWS)) {
126
-            taNewsMapper.setFieldNum(taPerson.getPersonId(),"save_num", -1);
126
+            taNewsMapper.setFieldNum(like,"save_num", -1);
127 127
         }
128 128
 
129 129
         // 如果是活动收藏, 则 - 1

+ 3
- 0
src/main/resources/mapper/TaPersonMapper.xml Vedi File

@@ -198,6 +198,9 @@ FROM
198 198
         ta_person tp
199 199
         INNER JOIN ta_person_visit_record tpvr ON tp.person_id = tpvr.person_id
200 200
         where ifnull(tp.person_type, '') != #{personType}
201
+        <if test="buildingId != null and buildingId != ''">
202
+            and tpvr.building_id = #{buildingId}
203
+        </if>
201 204
         GROUP BY  tpvr.event_type, DATE_FORMAT( tpvr.visit_time , '%Y-%m-%d' )
202 205
         ) AS temp ON temp_date.date = temp.date and temp_date.type_id = temp.event_type
203 206
         order by temp_date.date asc

+ 5
- 0
src/main/resources/mapper/TaPersonVisitRecordMapper.xml Vedi File

@@ -14,6 +14,11 @@
14 14
         FROM
15 15
             ta_person_visit_record tpvr
16 16
             LEFT JOIN ta_person tp ON tpvr.person_id = tp.person_id
17
+            <where>
18
+                <if test="buildingId != null and buildingId != ''">
19
+                    tpvr.building_id = #{buildingId}
20
+                </if>
21
+            </where>
17 22
         GROUP BY tpvr.person_id, tpvr.event
18 23
     </select>
19 24