Browse Source

积分添加

魏熙美 5 years ago
parent
commit
ee94a3d791

+ 20
- 0
src/main/java/com/huiju/estateagents/common/CommConstant.java View File

104
      */
104
      */
105
     public final static String POINTS_CHANGE_RECOMMEND_CUSTOMER = "recommend-customer";
105
     public final static String POINTS_CHANGE_RECOMMEND_CUSTOMER = "recommend-customer";
106
 
106
 
107
+    /**
108
+     * 活动核销
109
+     */
110
+    public final static String POINTS_CHANGE_ACTIVITY_VERIFICATION = "activity_verification";
111
+
112
+    /**
113
+     * 资料审核
114
+     */
115
+    public final static String POINTS_CHANGE_DOCUMENT_VERIFY = "document_verify";
116
+
107
 
117
 
108
     /**
118
     /**
109
      * 小程序默认首页
119
      * 小程序默认首页
265
      */
275
      */
266
     public static final Integer POINTS_RULE_SIGNUP_AGENT = 4;
276
     public static final Integer POINTS_RULE_SIGNUP_AGENT = 4;
267
 
277
 
278
+    /**
279
+     * 活动核销送积分规则
280
+     */
281
+    public static final Integer POINTS_RULE_ACTIVITY_VERIFICATION = 6;
282
+
283
+    /**
284
+     * 资料审核送积分规则
285
+     */
286
+    public static final Integer POINTS_RULE_DOCUMENT_VERIFY = 7;
287
+
268
     /**
288
     /**
269
      * 平台积分
289
      * 平台积分
270
      */
290
      */

+ 17
- 1
src/main/java/com/huiju/estateagents/controller/TaDocumentVerifyController.java View File

10
 import com.huiju.estateagents.entity.TaDocumentImg;
10
 import com.huiju.estateagents.entity.TaDocumentImg;
11
 import com.huiju.estateagents.entity.TaDocumentVerify;
11
 import com.huiju.estateagents.entity.TaDocumentVerify;
12
 import com.huiju.estateagents.entity.TaPerson;
12
 import com.huiju.estateagents.entity.TaPerson;
13
+import com.huiju.estateagents.event.EventBus;
13
 import com.huiju.estateagents.service.ITaDocumentImgService;
14
 import com.huiju.estateagents.service.ITaDocumentImgService;
14
 import com.huiju.estateagents.service.ITaDocumentVerifyService;
15
 import com.huiju.estateagents.service.ITaDocumentVerifyService;
15
 import com.huiju.estateagents.service.ITaPersonService;
16
 import com.huiju.estateagents.service.ITaPersonService;
16
 import org.slf4j.Logger;
17
 import org.slf4j.Logger;
17
 import org.slf4j.LoggerFactory;
18
 import org.slf4j.LoggerFactory;
18
 import org.springframework.beans.factory.annotation.Autowired;
19
 import org.springframework.beans.factory.annotation.Autowired;
20
+import org.springframework.context.ApplicationContext;
19
 import org.springframework.web.bind.annotation.*;
21
 import org.springframework.web.bind.annotation.*;
20
 
22
 
21
 import javax.servlet.http.HttpServletRequest;
23
 import javax.servlet.http.HttpServletRequest;
49
     public ITaDocumentImgService documentImgService;
51
     public ITaDocumentImgService documentImgService;
50
 
52
 
51
 
53
 
54
+    @Autowired
55
+    private ApplicationContext applicationContext;
56
+
52
     /**
57
     /**
53
      * 分页查询列表
58
      * 分页查询列表
54
      * @param pageNum
59
      * @param pageNum
139
     }
144
     }
140
 
145
 
141
     /**
146
     /**
142
-     * 修改对象
147
+     * 微信修改对象
143
      * @param id  实体ID
148
      * @param id  实体ID
144
      * @param list List<TaDocumentImg>
149
      * @param list List<TaDocumentImg>
145
      * @return
150
      * @return
193
                                              @RequestBody TaDocumentVerify documentVerify){
198
                                              @RequestBody TaDocumentVerify documentVerify){
194
         ResponseBean responseBean = new ResponseBean();
199
         ResponseBean responseBean = new ResponseBean();
195
         try {
200
         try {
201
+            documentVerify.setDocumentVerifyId(id);
196
             if (iTaDocumentVerifyService.updateById(documentVerify)){
202
             if (iTaDocumentVerifyService.updateById(documentVerify)){
203
+
204
+                if (null != documentVerify.getVerifyStatus() && documentVerify.getVerifyStatus().intValue() == 1) {
205
+                    // 活动核销加积分
206
+                    TaDocumentVerify verify = iTaDocumentVerifyService.getById(documentVerify.getDocumentVerifyId());
207
+
208
+                    // 资料审核加积分
209
+                    applicationContext.publishEvent(new EventBus(verify, EventBus.EventType.DocumentVerify,verify.getOrgId()));
210
+
211
+                }
212
+
197
                 responseBean.addSuccess(documentVerify);
213
                 responseBean.addSuccess(documentVerify);
198
             }else {
214
             }else {
199
                 responseBean.addError("fail");
215
                 responseBean.addError("fail");

+ 3
- 0
src/main/java/com/huiju/estateagents/entity/TaDocumentImg.java View File

1
 package com.huiju.estateagents.entity;
1
 package com.huiju.estateagents.entity;
2
 
2
 
3
+import com.baomidou.mybatisplus.annotation.IdType;
4
+import com.baomidou.mybatisplus.annotation.TableId;
3
 import com.baomidou.mybatisplus.annotation.TableName;
5
 import com.baomidou.mybatisplus.annotation.TableName;
4
 import lombok.Data;
6
 import lombok.Data;
5
 import lombok.EqualsAndHashCode;
7
 import lombok.EqualsAndHashCode;
27
     /**
29
     /**
28
      * 编号
30
      * 编号
29
      */
31
      */
32
+    @TableId(value = "document_img_id", type = IdType.AUTO)
30
     private Integer documentImgId;
33
     private Integer documentImgId;
31
 
34
 
32
     /**
35
     /**

+ 7
- 1
src/main/java/com/huiju/estateagents/event/EventBus.java View File

33
 		SignUpAgent(4),
33
 		SignUpAgent(4),
34
 
34
 
35
 		// 没有限制的 分享海报加积分
35
 		// 没有限制的 分享海报加积分
36
-		SharePosterAll(5);
36
+		SharePosterAll(5),
37
+
38
+		// 活动核销签到
39
+		ActivityVerificationSign(6),
40
+
41
+		// 资料审核成功
42
+		DocumentVerify(6);
37
 
43
 
38
 		private Integer type;
44
 		private Integer type;
39
 
45
 

+ 24
- 4
src/main/java/com/huiju/estateagents/event/EventLisenter.java View File

1
 package com.huiju.estateagents.event;
1
 package com.huiju.estateagents.event;
2
 
2
 
3
-import com.huiju.estateagents.entity.TaPerson;
4
-import com.huiju.estateagents.entity.TaPersonSign;
5
-import com.huiju.estateagents.entity.TaRecommendCustomer;
6
-import com.huiju.estateagents.entity.TaShare;
3
+import com.huiju.estateagents.entity.*;
7
 import com.huiju.estateagents.service.ITaPointsRecordsService;
4
 import com.huiju.estateagents.service.ITaPointsRecordsService;
8
 import lombok.extern.slf4j.Slf4j;
5
 import lombok.extern.slf4j.Slf4j;
9
 import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.beans.factory.annotation.Autowired;
44
 			case SharePosterAll:
41
 			case SharePosterAll:
45
 				getSharePointsAll((String) event.getSource(), event.getOrgId());
42
 				getSharePointsAll((String) event.getSource(), event.getOrgId());
46
 				break;
43
 				break;
44
+
45
+			// 活动核销签到
46
+			case ActivityVerificationSign:
47
+				getActivityVerificationSign((HelpInitiateRecord) event.getSource(), event.getOrgId());
48
+				break;
49
+			// 资料审核成功
50
+			case DocumentVerify:
51
+				getDocumentVerify((TaDocumentVerify) event.getSource(), event.getOrgId());
52
+				break;
47
 			default:
53
 			default:
48
 				break;
54
 				break;
49
 		}
55
 		}
67
 
73
 
68
 	// 推荐客户送积分
74
 	// 推荐客户送积分
69
 	private void getRecommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId) { taPointsRecordsService.recommendCustPoints(taRecommendCustomer, orgId); }
75
 	private void getRecommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId) { taPointsRecordsService.recommendCustPoints(taRecommendCustomer, orgId); }
76
+
77
+	/**
78
+	 * 活动核销成功送积分
79
+	 */
80
+	private void getActivityVerificationSign(HelpInitiateRecord helpInitiateRecord, Integer orgId) {
81
+		taPointsRecordsService.activityVerificationSign(helpInitiateRecord, orgId);
82
+	}
83
+
84
+	/**
85
+	 * 资料审核成功送积分
86
+	 */
87
+	private void getDocumentVerify(TaDocumentVerify taDocumentVerify, Integer orgId) {
88
+		taPointsRecordsService.documentVerify(taDocumentVerify, orgId);
89
+	}
70
 }
90
 }

+ 18
- 0
src/main/java/com/huiju/estateagents/service/ITaPointsRecordsService.java View File

14
  */
14
  */
15
 public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
15
 public interface ITaPointsRecordsService extends IService<TaPointsRecords> {
16
 
16
 
17
+	// 分享赚积分
17
 	void sharePoints(TaShare taShare, Integer orgId);
18
 	void sharePoints(TaShare taShare, Integer orgId);
18
 
19
 
20
+	// 签到赚积分
19
 	void checkinPoints(TaPersonSign taPersonSign, Integer orgId);
21
 	void checkinPoints(TaPersonSign taPersonSign, Integer orgId);
20
 
22
 
23
+	// 注册送积分
21
 	void signUpPoints(TaPerson taPerson, Integer orgId);
24
 	void signUpPoints(TaPerson taPerson, Integer orgId);
22
 
25
 
26
+	// 推荐客户送积分
23
 	void recommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId);
27
 	void recommendCustPoints(TaRecommendCustomer taRecommendCustomer, Integer orgId);
24
 
28
 
25
 	void consumeGoodsPoints(TaGoods taGoods, Integer orgId);
29
 	void consumeGoodsPoints(TaGoods taGoods, Integer orgId);
31
 	 * @param recommenderId
35
 	 * @param recommenderId
32
 	 */
36
 	 */
33
     void sharePosterAll(String recommenderId, Integer orgId);
37
     void sharePosterAll(String recommenderId, Integer orgId);
38
+
39
+	/**
40
+	 * 资料审核送积分
41
+	 * @param taDocumentVerify
42
+	 * @param orgId
43
+	 */
44
+	void documentVerify(TaDocumentVerify taDocumentVerify, Integer orgId);
45
+
46
+	/**
47
+	 * 活动核销送积分
48
+	 * @param helpInitiateRecord
49
+	 * @param orgId
50
+	 */
51
+	void activityVerificationSign(HelpInitiateRecord helpInitiateRecord, Integer orgId);
34
 }
52
 }

+ 9
- 0
src/main/java/com/huiju/estateagents/service/impl/HelpActivityServiceImpl.java View File

9
 import com.huiju.estateagents.entity.HelpActivity;
9
 import com.huiju.estateagents.entity.HelpActivity;
10
 import com.huiju.estateagents.entity.HelpInitiateRecord;
10
 import com.huiju.estateagents.entity.HelpInitiateRecord;
11
 import com.huiju.estateagents.entity.HelpRecord;
11
 import com.huiju.estateagents.entity.HelpRecord;
12
+import com.huiju.estateagents.event.EventBus;
12
 import com.huiju.estateagents.excel.HelpInitiateRecordSucceed;
13
 import com.huiju.estateagents.excel.HelpInitiateRecordSucceed;
13
 import com.huiju.estateagents.excel.HelpProceedAndFinish;
14
 import com.huiju.estateagents.excel.HelpProceedAndFinish;
14
 import com.huiju.estateagents.excel.HelpRecordExport;
15
 import com.huiju.estateagents.excel.HelpRecordExport;
18
 import com.huiju.estateagents.service.IHelpActivityService;
19
 import com.huiju.estateagents.service.IHelpActivityService;
19
 import org.apache.commons.collections.CollectionUtils;
20
 import org.apache.commons.collections.CollectionUtils;
20
 import org.springframework.beans.factory.annotation.Autowired;
21
 import org.springframework.beans.factory.annotation.Autowired;
22
+import org.springframework.context.ApplicationContext;
21
 import org.springframework.stereotype.Service;
23
 import org.springframework.stereotype.Service;
22
 
24
 
23
 import javax.xml.crypto.Data;
25
 import javax.xml.crypto.Data;
45
     @Autowired
47
     @Autowired
46
     HelpRecordMapper helpRecordMapper;
48
     HelpRecordMapper helpRecordMapper;
47
 
49
 
50
+    @Autowired
51
+    ApplicationContext applicationContext;
52
+
48
     @Override
53
     @Override
49
     public ResponseBean helpActivityList(Integer pageNum, Integer pageSize, Integer cityId, String buildingId, String title, String startDate, String endDate, Integer activityStatus, Integer orgId) {
54
     public ResponseBean helpActivityList(Integer pageNum, Integer pageSize, Integer cityId, String buildingId, String title, String startDate, String endDate, Integer activityStatus, Integer orgId) {
50
         ResponseBean responseBean = new ResponseBean<>();
55
         ResponseBean responseBean = new ResponseBean<>();
142
         if (verifyCode.equals(Integer.valueOf(helpInitiateRecord.getVerification()))){
147
         if (verifyCode.equals(Integer.valueOf(helpInitiateRecord.getVerification()))){
143
             helpInitiateRecord.setVerificationStatus(1);
148
             helpInitiateRecord.setVerificationStatus(1);
144
             helpInitiateRecordMapper.updateById(helpInitiateRecord);
149
             helpInitiateRecordMapper.updateById(helpInitiateRecord);
150
+
151
+            // 活动核销加积分
152
+            applicationContext.publishEvent(new EventBus(helpInitiateRecord, EventBus.EventType.ActivityVerificationSign,helpInitiateRecord.getOrgId()));
153
+
145
             responseBean.addSuccess("成功");
154
             responseBean.addSuccess("成功");
146
         }else {
155
         }else {
147
             responseBean.addError("核销码错误,请重新输入");
156
             responseBean.addError("核销码错误,请重新输入");

+ 11
- 7
src/main/java/com/huiju/estateagents/service/impl/TaDocumentVerifyServiceImpl.java View File

8
 import com.huiju.estateagents.mapper.TaDocumentImgMapper;
8
 import com.huiju.estateagents.mapper.TaDocumentImgMapper;
9
 import com.huiju.estateagents.mapper.TaDocumentVerifyMapper;
9
 import com.huiju.estateagents.mapper.TaDocumentVerifyMapper;
10
 import com.huiju.estateagents.service.ITaDocumentVerifyService;
10
 import com.huiju.estateagents.service.ITaDocumentVerifyService;
11
+import org.apache.commons.collections.CollectionUtils;
11
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.beans.factory.annotation.Autowired;
12
 import org.springframework.stereotype.Service;
13
 import org.springframework.stereotype.Service;
13
 
14
 
38
         for (int i = 0; i<data.getRecords().size();i++){
39
         for (int i = 0; i<data.getRecords().size();i++){
39
             idList.add(data.getRecords().get(i).getDocumentVerifyId());
40
             idList.add(data.getRecords().get(i).getDocumentVerifyId());
40
         }
41
         }
41
-        List<TaDocumentImg>allImgList = taDocumentImgMapper.selectBatchIds(idList);
42
-        for (int i = 0;i<data.getRecords().size();i++){
43
-            List<TaDocumentImg>imgList = new ArrayList<>();
44
-            for(int j = 0; j<allImgList.size();j++){
45
-                if(data.getRecords().get(i).getDocumentVerifyId().equals(allImgList.get(j).getDocumentVerifyId())){
46
-                    imgList.add(allImgList.get(j));
42
+        if (CollectionUtils.isNotEmpty(idList)) {
43
+            List<TaDocumentImg>allImgList = taDocumentImgMapper.selectBatchIds(idList);
44
+            for (int i = 0;i<data.getRecords().size();i++){
45
+                List<TaDocumentImg>imgList = new ArrayList<>();
46
+                for(int j = 0; j<allImgList.size();j++){
47
+                    if(data.getRecords().get(i).getDocumentVerifyId().equals(allImgList.get(j).getDocumentVerifyId())){
48
+                        imgList.add(allImgList.get(j));
49
+                    }
47
                 }
50
                 }
51
+                data.getRecords().get(i).setImgList(imgList);
48
             }
52
             }
49
-            data.getRecords().get(i).setImgList(imgList);
50
         }
53
         }
54
+
51
         return data;
55
         return data;
52
     }
56
     }
53
 
57
 

+ 57
- 0
src/main/java/com/huiju/estateagents/service/impl/TaPointsRecordsServiceImpl.java View File

313
 	}
313
 	}
314
 
314
 
315
 
315
 
316
+	@Override
317
+	public void documentVerify(TaDocumentVerify taDocumentVerify, Integer orgId) {
318
+		// 是否开启积分规则
319
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_DOCUMENT_VERIFY);
320
+		if (pointsAmount == 0) {
321
+			return;
322
+		}
323
+
324
+		//
325
+		String changeType = CommConstant.POINTS_CHANGE_DOCUMENT_VERIFY;
326
+
327
+		// 已经领取过的不会再次领取
328
+		String[] params = {
329
+				"shareId="+String.valueOf(taDocumentVerify.getDocumentVerifyId()),
330
+				"openUser="+taDocumentVerify.getPersonId()
331
+		};
332
+		String changeParams = String.join("&", params);
333
+		boolean hasJoined = isPointsRecordsExist(taDocumentVerify.getPersonId(), changeType, changeParams);
334
+		if (hasJoined) {
335
+			return;
336
+		}
337
+
338
+		// 发放积分
339
+		TaPerson person = taPersonMapper.selectById(taDocumentVerify.getPersonId());
340
+		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
341
+			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
342
+		}
343
+	}
344
+
345
+	@Override
346
+	public void activityVerificationSign(HelpInitiateRecord helpInitiateRecord, Integer orgId) {
347
+		// 是否开启积分规则
348
+		Integer pointsAmount = getRulePoints(CommConstant.POINTS_RULE_ACTIVITY_VERIFICATION);
349
+		if (pointsAmount == 0) {
350
+			return;
351
+		}
352
+
353
+		//
354
+		String changeType = CommConstant.POINTS_CHANGE_ACTIVITY_VERIFICATION;
355
+
356
+		// 已经领取过的不会再次领取
357
+		String[] params = {
358
+				"shareId="+String.valueOf(helpInitiateRecord.getHelpRecordInitiateId()),
359
+				"openUser="+helpInitiateRecord.getPersonId()
360
+		};
361
+		String changeParams = String.join("&", params);
362
+		boolean hasJoined = isPointsRecordsExist(helpInitiateRecord.getPersonId(), changeType, changeParams);
363
+		if (hasJoined) {
364
+			return;
365
+		}
366
+
367
+		// 发放积分
368
+		TaPerson person = taPersonMapper.selectById(helpInitiateRecord.getPersonId());
369
+		if (savePoints(person, changeType, changeParams, pointsAmount, orgId)) {
370
+			taPersonMapper.setFieldIncrement(person.getPersonId(), "points", pointsAmount);
371
+		}
372
+	}
316
 }
373
 }