ソースを参照

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

胡轶钦 5 年 前
コミット
be75d4b672

+ 15
- 5
src/main/java/com/huiju/estateagents/controller/MiniAppController.java ファイルの表示

@@ -9,10 +9,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
9 9
 import com.huiju.estateagents.base.ResponseBean;
10 10
 import com.huiju.estateagents.common.CommConstant;
11 11
 import com.huiju.estateagents.common.WxUtils;
12
-import com.huiju.estateagents.entity.TaCustomerPerson;
13
-import com.huiju.estateagents.entity.TaMiniappQrcode;
14
-import com.huiju.estateagents.entity.TaPerson;
15
-import com.huiju.estateagents.entity.TaRecommendCustomer;
12
+import com.huiju.estateagents.entity.*;
13
+import com.huiju.estateagents.event.EventBus;
14
+import com.huiju.estateagents.mapper.TaShareMapper;
16 15
 import com.huiju.estateagents.service.IMiniAppService;
17 16
 import com.huiju.estateagents.service.ITaCustomerPersonService;
18 17
 import com.huiju.estateagents.service.ITaPersonService;
@@ -22,8 +21,10 @@ import me.chanjar.weixin.common.error.WxErrorException;
22 21
 import org.apache.commons.lang3.StringUtils;
23 22
 import org.apache.http.HttpStatus;
24 23
 import org.springframework.beans.factory.annotation.Autowired;
24
+import org.springframework.context.ApplicationContext;
25 25
 import org.springframework.web.bind.annotation.*;
26 26
 
27
+import javax.annotation.Resource;
27 28
 import javax.servlet.http.HttpServletRequest;
28 29
 import java.time.LocalDateTime;
29 30
 import java.util.HashMap;
@@ -47,6 +48,12 @@ public class MiniAppController {
47 48
     @Autowired
48 49
     private ITaCustomerPersonService taCustomerPersonService;
49 50
 
51
+    @Resource
52
+    private ApplicationContext applicationContext;
53
+
54
+    @Autowired
55
+    private TaShareMapper taShareMapper;
56
+
50 57
 
51 58
 
52 59
     /**
@@ -80,8 +87,10 @@ public class MiniAppController {
80 87
             QueryWrapper<TaPerson> personQueryWrapper = new QueryWrapper<>();
81 88
             personQueryWrapper.eq("mini_openid",session.getOpenid());
82 89
             int count = taPersonService.count(personQueryWrapper);
83
-            if(from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
84 90
 
91
+            if(from.contains("share") && StringUtils.isNotBlank(recommender) && count>0){
92
+                // 添加积分
93
+                 applicationContext.publishEvent(new EventBus(recommender, EventBus.EventType.SharePosterAll));
85 94
             }
86 95
             TaPerson taPerson = taPersonService.newPersonByOpenid(session.getOpenid());
87 96
             if (null == taPerson) {
@@ -112,6 +121,7 @@ public class MiniAppController {
112 121
             result.put("extraInfo", extraInfo);
113 122
             result.put("miniAuthorized", null != taPerson.getAvatarurl() && taPerson.getAvatarurl().indexOf("wx.qlogo.cn") > 0);
114 123
 
124
+
115 125
             return ResponseBean.success(result);
116 126
         } catch (WxErrorException e) {
117 127
             System.err.println(e.getError());

+ 4
- 1
src/main/java/com/huiju/estateagents/event/EventBus.java ファイルの表示

@@ -28,7 +28,10 @@ public class EventBus extends ApplicationEvent {
28 28
 		RecommendCustomer(3),
29 29
 
30 30
 		// 注册经纪人
31
-		SignUpAgent(4);
31
+		SignUpAgent(4),
32
+
33
+		// 没有限制的 分享海报加积分
34
+		SharePosterAll(5);
32 35
 
33 36
 		private Integer type;
34 37
 

+ 8
- 0
src/main/java/com/huiju/estateagents/event/EventLisenter.java ファイルの表示

@@ -41,6 +41,9 @@ public class EventLisenter {
41 41
 			case SignUpAgent:
42 42
 				getSignUpPoints((TaPerson) event.getSource());
43 43
 				break;
44
+			case SharePosterAll:
45
+				getSharePointsAll((String) event.getSource());
46
+				break;
44 47
 			default:
45 48
 				break;
46 49
 		}
@@ -51,6 +54,11 @@ public class EventLisenter {
51 54
 		taPointsRecordsService.sharePoints(taShare);
52 55
 	}
53 56
 
57
+	// 无限制 分享赚积分
58
+	private void getSharePointsAll(String recommenderId) {
59
+		taPointsRecordsService.sharePosterAll(recommenderId);
60
+	}
61
+
54 62
 	// 签到赚积分
55 63
 	private void getCheckinPoints(TaPersonSign taPersonSign) { taPointsRecordsService.checkinPoints(taPersonSign); }
56 64
 

+ 6
- 0
src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java ファイルの表示

@@ -22,4 +22,10 @@ public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
22 22
 	void recommendCustPoints(TaRecommendCustomer taRecommendCustomer);
23 23
 
24 24
 	void consumeGoodsPoints(TaGoods taGoods);
25
+
26
+	/**
27
+	 * 分享积分增加  人员不限制
28
+	 * @param recommenderId
29
+	 */
30
+    void sharePosterAll(String recommenderId);
25 31
 }

+ 22
- 0
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java ファイルの表示

@@ -95,6 +95,28 @@ public class TaPointsRecordsServiceImpl extends ServiceImpl<TaPointsRecordsMappe
95 95
 		}
96 96
 	}
97 97
 
98
+	@Override
99
+	public void sharePosterAll(String recommenderId) {
100
+		// 是否开启积分规则
101
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_SHARE_POSTER);
102
+		if (pointsAmount == 0) {
103
+			return;
104
+		}
105
+
106
+		String changeType = CommConstant.POINTS_CHANGE_SHARE_POSTER;
107
+
108
+		String[] params = {
109
+				"openUser="+recommenderId
110
+		};
111
+		String changeParams = String.join("&", params);
112
+
113
+		// 发放积分
114
+		TaPerson person = taPersonMapper.selectById(recommenderId);
115
+		if (savePoints(person, changeType, changeParams, pointsAmount)) {
116
+			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
117
+		}
118
+	}
119
+
98 120
 	@Override
99 121
 	public void checkinPoints(TaPersonSign taPersonSign) {
100 122
 		// 是否开启积分规则