浏览代码

新需求

魏超 5 年前
父节点
当前提交
182a421ce2

+ 5
- 0
src/main/java/com/huiju/estateagents/controller/HelpActivityController.java 查看文件

@@ -17,6 +17,7 @@ import com.huiju.estateagents.excel.HelpRecordExport;
17 17
 import com.huiju.estateagents.excel.PublicCustomerExport;
18 18
 import com.huiju.estateagents.excel.handler.CustomCellWriteHandler;
19 19
 import com.huiju.estateagents.mapper.HelpInitiateRecordMapper;
20
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
20 21
 import com.huiju.estateagents.service.*;
21 22
 import io.swagger.annotations.Api;
22 23
 import io.swagger.annotations.ApiOperation;
@@ -457,7 +458,11 @@ public class HelpActivityController extends BaseController {
457 458
             @ApiImplicitParam(dataTypeClass = Integer.class, name = "helpActivityId", paramType = "path", value = "活动状态")
458 459
     })
459 460
     @RequestMapping(value = "/wx/helpActivity/{helpActivityId}", method = RequestMethod.GET)
461
+    @ReportCustomer(type = "help")
460 462
     public ResponseBean wxHelpActivityGet(@PathVariable(value = "helpActivityId") Integer helpActivityId,
463
+                                          @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
464
+                                          @RequestParam(value = "channelId", required = false) String channelId,
465
+                                          @RequestParam(value = "sceneId", required = false) String sceneId,
461 466
                                           HttpServletRequest request, @RequestParam(value = "initiateId",required = false) Integer initiateId) {
462 467
         ResponseBean responseBean = new ResponseBean();
463 468
         Integer orgId = getOrgId(request);

+ 1
- 1
src/main/java/com/huiju/estateagents/controller/MiniAppController.java 查看文件

@@ -486,7 +486,7 @@ public class MiniAppController extends BaseController {
486 486
     /**
487 487
      * 获取用户绑定手机号信息
488 488
      */
489
-    @PostMapping("Phone")
489
+    @PostMapping("/userPhone")
490 490
     public ResponseBean phone(@RequestBody String paramStr, HttpServletRequest request) {
491 491
         String appid = request.getHeader("appid");
492 492
         JSONObject params = JSONObject.parseObject(paramStr);

+ 7
- 1
src/main/java/com/huiju/estateagents/controller/TaBuildingController.java 查看文件

@@ -11,6 +11,7 @@ import com.huiju.estateagents.entity.TaOrg;
11 11
 import com.huiju.estateagents.entity.TaPerson;
12 12
 import com.huiju.estateagents.mapper.TaBuildingMapper;
13 13
 import com.huiju.estateagents.mapper.TaOrgMapper;
14
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
14 15
 import com.huiju.estateagents.service.ITaBuildingService;
15 16
 import com.huiju.estateagents.service.ITaPersonService;
16 17
 import com.huiju.estateagents.service.ITaSaveService;
@@ -355,7 +356,12 @@ public class TaBuildingController extends BaseController {
355 356
      * @return
356 357
      */
357 358
     @RequestMapping(value = "/wx/buildingSelectId/{id}", method = RequestMethod.GET)
358
-    public ResponseBean wxBuildingSelectId(@PathVariable(value = "id") String id, HttpServletRequest request) {
359
+    @ReportCustomer(type = "building")
360
+    public ResponseBean wxBuildingSelectId(@PathVariable(value = "id") String id,
361
+                                           @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
362
+                                           @RequestParam(value = "channelId", required = false) String channelId,
363
+                                           @RequestParam(value = "sceneId", required = false) String sceneId,
364
+                                           HttpServletRequest request) {
359 365
         String openid = getOpenId(request);
360 366
         Integer orgId = getOrgId(request);
361 367
         List<TaPerson> persons = iTaPersonService.getPersonsByOpenId(openid);

+ 5
- 0
src/main/java/com/huiju/estateagents/controller/TaBuildingDynamicController.java 查看文件

@@ -19,6 +19,7 @@ import com.huiju.estateagents.excel.HelpInitiateRecordSucceed;
19 19
 import com.huiju.estateagents.excel.TaActivityDynamicEnlistExport;
20 20
 import com.huiju.estateagents.excel.handler.CustomCellWriteHandler;
21 21
 import com.huiju.estateagents.mapper.*;
22
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
22 23
 import com.huiju.estateagents.service.*;
23 24
 import io.swagger.annotations.Api;
24 25
 import io.swagger.annotations.ApiImplicitParam;
@@ -291,7 +292,11 @@ public class TaBuildingDynamicController extends BaseController {
291 292
             @ApiImplicitParam(dataTypeClass = String.class, name = "dynamicId", paramType = "path",value = "活动ID")
292 293
     })
293 294
     @RequestMapping(value = "/wx/buildingDynamiceEnlistInfo/{dynamicId}", method = RequestMethod.GET)
295
+    @ReportCustomer(type = "activity")
294 296
     public ResponseBean iBuildingDynamicEnlistInfo(@PathVariable(value = "dynamicId") String dynamicId,
297
+                                                   @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
298
+                                                   @RequestParam(value = "channelId", required = false) String channelId,
299
+                                                   @RequestParam(value = "sceneId", required = false) String sceneId,
295 300
                                              HttpServletRequest request){
296 301
         ResponseBean  responseBean = new ResponseBean();
297 302
                 String openid = getOpenId(request);

+ 8
- 2
src/main/java/com/huiju/estateagents/controller/TaHousingResourcesController.java 查看文件

@@ -7,6 +7,7 @@ import com.huiju.estateagents.base.ResponseBean;
7 7
 import com.huiju.estateagents.common.CommConstant;
8 8
 import com.huiju.estateagents.entity.*;
9 9
 import com.huiju.estateagents.po.TaHousingResourcesPO;
10
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
10 11
 import com.huiju.estateagents.service.*;
11 12
 import org.apache.commons.collections.CollectionUtils;
12 13
 import org.apache.commons.lang3.StringUtils;
@@ -244,9 +245,14 @@ public class TaHousingResourcesController extends BaseController {
244 245
      * @author gushaoyong
245 246
      */
246 247
     @RequestMapping(value = "/wx/listHousingResources", method = RequestMethod.GET)
248
+    @ReportCustomer(type = "house")
247 249
     public ResponseBean listHousingResources(@RequestParam(value = "salesBatchId") String salesBatchId,
248
-                                             String startPrice, String endPrice, String apartmentId, @RequestParam(value = "source", required = false) String source,
249
-                                             HttpServletRequest request) {
250
+                                             @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
251
+                                             @RequestParam(value = "channelId", required = false) String channelId,
252
+                                             @RequestParam(value = "sceneId", required = false) String sceneId,
253
+                                             HttpServletRequest request,
254
+                                             String startPrice, String endPrice, String apartmentId, @RequestParam(value = "source", required = false) String source
255
+                                             ) {
250 256
         ResponseBean responseBean = new ResponseBean();
251 257
         Integer orgId = getOrgId(request);
252 258
         String openid = getOpenId(request);

+ 7
- 1
src/main/java/com/huiju/estateagents/controller/TaLiveActivityController.java 查看文件

@@ -8,6 +8,7 @@ import com.huiju.estateagents.common.CommConstant;
8 8
 import com.huiju.estateagents.common.StringUtils;
9 9
 import com.huiju.estateagents.entity.ExtendContent;
10 10
 import com.huiju.estateagents.entity.TaLiveActivity;
11
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
11 12
 import com.huiju.estateagents.service.IExtendContentService;
12 13
 import com.huiju.estateagents.service.ITaLiveActivityService;
13 14
 import org.slf4j.Logger;
@@ -221,7 +222,12 @@ public class TaLiveActivityController extends BaseController {
221 222
      * @return
222 223
      */
223 224
     @RequestMapping(value = "/wx/taLiveActivity/{id}", method = RequestMethod.GET)
224
-    public ResponseBean getLiveActivityDetailById(@PathVariable("id") String id, HttpServletRequest request) {
225
+    @ReportCustomer(type = "live")
226
+    public ResponseBean getLiveActivityDetailById(@PathVariable("id") String id,
227
+                                                  @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
228
+                                                  @RequestParam(value = "channelId", required = false) String channelId,
229
+                                                  @RequestParam(value = "sceneId", required = false) String sceneId,
230
+                                                  HttpServletRequest request) {
225 231
         ResponseBean responseBean = new ResponseBean();
226 232
         try {
227 233
             responseBean = iTaLiveActivityService.getLiveActivityDetailById(id, getOrgId(request));

+ 7
- 1
src/main/java/com/huiju/estateagents/controller/TaNewsController.java 查看文件

@@ -10,6 +10,7 @@ import com.huiju.estateagents.common.JWTUtils;
10 10
 import com.huiju.estateagents.entity.TaBuildingDynamic;
11 11
 import com.huiju.estateagents.entity.TaNews;
12 12
 import com.huiju.estateagents.entity.TaPerson;
13
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
13 14
 import com.huiju.estateagents.service.*;
14 15
 import io.swagger.annotations.Api;
15 16
 import io.swagger.annotations.ApiImplicitParam;
@@ -215,7 +216,12 @@ public class TaNewsController extends BaseController {
215 216
      * @param id  实体ID
216 217
      */
217 218
     @RequestMapping(value="/wx/taNews/{id}",method= RequestMethod.GET)
218
-    public ResponseBean wxTaNewsGet(@PathVariable Integer id,HttpServletRequest request){
219
+    @ReportCustomer(type = "news")
220
+    public ResponseBean wxTaNewsGet(@PathVariable Integer id,
221
+                                    @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
222
+                                    @RequestParam(value = "channelId", required = false) String channelId,
223
+                                    @RequestParam(value = "sceneId", required = false) String sceneId,
224
+                                    HttpServletRequest request){
219 225
         String openid = getOpenId(request);
220 226
         List<TaPerson> persons = iTaPersonService.getPersonsByOpenId(openid);
221 227
         if (null == persons || persons.size() == 0) {

+ 9
- 2
src/main/java/com/huiju/estateagents/controller/TaPersonController.java 查看文件

@@ -784,8 +784,15 @@ public class TaPersonController extends BaseController {
784 784
     }
785 785
 
786 786
     @PutMapping("/wx/userInfo/updatePhoto")
787
-    public ResponseBean updateUserPhoto(String photoUrl, HttpServletRequest request){
787
+    public ResponseBean updateUserPhoto(@RequestBody Map<String, String> photoUrl, HttpServletRequest request){
788
+        ResponseBean responseBean = new ResponseBean();
789
+
788 790
         String openId = getOpenId(request);
789
-        return taPersonService.updateUserPhoto(photoUrl, openId);
791
+        String imgUrl = photoUrl.get("photoUrl");
792
+        if (StringUtils.isEmpty(imgUrl)){
793
+            responseBean.addError("请上传图片");
794
+            return responseBean;
795
+        }
796
+        return taPersonService.updateUserPhoto(imgUrl, openId);
790 797
     }
791 798
 }

+ 5
- 1
src/main/java/com/huiju/estateagents/controller/TaShareActivityController.java 查看文件

@@ -363,7 +363,11 @@ public class TaShareActivityController extends BaseController {
363 363
     @RequestMapping(value="/wx/taShareActivity/{groupActivityId}",method= RequestMethod.GET)
364 364
     @ReportCustomer(type = "group")
365 365
     public ResponseBean wxShareActivityGet(@PathVariable Integer groupActivityId,
366
-                                           HttpServletRequest request, @RequestParam(value = "recordId",required = false) Integer recordId ){
366
+                                           @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
367
+                                           @RequestParam(value = "channelId", required = false) String channelId,
368
+                                           @RequestParam(value = "sceneId", required = false) String sceneId,
369
+                                           HttpServletRequest request,
370
+                                           @RequestParam(value = "recordId",required = false) Integer recordId ){
367 371
         ResponseBean responseBean = new ResponseBean();
368 372
         String openid = getOpenId(request);
369 373
         Integer orgId = getOrgId(request);

+ 25
- 11
src/main/java/com/huiju/estateagents/drainage/controller/TaDrainageController.java 查看文件

@@ -1,5 +1,23 @@
1 1
 package com.huiju.estateagents.drainage.controller;
2 2
 
3
+import java.time.LocalDateTime;
4
+import java.util.List;
5
+import java.util.UUID;
6
+import java.util.stream.Collectors;
7
+
8
+import javax.servlet.http.HttpServletRequest;
9
+
10
+import org.slf4j.Logger;
11
+import org.slf4j.LoggerFactory;
12
+import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.web.bind.annotation.PathVariable;
14
+import org.springframework.web.bind.annotation.RequestBody;
15
+import org.springframework.web.bind.annotation.RequestMapping;
16
+import org.springframework.web.bind.annotation.RequestMethod;
17
+import org.springframework.web.bind.annotation.RequestParam;
18
+import org.springframework.web.bind.annotation.ResponseBody;
19
+import org.springframework.web.bind.annotation.RestController;
20
+
3 21
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 22
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 23
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -15,20 +33,11 @@ import com.huiju.estateagents.entity.ExtendContent;
15 33
 import com.huiju.estateagents.entity.TaMiniapp;
16 34
 import com.huiju.estateagents.entity.TaPersonBuilding;
17 35
 import com.huiju.estateagents.mapper.TaMiniappMapper;
36
+import com.huiju.estateagents.reportCustomerAop.ReportCustomer;
18 37
 import com.huiju.estateagents.service.IExtendContentService;
19 38
 import com.huiju.estateagents.service.IMiniAppService;
20 39
 import com.huiju.estateagents.third.entity.TaThirdPartyMiniappConfig;
21 40
 import com.huiju.estateagents.third.service.ITaThirdPartyMiniappConfigService;
22
-import org.slf4j.Logger;
23
-import org.slf4j.LoggerFactory;
24
-import org.springframework.beans.factory.annotation.Autowired;
25
-import org.springframework.web.bind.annotation.*;
26
-
27
-import javax.servlet.http.HttpServletRequest;
28
-import java.time.LocalDateTime;
29
-import java.util.List;
30
-import java.util.UUID;
31
-import java.util.stream.Collectors;
32 41
 
33 42
 
34 43
 /**
@@ -332,7 +341,12 @@ public class TaDrainageController extends BaseController {
332 341
      * @param id  实体ID
333 342
      */
334 343
     @RequestMapping(value="/wx/taDrainage/{id}",method= RequestMethod.GET)
335
-    public ResponseBean wxDrainageGet(@PathVariable Integer id, HttpServletRequest request){
344
+    @ReportCustomer(type = "h5")
345
+    public ResponseBean wxDrainageGet(@PathVariable Integer id,
346
+                                      @RequestParam(value = "qrCodeId", required = false) String qrCodeId,
347
+                                      @RequestParam(value = "channelId", required = false) String channelId,
348
+                                      @RequestParam(value = "sceneId", required = false) String sceneId,
349
+                                      HttpServletRequest request){
336 350
         ResponseBean responseBean = new ResponseBean();
337 351
         try {
338 352
             responseBean.addSuccess(iTaDrainageService.getById(id));

+ 0
- 1
src/main/java/com/huiju/estateagents/entity/TaCustomerFrom.java 查看文件

@@ -19,7 +19,6 @@ import lombok.experimental.Accessors;
19 19
  */
20 20
 @Data
21 21
 @EqualsAndHashCode(callSuper = false)
22
-@Accessors(chain = true)
23 22
 public class TaCustomerFrom implements Serializable {
24 23
 
25 24
     private static final long serialVersionUID = 1L;

+ 4
- 0
src/main/java/com/huiju/estateagents/entity/TaPersonVisitRecord.java 查看文件

@@ -214,4 +214,8 @@ public class TaPersonVisitRecord implements Serializable {
214 214
      */
215 215
     @TableField(exist = false)
216 216
     private String city;
217
+
218
+    private Integer qrCodeId;
219
+
220
+    private Integer channelId;
217 221
 }

+ 0
- 1
src/main/java/com/huiju/estateagents/reportCustomerAop/ReportCustomer.java 查看文件

@@ -6,7 +6,6 @@ import java.lang.annotation.Retention;
6 6
 import java.lang.annotation.RetentionPolicy;
7 7
 import java.lang.annotation.Target;
8 8
 
9
-import javax.servlet.http.HttpServletRequest;
10 9
 
11 10
 @Retention(RetentionPolicy.RUNTIME)
12 11
 @Target({ElementType.METHOD})

+ 64
- 29
src/main/java/com/huiju/estateagents/reportCustomerAop/ReportCustomerAspect.java 查看文件

@@ -1,23 +1,21 @@
1 1
 package com.huiju.estateagents.reportCustomerAop;
2 2
 
3 3
 import java.time.LocalDateTime;
4
-import java.util.ArrayList;
5
-import java.util.Arrays;
6 4
 import java.util.List;
5
+import java.util.Map;
7 6
 
8 7
 import javax.servlet.http.HttpServletRequest;
9 8
 
10 9
 import org.aspectj.lang.JoinPoint;
11
-import org.aspectj.lang.ProceedingJoinPoint;
12
-import org.aspectj.lang.annotation.Around;
13 10
 import org.aspectj.lang.annotation.Aspect;
14 11
 import org.aspectj.lang.annotation.Before;
15 12
 import org.aspectj.lang.annotation.Pointcut;
16 13
 import org.aspectj.lang.reflect.MethodSignature;
14
+import org.slf4j.Logger;
15
+import org.slf4j.LoggerFactory;
17 16
 import org.springframework.beans.factory.annotation.Autowired;
18 17
 import org.springframework.stereotype.Component;
19 18
 
20
-import com.alibaba.fastjson.JSONObject;
21 19
 import com.huiju.estateagents.base.BaseController;
22 20
 import com.huiju.estateagents.base.ResponseBean;
23 21
 import com.huiju.estateagents.common.CommConstant;
@@ -29,12 +27,12 @@ import com.huiju.estateagents.mapper.TaBuildingMapper;
29 27
 import com.huiju.estateagents.mapper.TaPersonMapper;
30 28
 import com.huiju.estateagents.service.ITaRecommendCustomerService;
31 29
 
32
-import io.swagger.models.auth.In;
33
-
34 30
 @Aspect
35 31
 @Component
36 32
 public class ReportCustomerAspect extends BaseController {
37 33
 
34
+    private final Logger logger = LoggerFactory.getLogger(ReportCustomerAspect.class);
35
+
38 36
     @Autowired
39 37
     private ITaRecommendCustomerService iTaRecommendCustomerService;
40 38
 
@@ -42,7 +40,10 @@ public class ReportCustomerAspect extends BaseController {
42 40
     TaPersonMapper taPersonMapper;
43 41
 
44 42
     @Autowired
45
-    private TaBuildingMapper taBuildingMapper;
43
+    TaBuildingMapper taBuildingMapper;
44
+
45
+    @Autowired
46
+    ReportCustomerImpl reportCustomerImpl;
46 47
 
47 48
 
48 49
     /** 以自定义 @ReportCustomer 注解为切点 */
@@ -58,51 +59,47 @@ public class ReportCustomerAspect extends BaseController {
58 59
             ReportCustomer reportCustomer = ((MethodSignature)proceedingJoinPoint.getSignature()).getMethod().getAnnotation(ReportCustomer.class);
59 60
             //获取请求参数
60 61
             Object[] args = proceedingJoinPoint.getArgs();
61
-            HttpServletRequest request = (HttpServletRequest)args[1];
62
+            String targetType = reportCustomer.type();
63
+            String targetId = String.valueOf(args[0]);
64
+            String qrCodeId = String.valueOf(args[1]);
65
+            String channelId = String.valueOf(args[2]);
66
+            String sceneId = String.valueOf(args[3]);
67
+            HttpServletRequest request = (HttpServletRequest)args[4];
62 68
 
69
+            Map<String, Object> stringObjectMap = getBuildingByIdAndType(targetId, targetType);
63 70
             if (request == null){
64 71
                 responseBean.addError("未授权,不进行操作");
65 72
                 return responseBean;
66 73
             }
67 74
 
68
-            String params = request.getHeader("reportInfo");
69
-            JSONObject paramObject = JSONObject.parseObject(params);
75
+            String consultantPersonId = request.getHeader("x-consultant");
76
+            String recommend = request.getHeader("x-recommender");
70 77
 
71 78
             List<TaPerson> persons = getPersonsByOpenId(getOpenId(request));
72 79
             TaPerson taPerson = persons.get(0);
73 80
             Integer orgId = getOrgId(request);
74 81
 
75
-            // 楼盘ID
76
-            String buildingId = paramObject.getString("buildingId");
77
-            // 场景ID
78
-            String sceneId = paramObject.getString("sceneId");
79
-            // 访问目标
80
-            String targetType = reportCustomer.type();
81
-            // 目标ID
82
-            String targetId = paramObject.getString("targetId");
83
-            // 目标名称
84
-            String targetName = paramObject.getString("targetName");
85
-            // 推广用户
86
-            String promoter = paramObject.getString("promoter");
87
-
88
-            TaCustomerFrom  taCustomerFrom = assembleVO(taPerson, targetType, targetId, targetName, orgId, sceneId);
82
+            TaCustomerFrom  taCustomerFrom = assembleVO(taPerson, targetType, targetId, stringObjectMap.get("targetName").toString(), orgId, sceneId, channelId, qrCodeId);
89 83
             // 推广人
90
-            TaPerson recPerson = StringUtils.isEmpty(promoter) ? null : taPersonMapper.getById(promoter);
84
+            TaPerson recPerson = StringUtils.isEmpty(recommend) ? null : taPersonMapper.getById(recommend);
91 85
             // 是否置业顾问
92 86
             boolean isConsultant = null != recPerson && CommConstant.PERSON_REALTY_CONSULTANT.equals(recPerson.getPersonType());
87
+            TaPerson consultantInfo = null != consultantPersonId ? reportCustomerImpl.getPerson(consultantPersonId) : (isConsultant ? recPerson : null);
93 88
             // 推荐楼盘
94
-            TaBuilding building = StringUtils.isEmpty(buildingId) ? null : taBuildingMapper.selectById(buildingId);
89
+            TaBuilding taBuilding = (TaBuilding) stringObjectMap.get("taBuilding");
90
+            TaBuilding building = taBuilding == null ? null : taBuildingMapper.selectById(taBuilding.getBuildingId());
95 91
 
96
-            iTaRecommendCustomerService.newCustomer(orgId, taPerson, recPerson, isConsultant ? recPerson : null, building, taCustomerFrom);
92
+            iTaRecommendCustomerService.newCustomer(orgId, taPerson, recPerson, consultantInfo, building, taCustomerFrom);
97 93
             responseBean.addSuccess("绑定成功");
98 94
 
99 95
         }catch (Exception e){
96
+            logger.error("绑定失败");
100 97
             responseBean.addError("失败");
101 98
         }
102 99
         return responseBean;
103 100
     }
104 101
 
105
-    public TaCustomerFrom assembleVO(TaPerson person, String targetType, String targetId, String targetName, Integer orgId, String sceneId){
102
+    public TaCustomerFrom assembleVO(TaPerson person, String targetType, String targetId, String targetName, Integer orgId, String sceneId, String channelId, String qrCodeId){
106 103
         // 客户来源
107 104
         TaCustomerFrom customerFrom = new TaCustomerFrom();
108 105
         customerFrom.setPersonId(person.getPersonId());
@@ -112,6 +109,12 @@ public class ReportCustomerAspect extends BaseController {
112 109
         customerFrom.setTargetName(targetName);
113 110
         customerFrom.setOrgId(orgId);
114 111
         customerFrom.setSceneId(sceneId);
112
+        if (!StringUtils.isEmpty(channelId)){
113
+            customerFrom.setChannelId(Integer.valueOf(channelId));
114
+        }
115
+        if(!StringUtils.isEmpty(qrCodeId)){
116
+            customerFrom.setQrCodeId(Integer.valueOf(qrCodeId));
117
+        }
115 118
         customerFrom.setCreateDate(LocalDateTime.now());
116 119
 
117 120
         return customerFrom;
@@ -120,4 +123,36 @@ public class ReportCustomerAspect extends BaseController {
120 123
     public List<TaPerson> getPersonsByOpenId(String openId){
121 124
         return taPersonMapper.getPersonByOpenId(openId);
122 125
     }
126
+
127
+    public Map<String, Object> getBuildingByIdAndType(String targetId, String targetType){
128
+        Map<String, Object> buildingAndNameInfo = null;
129
+
130
+        switch (targetType){
131
+            case CommConstant.FAVOR_ACTIVITY:
132
+                buildingAndNameInfo = reportCustomerImpl.selectActivityBuildingInfo(targetId);
133
+                break;
134
+            case CommConstant.POINTS_CHANGE_HELP:
135
+                buildingAndNameInfo = reportCustomerImpl.selectHelpBuildingInfo(targetId);
136
+                break;
137
+            case CommConstant.POINTS_CHANGE_GROUP:
138
+                buildingAndNameInfo = reportCustomerImpl.selectGroupBuildingInfo(targetId);
139
+                break;
140
+            case CommConstant.LIVE:
141
+                buildingAndNameInfo = reportCustomerImpl.selectLiveBuildingInfo(targetId);
142
+                break;
143
+            case CommConstant.EVENT_H5:
144
+                buildingAndNameInfo = reportCustomerImpl.selectH5BuildingInfo(targetId);
145
+                break;
146
+            case CommConstant.FAVOR_NEWS:
147
+                buildingAndNameInfo = reportCustomerImpl.selectNewsBuildingInfo(targetId);
148
+                break;
149
+            default:
150
+                buildingAndNameInfo = reportCustomerImpl.selectBuildingInfo(targetId);
151
+                break;
152
+        }
153
+
154
+        return buildingAndNameInfo;
155
+    }
156
+
157
+
123 158
 }

+ 161
- 0
src/main/java/com/huiju/estateagents/reportCustomerAop/ReportCustomerImpl.java 查看文件

@@ -0,0 +1,161 @@
1
+package com.huiju.estateagents.reportCustomerAop;
2
+
3
+import java.util.HashMap;
4
+import java.util.Map;
5
+
6
+import org.springframework.beans.factory.annotation.Autowired;
7
+import org.springframework.stereotype.Service;
8
+
9
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
10
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
11
+import com.huiju.estateagents.drainage.entity.TaDrainage;
12
+import com.huiju.estateagents.drainage.mapper.TaDrainageMapper;
13
+import com.huiju.estateagents.entity.HelpActivity;
14
+import com.huiju.estateagents.entity.TaBuilding;
15
+import com.huiju.estateagents.entity.TaBuildingDynamic;
16
+import com.huiju.estateagents.entity.TaLiveActivity;
17
+import com.huiju.estateagents.entity.TaNews;
18
+import com.huiju.estateagents.entity.TaPerson;
19
+import com.huiju.estateagents.entity.TaShareActivity;
20
+import com.huiju.estateagents.mapper.HelpActivityMapper;
21
+import com.huiju.estateagents.mapper.TaBuildingDynamicMapper;
22
+import com.huiju.estateagents.mapper.TaBuildingMapper;
23
+import com.huiju.estateagents.mapper.TaLiveActivityMapper;
24
+import com.huiju.estateagents.mapper.TaNewsMapper;
25
+import com.huiju.estateagents.mapper.TaPersonMapper;
26
+import com.huiju.estateagents.mapper.TaShareActivityMapper;
27
+
28
+import lombok.extern.slf4j.Slf4j;
29
+
30
+@Slf4j
31
+@Service
32
+public class ReportCustomerImpl extends ServiceImpl<TaPersonMapper, TaPerson> {
33
+
34
+    @Autowired
35
+    private TaBuildingMapper taBuildingMapper;
36
+
37
+    @Autowired
38
+    private TaNewsMapper taNewsMapper;
39
+
40
+    @Autowired
41
+    private TaBuildingDynamicMapper taBuildingDynamicMapper;
42
+
43
+    @Autowired
44
+    private HelpActivityMapper helpActivityMapper;
45
+
46
+    @Autowired
47
+    private TaShareActivityMapper taShareActivityMapper;
48
+
49
+    @Autowired
50
+    private TaLiveActivityMapper taLiveActivityMapper;
51
+
52
+    @Autowired
53
+    private TaDrainageMapper taDrainageMapper;
54
+
55
+
56
+    public Map<String, Object> selectActivityBuildingInfo(String targetId){
57
+        Map<String, Object> map = new HashMap<>();
58
+
59
+        QueryWrapper<TaBuildingDynamic> taBuildingDynamicQueryWrapper = new QueryWrapper<>();
60
+        taBuildingDynamicQueryWrapper.eq("dynamic_id", targetId);
61
+        TaBuildingDynamic taBuildingDynamic = taBuildingDynamicMapper.selectOne(taBuildingDynamicQueryWrapper);
62
+        map.put("targetName", taBuildingDynamic.getTitle());
63
+
64
+        TaBuilding taBuilding = buildingInfo(taBuildingDynamic.getBuildingId());
65
+        map.put("taBuilding", taBuilding);
66
+
67
+        return map;
68
+    }
69
+
70
+    public Map<String, Object> selectHelpBuildingInfo(String targetId){
71
+        Map<String, Object> map = new HashMap<>();
72
+
73
+        QueryWrapper<HelpActivity> helpActivityQueryWrapper = new QueryWrapper<>();
74
+        helpActivityQueryWrapper.eq("help_activity_id", targetId);
75
+        HelpActivity helpActivity = helpActivityMapper.selectOne(helpActivityQueryWrapper);
76
+        map.put("targetName", helpActivity.getTitle());
77
+
78
+        TaBuilding taBuilding = buildingInfo(helpActivity.getBuildingId());
79
+        map.put("taBuilding", taBuilding);
80
+
81
+        return map;
82
+    }
83
+
84
+    public Map<String, Object> selectGroupBuildingInfo(String targetId){
85
+        Map<String, Object> map = new HashMap<>();
86
+
87
+        QueryWrapper<TaShareActivity> taShareActivityQueryWrapper = new QueryWrapper<>();
88
+        taShareActivityQueryWrapper.eq("group_activity_id", targetId);
89
+        TaShareActivity taShareActivity = taShareActivityMapper.selectOne(taShareActivityQueryWrapper);
90
+        map.put("targetName", taShareActivity.getActivityName());
91
+
92
+        TaBuilding taBuilding = buildingInfo(taShareActivity.getBuildingId());
93
+        map.put("taBuilding", taBuilding);
94
+
95
+        return map;
96
+    }
97
+
98
+    public Map<String, Object> selectLiveBuildingInfo(String targetId){
99
+        Map<String, Object> map = new HashMap<>();
100
+
101
+        QueryWrapper<TaLiveActivity> taLiveActivityQueryWrapper = new QueryWrapper<>();
102
+        taLiveActivityQueryWrapper.eq("live_activity_id", targetId);
103
+        TaLiveActivity taLiveActivity = taLiveActivityMapper.selectOne(taLiveActivityQueryWrapper);
104
+        map.put("targetName", taLiveActivity.getLiveActivityTitle());
105
+
106
+        TaBuilding taBuilding = buildingInfo(taLiveActivity.getBuildingId());
107
+        map.put("taBuilding", taBuilding);
108
+
109
+        return map;
110
+    }
111
+
112
+    public Map<String, Object> selectH5BuildingInfo(String targetId){
113
+        Map<String, Object> map = new HashMap<>();
114
+
115
+        QueryWrapper<TaDrainage> taDrainageQueryWrapper = new QueryWrapper<>();
116
+        taDrainageQueryWrapper.eq("drainage_id", targetId);
117
+        TaDrainage taDrainage = taDrainageMapper.selectOne(taDrainageQueryWrapper);
118
+        map.put("targetName", taDrainage.getName());
119
+
120
+        TaBuilding taBuilding = buildingInfo(taDrainage.getBuildingId());
121
+        map.put("taBuilding", taBuilding);
122
+
123
+        return map;
124
+    }
125
+
126
+    public Map<String, Object> selectBuildingInfo(String targetId){
127
+        Map<String, Object> map = new HashMap<>();
128
+
129
+        QueryWrapper<TaBuilding> taBuildingQueryWrapper = new QueryWrapper<>();
130
+        taBuildingQueryWrapper.eq("building_id", targetId);
131
+        TaBuilding taBuilding = taBuildingMapper.selectOne(taBuildingQueryWrapper);
132
+        map.put("targetName", taBuilding.getBuildingName());
133
+        map.put("taBuilding", taBuilding);
134
+        return map;
135
+    }
136
+
137
+    public Map<String, Object> selectNewsBuildingInfo(String targetId){
138
+        Map<String, Object> map = new HashMap<>();
139
+
140
+        QueryWrapper<TaNews> taNewsQueryWrapper = new QueryWrapper<>();
141
+        taNewsQueryWrapper.eq("news_id", targetId);
142
+        TaNews taNews = taNewsMapper.selectOne(taNewsQueryWrapper);
143
+        map.put("targetName", taNews.getNewsName());
144
+
145
+        TaBuilding taBuilding = buildingInfo(taNews.getBuildingId());
146
+        map.put("taBuilding", taBuilding);
147
+
148
+        return map;
149
+    }
150
+
151
+    public TaBuilding buildingInfo(String buildingId){
152
+        QueryWrapper<TaBuilding> taBuildingQueryWrapper = new QueryWrapper<>();
153
+        taBuildingQueryWrapper.eq("building_id", buildingId);
154
+        TaBuilding taBuilding = taBuildingMapper.selectOne(taBuildingQueryWrapper);
155
+        return taBuilding;
156
+    }
157
+
158
+    public TaPerson getPerson(String personId){
159
+        return getById(personId);
160
+    }
161
+}

+ 5
- 1
src/main/java/com/huiju/estateagents/service/impl/TaPersonServiceImpl.java 查看文件

@@ -413,13 +413,17 @@ public class TaPersonServiceImpl extends ServiceImpl<TaPersonMapper, TaPerson> i
413 413
         }
414 414
 
415 415
         TaPerson taPerson = taPersons.get(0);
416
+        QueryWrapper<TaUser> taUserQueryWrapper = new QueryWrapper<>();
417
+        taUserQueryWrapper.eq("user_id", taPerson.getUserId());
418
+        TaUser taUser = taUserMapper.selectOne(taUserQueryWrapper);
419
+
416 420
         Map<String, Object> result = new HashMap<>();
417 421
         result.put("id", taPerson.getPersonId());
418 422
         result.put("name", taPerson.getName());
419 423
         result.put("liked", false);
420 424
         result.put("unReadNum", 0);
421 425
         result.put("nickname", taPerson.getNickname());
422
-        result.put("avatar", taPerson.getAvatarurl());
426
+        result.put("avatar", taUser == null ? taPerson.getAvatarurl() : taUser.getPhoto());
423 427
         result.put("sex", taPerson.getSex());
424 428
         result.put("phone",StringUtils.ifNull(taPerson.getTel(),taPerson.getPhone()) );
425 429
         result.put("points", taPerson.getPoints());