张延森 5 年前
父节点
当前提交
6cf6ade870

+ 4
- 59
src/main/java/com/huiju/estateagents/controller/TaPersonVisitRecordController.java 查看文件

92
      */
92
      */
93
     @RequestMapping(value = "/wx/taPersonVisitRecord", method = RequestMethod.POST)
93
     @RequestMapping(value = "/wx/taPersonVisitRecord", method = RequestMethod.POST)
94
     public ResponseBean taPersonVisitRecordAdd(@RequestBody TaPersonVisitRecord taPersonVisitRecord, HttpServletRequest request) {
94
     public ResponseBean taPersonVisitRecordAdd(@RequestBody TaPersonVisitRecord taPersonVisitRecord, HttpServletRequest request) {
95
+        Integer orgId = getOrgId(request);
95
         String openid = getOpenId(request);
96
         String openid = getOpenId(request);
96
         List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
97
         List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
97
         if (null == taPersons || taPersons.size() != 1) {
98
         if (null == taPersons || taPersons.size() != 1) {
98
             return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
99
             return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
99
         }
100
         }
100
         TaPerson person = taPersons.get(0);
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
         taPersonVisitRecord.setPersonId(person.getPersonId());
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 查看文件

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

+ 3
- 0
src/main/java/com/huiju/estateagents/service/ITaPersonVisitRecordService.java 查看文件

3
 
3
 
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.service.IService;
5
 import com.baomidou.mybatisplus.extension.service.IService;
6
+import com.huiju.estateagents.base.ResponseBean;
6
 import com.huiju.estateagents.entity.TaConsultantInfo;
7
 import com.huiju.estateagents.entity.TaConsultantInfo;
7
 import com.huiju.estateagents.entity.TaPerson;
8
 import com.huiju.estateagents.entity.TaPerson;
8
 import com.huiju.estateagents.entity.TaPersonBuilding;
9
 import com.huiju.estateagents.entity.TaPersonBuilding;
63
 	IPage<TaConsultantInfo> getConsultantShareInfoList(IPage<TaConsultantInfo> pg, String personId);
64
 	IPage<TaConsultantInfo> getConsultantShareInfoList(IPage<TaConsultantInfo> pg, String personId);
64
 
65
 
65
 	Integer countShareNumByEventType(Integer orgId, String targetId, Integer userId, String personId, String eventType);
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 查看文件

53
      * @param raiseId
53
      * @param raiseId
54
      * @param raiseRecordId
54
      * @param raiseRecordId
55
      * @param salesBatchId
55
      * @param salesBatchId
56
-     * @param personId
57
      * @return
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 查看文件

3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
3
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
+import com.huiju.estateagents.base.ResponseBean;
6
 import com.huiju.estateagents.center.taUser.entity.TaUser;
7
 import com.huiju.estateagents.center.taUser.entity.TaUser;
7
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
8
 import com.huiju.estateagents.center.taUser.mapper.TaUserMapper;
8
 import com.alibaba.fastjson.JSONObject;
9
 import com.alibaba.fastjson.JSONObject;
11
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
12
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
12
 import com.huiju.estateagents.common.CommConstant;
13
 import com.huiju.estateagents.common.CommConstant;
13
 import com.huiju.estateagents.common.StringUtils;
14
 import com.huiju.estateagents.common.StringUtils;
15
+import com.huiju.estateagents.controller.TaMiniFormidsController;
14
 import com.huiju.estateagents.drainage.entity.TaDrainage;
16
 import com.huiju.estateagents.drainage.entity.TaDrainage;
15
 import com.huiju.estateagents.drainage.mapper.TaDrainageMapper;
17
 import com.huiju.estateagents.drainage.mapper.TaDrainageMapper;
16
 import com.huiju.estateagents.entity.*;
18
 import com.huiju.estateagents.entity.*;
21
 import com.huiju.estateagents.mapper.TaPersonVisitRecordMapper;
23
 import com.huiju.estateagents.mapper.TaPersonVisitRecordMapper;
22
 import com.huiju.estateagents.mapper.TaRecommendCustomerMapper;
24
 import com.huiju.estateagents.mapper.TaRecommendCustomerMapper;
23
 import com.huiju.estateagents.mapper.TaShareActivityMapper;
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
 import org.springframework.beans.factory.annotation.Autowired;
28
 import org.springframework.beans.factory.annotation.Autowired;
26
 import org.springframework.stereotype.Service;
29
 import org.springframework.stereotype.Service;
27
 
30
 
31
+import java.time.LocalDateTime;
28
 import java.util.Collections;
32
 import java.util.Collections;
29
 import java.util.List;
33
 import java.util.List;
30
 
34
 
66
 	@Autowired
70
 	@Autowired
67
 	private TaDrainageMapper taDrainageMapper;
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
 		return personVisitRecordMapper.countShareNumByEventType(orgId, targetId, userId, personId, eventType);
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 查看文件

115
     }
115
     }
116
 
116
 
117
     @Override
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
         if (raiseId == null && salesBatchId == null && raiseRecordId == null) return null;
119
         if (raiseId == null && salesBatchId == null && raiseRecordId == null) return null;
120
 
120
 
121
         TaRaise taRaise = null;
121
         TaRaise taRaise = null;
131
             taRaise = this.getOne(queryWrapper);
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
             QueryWrapper<TaRaiseRecord> wrapper = new QueryWrapper<>();
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
             wrapper.eq("status", CommConstant.STATUS_NORMAL);
138
             wrapper.eq("status", CommConstant.STATUS_NORMAL);
144
             wrapper.last("limit 1");
139
             wrapper.last("limit 1");
145
             taRaiseRecord = taRaiseRecordMapper.selectOne(wrapper);
140
             taRaiseRecord = taRaiseRecordMapper.selectOne(wrapper);

+ 36
- 2
src/main/java/com/huiju/estateagents/third/controller/TaThirdPartyMiniappConfigController.java 查看文件

5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.huiju.estateagents.base.BaseController;
6
 import com.huiju.estateagents.base.BaseController;
7
 import com.huiju.estateagents.base.ResponseBean;
7
 import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.entity.TaPerson;
9
+import com.huiju.estateagents.entity.TaPersonVisitRecord;
8
 import com.huiju.estateagents.service.IMiniAppService;
10
 import com.huiju.estateagents.service.IMiniAppService;
11
+import com.huiju.estateagents.service.ITaPersonService;
12
+import com.huiju.estateagents.service.ITaPersonVisitRecordService;
9
 import com.huiju.estateagents.third.entity.TaThirdPartyMiniappConfig;
13
 import com.huiju.estateagents.third.entity.TaThirdPartyMiniappConfig;
10
 import com.huiju.estateagents.third.service.ITaThirdPartyMiniappConfigService;
14
 import com.huiju.estateagents.third.service.ITaThirdPartyMiniappConfigService;
11
 import org.slf4j.Logger;
15
 import org.slf4j.Logger;
35
     @Autowired
39
     @Autowired
36
     private IMiniAppService miniAppService;
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
      * @param pageNum
50
      * @param pageNum
151
      * @return
161
      * @return
152
      */
162
      */
153
     @PostMapping("/third/qrcode")
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
         //获取H5项目相关信息
168
         //获取H5项目相关信息
156
         String xAppid = request.getHeader("x-appid");
169
         String xAppid = request.getHeader("x-appid");
157
         QueryWrapper<TaThirdPartyMiniappConfig> taThirdPartyMiniappConfigQueryWrapper = new QueryWrapper<>();
170
         QueryWrapper<TaThirdPartyMiniappConfig> taThirdPartyMiniappConfigQueryWrapper = new QueryWrapper<>();
162
             return ResponseBean.error("不存在的H5活动",ResponseBean.ERROR_UNAVAILABLE);
175
             return ResponseBean.error("不存在的H5活动",ResponseBean.ERROR_UNAVAILABLE);
163
         }
176
         }
164
         String appid = request.getHeader("appid");
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
 }