张延森 5 yıl önce
ebeveyn
işleme
6cf6ade870

+ 4
- 59
src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java Dosyayı Görüntüle

@@ -92,74 +92,19 @@ public class TaPersonVisitRecordController extends BaseController {
92 92
      */
93 93
     @RequestMapping(value = "/wx/taPersonVisitRecord", method = RequestMethod.POST)
94 94
     public ResponseBean taPersonVisitRecordAdd(@RequestBody TaPersonVisitRecord taPersonVisitRecord, HttpServletRequest request) {
95
+        Integer orgId = getOrgId(request);
95 96
         String openid = getOpenId(request);
96 97
         List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
97 98
         if (null == taPersons || taPersons.size() != 1) {
98 99
             return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
99 100
         }
100 101
         TaPerson person = taPersons.get(0);
101
-        taPersonVisitRecord.setActivity(taPersonVisitRecord.getPropertyName());
102
-        taPersonVisitRecord.setOrgId(String.valueOf(getOrgId(request)));
103
-        Integer eventProperties = taEventPropertiesService.isEventExist(taPersonVisitRecord.getTargetId(), taPersonVisitRecord.getEventType(), taPersonVisitRecord.getActivity(), getOrgId(request));
104
-        if (eventProperties <= 0) {
105
-            TaEventProperties taEventProperty = new TaEventProperties();
106
-            taEventProperty.setBuildingId(taPersonVisitRecord.getTargetId());
107
-            taEventProperty.setCreateDate(LocalDateTime.now());
108
-            taEventProperty.setPropertyCode(taPersonVisitRecord.getPropertyName());
109
-            taEventProperty.setPropertyName(taPersonVisitRecord.getPropertyName());
110
-            taEventProperty.setStatus(CommConstant.STATUS_NORMAL);
111
-            taEventProperty.setBuildingId(taPersonVisitRecord.getBuildingId());
112
-            taEventProperty.setEventType(taPersonVisitRecord.getEventType());
113
-            taEventProperty.setOrgId(getOrgId(request));
114
-            if (!taEventPropertiesService.save(taEventProperty)) {
115
-                return ResponseBean.error("新增失败", ResponseBean.ERROR_UNAVAILABLE);
116
-            }
117
-
118
-        }
119 102
 
103
+        taPersonVisitRecord.setActivity(taPersonVisitRecord.getPropertyName());
104
+        taPersonVisitRecord.setOrgId(String.valueOf(orgId));
120 105
         taPersonVisitRecord.setPersonId(person.getPersonId());
121
-        taPersonVisitRecord.setVisitTime(LocalDateTime.now());
122
-        if (!StringUtils.isEmpty(taPersonVisitRecord.getBuildingId())) {
123
-            QueryWrapper<TaBuildingIntention> intentionQueryWrapper = new QueryWrapper<>();
124
-            intentionQueryWrapper.eq("building_id", taPersonVisitRecord.getBuildingId());
125
-            intentionQueryWrapper.eq("org_id", getOrgId(request));
126
-            intentionQueryWrapper.eq("event_code", taPersonVisitRecord.getEvent());
127
-            List<TaBuildingIntention> list = buildingIntentionService.list(intentionQueryWrapper);
128
-            if (list.size() > 0) {
129
-                TaBuildingIntention buildingIntention = list.get(0);
130
-                TaPersonIntentionRecord intentionRecord = new TaPersonIntentionRecord();
131
-                TaBuilding building = buildingService.getById(buildingIntention.getBuildingId());
132
-                intentionRecord.setBuildingId(buildingIntention.getBuildingId());
133
-                intentionRecord.setBuildingName(building.getBuildingName());
134
-                intentionRecord.setCreateDate(LocalDateTime.now());
135
-                intentionRecord.setEventCode(buildingIntention.getEventCode());
136
-                intentionRecord.setEventId(buildingIntention.getEventId());
137
-                intentionRecord.setEventName(buildingIntention.getEventName());
138
-                intentionRecord.setIntention(buildingIntention.getIntention());
139
-                intentionRecord.setOrgId(getOrgId(request));
140
-                intentionRecord.setPersonId(person.getPersonId());
141
-                intentionRecord.setPersonName(person.getNickname());
142
-                intentionRecord.setStatus(CommConstant.STATUS_NORMAL);
143
-                if (!personIntentionRecordService.save(intentionRecord)) {
144
-                    return ResponseBean.error("新增失败", ResponseBean.ERROR_UNAVAILABLE);
145
-                }
146
-            }
147
-        }
148
-        try {
149
-            if (iTaPersonVisitRecordService.save(taPersonVisitRecord)) {
150
-                //清洗埋點數據到新增用戶表--只有进入小程序的时候 start才记录
151
-                if (taPersonVisitRecord.getEvent().equals(CommConstant.BIZ_EVENT_START)) {
152
-                    iTaPersonFromRecordService.addNewPersonRecordRecord(taPersonVisitRecord);
153
-                }
154 106
 
155
-                return ResponseBean.success(taPersonVisitRecord);
156
-            } else {
157
-                return ResponseBean.error("保存失败", ResponseBean.ERROR_UNAVAILABLE);
158
-            }
159
-        } catch (Exception e) {
160
-            logger.error("taPersonVisitRecordAdd -=- {}", e.toString());
161
-            return ResponseBean.error("系统异常" + e.getMessage(), ResponseBean.ERROR_UNAVAILABLE);
162
-        }
107
+        return iTaPersonVisitRecordService.newRecord(taPersonVisitRecord, person);
163 108
     }
164 109
 
165 110
     /**

+ 1
- 2
src/main/java/com/huiju/estateagents/controller/TaRaiseController.java Dosyayı Görüntüle

@@ -248,9 +248,8 @@ public class TaRaiseController extends BaseController {
248 248
     public ResponseBean getRaiseProfile(@RequestParam(required = false) Integer salesBatchId,
249 249
                                         @RequestParam(required = false) Integer raiseId,
250 250
                                         @RequestParam(required = false) Integer raiseRecordId,
251
-                                        @RequestParam(required = false) String personId,
252 251
                                         HttpServletRequest request) {
253
-        TaRaise taRaise = iTaRaiseService.getRaiseProfile(raiseId, raiseRecordId, salesBatchId, personId);
252
+        TaRaise taRaise = iTaRaiseService.getRaiseProfile(raiseId, raiseRecordId, salesBatchId);
254 253
         return ResponseBean.success(taRaise);
255 254
     }
256 255
 

+ 3
- 0
src/main/java/com/huiju/estateagents/service/ITaPersonVisitRecordService.java Dosyayı Görüntüle

@@ -3,6 +3,7 @@ package com.huiju.estateagents.service;
3 3
 
4 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.service.IService;
6
+import com.huiju.estateagents.base.ResponseBean;
6 7
 import com.huiju.estateagents.entity.TaConsultantInfo;
7 8
 import com.huiju.estateagents.entity.TaPerson;
8 9
 import com.huiju.estateagents.entity.TaPersonBuilding;
@@ -63,4 +64,6 @@ public interface ITaPersonVisitRecordService extends IService<TaPersonVisitRecor
63 64
 	IPage<TaConsultantInfo> getConsultantShareInfoList(IPage<TaConsultantInfo> pg, String personId);
64 65
 
65 66
 	Integer countShareNumByEventType(Integer orgId, String targetId, Integer userId, String personId, String eventType);
67
+
68
+    ResponseBean newRecord(TaPersonVisitRecord taPersonVisitRecord, TaPerson person);
66 69
 }

+ 1
- 2
src/main/java/com/huiju/estateagents/service/ITaRaiseService.java Dosyayı Görüntüle

@@ -53,8 +53,7 @@ public interface ITaRaiseService extends IService<TaRaise> {
53 53
      * @param raiseId
54 54
      * @param raiseRecordId
55 55
      * @param salesBatchId
56
-     * @param personId
57 56
      * @return
58 57
      */
59
-    TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId, String personId);
58
+    TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId);
60 59
 }

+ 84
- 1
src/main/java/com/huiju/estateagents/service/impl/TaPersonVisitRecordServiceImpl.java Dosyayı Görüntüle

@@ -3,6 +3,7 @@ package com.huiju.estateagents.service.impl;
3 3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4 4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
+import com.huiju.estateagents.base.ResponseBean;
6 7
 import com.huiju.estateagents.center.taUser.entity.TaUser;
7 8
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
8 9
 import com.alibaba.fastjson.JSONObject;
@@ -11,6 +12,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
11 12
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
12 13
 import com.huiju.estateagents.common.CommConstant;
13 14
 import com.huiju.estateagents.common.StringUtils;
15
+import com.huiju.estateagents.controller.TaMiniFormidsController;
14 16
 import com.huiju.estateagents.drainage.entity.TaDrainage;
15 17
 import com.huiju.estateagents.drainage.mapper.TaDrainageMapper;
16 18
 import com.huiju.estateagents.entity.*;
@@ -21,10 +23,12 @@ import com.huiju.estateagents.mapper.TaPersonMapper;
21 23
 import com.huiju.estateagents.mapper.TaPersonVisitRecordMapper;
22 24
 import com.huiju.estateagents.mapper.TaRecommendCustomerMapper;
23 25
 import com.huiju.estateagents.mapper.TaShareActivityMapper;
24
-import com.huiju.estateagents.service.ITaPersonVisitRecordService;
26
+import com.huiju.estateagents.service.*;
27
+import com.sun.corba.se.spi.resolver.Resolver;
25 28
 import org.springframework.beans.factory.annotation.Autowired;
26 29
 import org.springframework.stereotype.Service;
27 30
 
31
+import java.time.LocalDateTime;
28 32
 import java.util.Collections;
29 33
 import java.util.List;
30 34
 
@@ -66,6 +70,21 @@ public class TaPersonVisitRecordServiceImpl extends ServiceImpl<TaPersonVisitRec
66 70
 	@Autowired
67 71
 	private TaDrainageMapper taDrainageMapper;
68 72
 
73
+	@Autowired
74
+	private ITaEventPropertiesService taEventPropertiesService;
75
+
76
+	@Autowired
77
+	private ITaBuildingIntentionService buildingIntentionService;
78
+
79
+	@Autowired
80
+	private ITaBuildingService buildingService;
81
+
82
+	@Autowired
83
+	private ITaPersonIntentionRecordService personIntentionRecordService;
84
+
85
+	@Autowired
86
+	private ITaPersonFromRecordService iTaPersonFromRecordService;
87
+
69 88
 	/**
70 89
 	 * 分页获取客户访问记录
71 90
 	 *
@@ -179,6 +198,70 @@ public class TaPersonVisitRecordServiceImpl extends ServiceImpl<TaPersonVisitRec
179 198
 		return personVisitRecordMapper.countShareNumByEventType(orgId, targetId, userId, personId, eventType);
180 199
 	}
181 200
 
201
+	@Override
202
+	public ResponseBean newRecord(TaPersonVisitRecord taPersonVisitRecord, TaPerson person) {
203
+		Integer orgId = person.getOrgId();
204
+
205
+		Integer eventProperties = taEventPropertiesService.isEventExist(taPersonVisitRecord.getTargetId(), taPersonVisitRecord.getEventType(), taPersonVisitRecord.getActivity(), orgId);
206
+		if (eventProperties <= 0) {
207
+			TaEventProperties taEventProperty = new TaEventProperties();
208
+			taEventProperty.setBuildingId(taPersonVisitRecord.getTargetId());
209
+			taEventProperty.setCreateDate(LocalDateTime.now());
210
+			taEventProperty.setPropertyCode(taPersonVisitRecord.getPropertyName());
211
+			taEventProperty.setPropertyName(taPersonVisitRecord.getPropertyName());
212
+			taEventProperty.setStatus(CommConstant.STATUS_NORMAL);
213
+			taEventProperty.setBuildingId(taPersonVisitRecord.getBuildingId());
214
+			taEventProperty.setEventType(taPersonVisitRecord.getEventType());
215
+			taEventProperty.setOrgId(orgId);
216
+			if (!taEventPropertiesService.save(taEventProperty)) {
217
+				return ResponseBean.error("新增失败", ResponseBean.ERROR_UNAVAILABLE);
218
+			}
219
+		}
220
+
221
+		taPersonVisitRecord.setVisitTime(LocalDateTime.now());
222
+		if (!StringUtils.isEmpty(taPersonVisitRecord.getBuildingId())) {
223
+			QueryWrapper<TaBuildingIntention> intentionQueryWrapper = new QueryWrapper<>();
224
+			intentionQueryWrapper.eq("building_id", taPersonVisitRecord.getBuildingId());
225
+			intentionQueryWrapper.eq("org_id", taPersonVisitRecord.getOrgId());
226
+			intentionQueryWrapper.eq("event_code", taPersonVisitRecord.getEvent());
227
+			List<TaBuildingIntention> list = buildingIntentionService.list(intentionQueryWrapper);
228
+			if (list.size() > 0) {
229
+				TaBuildingIntention buildingIntention = list.get(0);
230
+				TaPersonIntentionRecord intentionRecord = new TaPersonIntentionRecord();
231
+				TaBuilding building = buildingService.getById(buildingIntention.getBuildingId());
232
+				intentionRecord.setBuildingId(buildingIntention.getBuildingId());
233
+				intentionRecord.setBuildingName(building.getBuildingName());
234
+				intentionRecord.setCreateDate(LocalDateTime.now());
235
+				intentionRecord.setEventCode(buildingIntention.getEventCode());
236
+				intentionRecord.setEventId(buildingIntention.getEventId());
237
+				intentionRecord.setEventName(buildingIntention.getEventName());
238
+				intentionRecord.setIntention(buildingIntention.getIntention());
239
+				intentionRecord.setOrgId(orgId);
240
+				intentionRecord.setPersonId(person.getPersonId());
241
+				intentionRecord.setPersonName(person.getNickname());
242
+				intentionRecord.setStatus(CommConstant.STATUS_NORMAL);
243
+				if (!personIntentionRecordService.save(intentionRecord)) {
244
+					return ResponseBean.error("新增失败", ResponseBean.ERROR_UNAVAILABLE);
245
+				}
246
+			}
247
+		}
248
+		try {
249
+			if (this.save(taPersonVisitRecord)) {
250
+				//清洗埋點數據到新增用戶表--只有进入小程序的时候 start才记录
251
+				if (taPersonVisitRecord.getEvent().equals(CommConstant.BIZ_EVENT_START)) {
252
+					iTaPersonFromRecordService.addNewPersonRecordRecord(taPersonVisitRecord);
253
+				}
254
+
255
+				return ResponseBean.success(taPersonVisitRecord);
256
+			} else {
257
+				return ResponseBean.error("保存失败", ResponseBean.ERROR_UNAVAILABLE);
258
+			}
259
+		} catch (Exception e) {
260
+//			logger.error("taPersonVisitRecordAdd -=- {}", e.toString());
261
+			return ResponseBean.error("系统异常" + e.getMessage(), ResponseBean.ERROR_UNAVAILABLE);
262
+		}
263
+	}
264
+
182 265
 	/**
183 266
 	 * 分页获取个人中心访客记录
184 267
 	 *

+ 4
- 9
src/main/java/com/huiju/estateagents/service/impl/TaRaiseServiceImpl.java Dosyayı Görüntüle

@@ -115,7 +115,7 @@ public class TaRaiseServiceImpl extends ServiceImpl<TaRaiseMapper, TaRaise> impl
115 115
     }
116 116
 
117 117
     @Override
118
-    public TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId, String personId) {
118
+    public TaRaise getRaiseProfile(Integer raiseId, Integer raiseRecordId, Integer salesBatchId) {
119 119
         if (raiseId == null && salesBatchId == null && raiseRecordId == null) return null;
120 120
 
121 121
         TaRaise taRaise = null;
@@ -131,15 +131,10 @@ public class TaRaiseServiceImpl extends ServiceImpl<TaRaiseMapper, TaRaise> impl
131 131
             taRaise = this.getOne(queryWrapper);
132 132
         }
133 133
 
134
-        // 通过认筹单记录ID 或者人员ID
135
-        boolean mayPerson = taRaise != null && !StringUtils.isEmpty(personId);
136
-        if (raiseRecordId != null || mayPerson) {
134
+        // 通过认筹单记录ID
135
+        if (raiseRecordId != null) {
137 136
             QueryWrapper<TaRaiseRecord> wrapper = new QueryWrapper<>();
138
-            wrapper.eq(raiseRecordId != null, "raise_record_id", raiseRecordId);
139
-            if (mayPerson) {
140
-                wrapper.eq("raise_id", taRaise.getRaiseId());
141
-                wrapper.eq("person_id", personId);
142
-            }
137
+            wrapper.eq("raise_record_id", raiseRecordId);
143 138
             wrapper.eq("status", CommConstant.STATUS_NORMAL);
144 139
             wrapper.last("limit 1");
145 140
             taRaiseRecord = taRaiseRecordMapper.selectOne(wrapper);

+ 36
- 2
src/main/java/com/huiju/estateagents/third/controller/TaThirdPartyMiniappConfigController.java Dosyayı Görüntüle

@@ -5,7 +5,11 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
5 5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6 6
 import com.huiju.estateagents.base.BaseController;
7 7
 import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.entity.TaPerson;
9
+import com.huiju.estateagents.entity.TaPersonVisitRecord;
8 10
 import com.huiju.estateagents.service.IMiniAppService;
11
+import com.huiju.estateagents.service.ITaPersonService;
12
+import com.huiju.estateagents.service.ITaPersonVisitRecordService;
9 13
 import com.huiju.estateagents.third.entity.TaThirdPartyMiniappConfig;
10 14
 import com.huiju.estateagents.third.service.ITaThirdPartyMiniappConfigService;
11 15
 import org.slf4j.Logger;
@@ -35,6 +39,12 @@ public class TaThirdPartyMiniappConfigController extends BaseController {
35 39
     @Autowired
36 40
     private IMiniAppService miniAppService;
37 41
 
42
+    @Autowired
43
+    private ITaPersonVisitRecordService taPersonVisitRecordService;
44
+
45
+    @Autowired
46
+    private ITaPersonService iTaPersonService;
47
+
38 48
     /**
39 49
      * 分页查询列表
40 50
      * @param pageNum
@@ -151,7 +161,10 @@ public class TaThirdPartyMiniappConfigController extends BaseController {
151 161
      * @return
152 162
      */
153 163
     @PostMapping("/third/qrcode")
154
-    public ResponseBean thirdQrcode(@RequestBody String paramsStr, HttpServletRequest request) {
164
+    public ResponseBean thirdQrcode(@RequestBody String paramsStr,
165
+                                    @RequestParam String buildingId,
166
+                                    @RequestParam String personId,
167
+                                    HttpServletRequest request) {
155 168
         //获取H5项目相关信息
156 169
         String xAppid = request.getHeader("x-appid");
157 170
         QueryWrapper<TaThirdPartyMiniappConfig> taThirdPartyMiniappConfigQueryWrapper = new QueryWrapper<>();
@@ -162,6 +175,27 @@ public class TaThirdPartyMiniappConfigController extends BaseController {
162 175
             return ResponseBean.error("不存在的H5活动",ResponseBean.ERROR_UNAVAILABLE);
163 176
         }
164 177
         String appid = request.getHeader("appid");
165
-        return miniAppService.getQrCode(paramsStr, appid);
178
+
179
+        ResponseBean res = miniAppService.getQrCode(paramsStr, appid);
180
+
181
+        // 埋點流程, 不影響主流程
182
+
183
+        try {
184
+            TaPerson taPerson = iTaPersonService.getById(personId);
185
+
186
+            TaPersonVisitRecord taPersonVisitRecord = new TaPersonVisitRecord();
187
+            taPersonVisitRecord.setPropertyName("生成H5海报");
188
+            taPersonVisitRecord.setActivity("生成H5海报");
189
+            taPersonVisitRecord.setOrgId(taPerson.getOrgId().toString());
190
+            taPersonVisitRecord.setPersonId(taPerson.getPersonId());
191
+            taPersonVisitRecord.setTargetId(buildingId);
192
+            taPersonVisitRecord.setData("{}");
193
+            taPersonVisitRecord.setEvent("poster");
194
+            taPersonVisitRecord.setEventType("building");
195
+
196
+            taPersonVisitRecordService.newRecord(taPersonVisitRecord, taPerson);
197
+        } catch (Exception e) {}
198
+
199
+        return res;
166 200
     }
167 201
 }