傅行帆 5 anos atrás
pai
commit
0bd533f9a8

+ 24
- 5
src/main/java/com/huiju/estateagents/controller/MiniAppController.java Ver arquivo

199
             personQueryWrapper.eq("org_id",orgId);
199
             personQueryWrapper.eq("org_id",orgId);
200
             int count = taPersonService.count(personQueryWrapper);
200
             int count = taPersonService.count(personQueryWrapper);
201
 
201
 
202
-            if(null!=from&&from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
203
-                // 添加积分
204
-                 applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll, orgId));
205
-            }
206
-
207
             TaPerson taPerson = taPersonService.newPersonByOpenid(session.getOpenid(), orgId);
202
             TaPerson taPerson = taPersonService.newPersonByOpenid(session.getOpenid(), orgId);
208
             if (null == taPerson) {
203
             if (null == taPerson) {
209
                 return ResponseBean.error("发生未知错误", ResponseBean.ERROR_UNAVAILABLE);
204
                 return ResponseBean.error("发生未知错误", ResponseBean.ERROR_UNAVAILABLE);
210
             }
205
             }
206
+
207
+            if(null!=from&&from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
208
+                // 校验是否点击过此人的分享
209
+                boolean checkPoint = checkSharePersonFrom(from,taPerson.getPersonId(),targetId,orgId);
210
+                if (checkPoint){
211
+                    // 添加积分
212
+                    applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll, orgId));
213
+                }
214
+            }
215
+
216
+
211
             Map<Object,Object> map = new HashMap<>();
217
             Map<Object,Object> map = new HashMap<>();
212
             map.put("openId",session.getOpenid());
218
             map.put("openId",session.getOpenid());
213
             map.put("orgId",orgId);
219
             map.put("orgId",orgId);
322
         }
328
         }
323
     }
329
     }
324
 
330
 
331
+    private boolean checkSharePersonFrom(String from, String personId, String targetId, Integer orgId) {
332
+        QueryWrapper<TaSharePersonFrom> queryWrapper =  new QueryWrapper<>();
333
+        queryWrapper.eq("target_type",from);
334
+        queryWrapper.eq("person_id",personId);
335
+        queryWrapper.eq("target_id",targetId);
336
+        queryWrapper.eq("org_id",orgId);
337
+        List<TaSharePersonFrom> list = taSharePersonFromService.list(queryWrapper);
338
+        if (list.size() > 0){
339
+            return false;
340
+        }
341
+        return true;
342
+    }
343
+
325
     /**
344
     /**
326
      * 登陆接口
345
      * 登陆接口
327
      */
346
      */

+ 2
- 6
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java Ver arquivo

109
 			return;
109
 			return;
110
 		}
110
 		}
111
 
111
 
112
-		// 发放积分
113
-		TaPerson person = taPersonMapper.selectById(recommenderId);
114
 		String[] params = {
112
 		String[] params = {
115
 				"openUser="+recommenderId
113
 				"openUser="+recommenderId
116
 		};
114
 		};
117
 		String changeParams = String.join("&", params);
115
 		String changeParams = String.join("&", params);
118
-		boolean hasJoined = isPointsRecordsExist(person.getPersonId(), changeType, changeParams);
119
-		if (hasJoined) {
120
-			return;
121
-		}
122
 
116
 
117
+		// 发放积分
118
+		TaPerson person = taPersonMapper.selectById(recommenderId);
123
 		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
119
 		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
124
 			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
120
 			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
125
 		}
121
 		}