胡轶钦 5 年之前
父節點
當前提交
3228c37ad8

+ 4
- 4
src/main/java/com/huiju/estateagents/mapper/TaPersonMapper.java 查看文件

@@ -4,10 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
4 4
 import com.huiju.estateagents.entity.TaPerson;
5 5
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
6 6
 import com.huiju.estateagents.po.PersonPO;
7
-import org.apache.ibatis.annotations.Mapper;
8
-import org.apache.ibatis.annotations.Param;
9
-import org.apache.ibatis.annotations.ResultType;
10
-import org.apache.ibatis.annotations.Select;
7
+import org.apache.ibatis.annotations.*;
11 8
 
12 9
 import java.io.Serializable;
13 10
 import java.time.LocalDate;
@@ -155,5 +152,8 @@ public interface TaPersonMapper extends BaseMapper<TaPerson> {
155 152
 
156 153
     // ------------- 用户来源 end ------------
157 154
 
155
+    @Update("UPDATE ta_person  SET ${field} = IFNULL(${field}, 0) + #{increment}  WHERE person_id = #{newsId}")
156
+    void setFieldNum(@Param("newsId") String newsId, @Param("field") String field, @Param("increment") int increment);
157
+
158 158
 
159 159
 }

+ 154
- 145
src/main/java/com/huiju/estateagents/service/impl/TaFavorServiceImpl.java 查看文件

@@ -1,145 +1,154 @@
1
-package com.huiju.estateagents.service.impl;
2
-
3
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
-import com.huiju.estateagents.base.ResponseBean;
5
-import com.huiju.estateagents.common.CommConstant;
6
-import com.huiju.estateagents.entity.TaBuildingDynamic;
7
-import com.huiju.estateagents.entity.TaFavor;
8
-import com.huiju.estateagents.entity.TaPerson;
9
-import com.huiju.estateagents.mapper.TaBuildingDynamicMapper;
10
-import com.huiju.estateagents.mapper.TaFavorMapper;
11
-import com.huiju.estateagents.mapper.TaNewsMapper;
12
-import com.huiju.estateagents.mapper.TaPersonMapper;
13
-import com.huiju.estateagents.service.ITaFavorService;
14
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
15
-import org.springframework.beans.factory.annotation.Autowired;
16
-import org.springframework.stereotype.Service;
17
-
18
-import java.time.LocalDateTime;
19
-import java.util.HashMap;
20
-import java.util.List;
21
-import java.util.Map;
22
-
23
-/**
24
- * <p>
25
- * 点赞表 服务实现类
26
- * </p>
27
- *
28
- * @author jobob
29
- * @since 2019-05-10
30
- */
31
-@Service
32
-public class TaFavorServiceImpl extends ServiceImpl<TaFavorMapper, TaFavor> implements ITaFavorService {
33
-
34
-    @Autowired
35
-    TaPersonMapper taPersonMapper;
36
-
37
-    @Autowired
38
-    TaFavorMapper taFavorMapper;
39
-
40
-    @Autowired
41
-    private TaNewsMapper taNewsMapper;
42
-
43
-    @Autowired
44
-    private TaBuildingDynamicMapper taBuildingDynamicMapper;
45
-
46
-    @Override
47
-    public ResponseBean postLike(String openid, String typeOf, String like) {
48
-        List<TaPerson> persons = getPersonsByOpenId(openid);
49
-        if (null == persons || persons.size() != 1) {
50
-            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
51
-        }
52
-
53
-        TaPerson taPerson = persons.get(0);
54
-
55
-        // 是否被赞过
56
-        QueryWrapper<TaFavor> queryWrapper = new QueryWrapper<>();
57
-        queryWrapper.eq("person_id", taPerson.getPersonId());
58
-        queryWrapper.eq("be_favor", like);
59
-        queryWrapper.eq("tagert_type", typeOf);
60
-        List<TaFavor> favors = taFavorMapper.selectList(queryWrapper);
61
-        if (null != favors && favors.size() > 0) {
62
-//            return ResponseBean.error("请不需要重复点赞", ResponseBean.ERROR_UNAVAILABLE);
63
-            return ResponseBean.success("");
64
-        }
65
-
66
-        // 写入赞
67
-        TaFavor taFavor = new TaFavor();
68
-        taFavor.setBeFavor(like);
69
-        taFavor.setCreateDate(LocalDateTime.now());
70
-        taFavor.setNameOrnick(taPerson.getNickname());
71
-        taFavor.setPersonId(taPerson.getPersonId());
72
-        taFavor.setPhotoOravatar(taPerson.getAvatarurl());
73
-        taFavor.setTagertType(typeOf);
74
-
75
-        int row = taFavorMapper.insert(taFavor);
76
-        if (row < 1) {
77
-            return ResponseBean.error("点赞失败", ResponseBean.ERROR_UNAVAILABLE);
78
-        }
79
-
80
-        // 如果是点赞置业, 则人员点赞 + 1
81
-        if (typeOf.equals(CommConstant.FAVOR_CONSULTANT)) {
82
-            taPersonMapper.setFieldIncrement(like,"like_num", 1);
83
-        }
84
-
85
-        // 如果是资讯点赞, 则 +1
86
-        if(typeOf.equals(CommConstant.FAVOR_NEWS)) {
87
-            taNewsMapper.setFieldNum(like, "favor_num", 1);
88
-        }
89
-
90
-        // 如果是活动点赞, 则 +1
91
-        if(typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
92
-            taBuildingDynamicMapper.setFieldNum(like, "favor_num", 1);
93
-        }
94
-
95
-        return ResponseBean.success("");
96
-    }
97
-
98
-    @Override
99
-    public ResponseBean cancelLike(String openid, String typeOf, String like) {
100
-        List<TaPerson> persons = getPersonsByOpenId(openid);
101
-        if (null == persons || persons.size() != 1) {
102
-            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
103
-        }
104
-
105
-        TaPerson taPerson = persons.get(0);
106
-
107
-        // 是否被赞过
108
-        QueryWrapper<TaFavor> queryWrapper = new QueryWrapper<>();
109
-        queryWrapper.eq("person_id", taPerson.getPersonId());
110
-        queryWrapper.eq("be_favor", like);
111
-        queryWrapper.eq("tagert_type", typeOf);
112
-        List<TaFavor> favors = taFavorMapper.selectList(queryWrapper);
113
-        if (null == favors || favors.size() == 0) {
114
-            return ResponseBean.success("");
115
-        }
116
-
117
-        Map<String, Object> condition = new HashMap<>();
118
-        condition.put("person_id", taPerson.getPersonId());
119
-        condition.put("be_favor", like);
120
-        condition.put("tagert_type", typeOf);
121
-        taFavorMapper.deleteByMap(condition);
122
-
123
-        // 如果是点赞置业, 则人员点赞 - 1
124
-        if (typeOf.equals(CommConstant.FAVOR_CONSULTANT)) {
125
-            taPersonMapper.setFieldIncrement(taPerson.getPersonId(),"like_num", -1);
126
-        }
127
-
128
-        // 如果是收藏资讯, 则 - 1
129
-        if (typeOf.equals(CommConstant.FAVOR_NEWS)) {
130
-            taNewsMapper.setFieldNum(taPerson.getPersonId(),"favor_num", -1);
131
-        }
132
-
133
-
134
-        // 如果是活动点赞, 则 -1
135
-        if(typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
136
-            taBuildingDynamicMapper.setFieldNum(like, "favor_num", 1);
137
-        }
138
-
139
-        return ResponseBean.success("");
140
-    }
141
-
142
-    List<TaPerson> getPersonsByOpenId(String openid) {
143
-        return taPersonMapper.getPersonByOpenId(openid);
144
-    }
145
-}
1
+package com.huiju.estateagents.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.common.CommConstant;
6
+import com.huiju.estateagents.entity.TaBuildingDynamic;
7
+import com.huiju.estateagents.entity.TaFavor;
8
+import com.huiju.estateagents.entity.TaPerson;
9
+import com.huiju.estateagents.mapper.*;
10
+import com.huiju.estateagents.service.ITaFavorService;
11
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
12
+import org.springframework.beans.factory.annotation.Autowired;
13
+import org.springframework.stereotype.Service;
14
+
15
+import java.time.LocalDateTime;
16
+import java.util.HashMap;
17
+import java.util.List;
18
+import java.util.Map;
19
+
20
+/**
21
+ * <p>
22
+ * 点赞表 服务实现类
23
+ * </p>
24
+ *
25
+ * @author jobob
26
+ * @since 2019-05-10
27
+ */
28
+@Service
29
+public class TaFavorServiceImpl extends ServiceImpl<TaFavorMapper, TaFavor> implements ITaFavorService {
30
+
31
+    @Autowired
32
+    TaPersonMapper taPersonMapper;
33
+
34
+    @Autowired
35
+    TaFavorMapper taFavorMapper;
36
+
37
+    @Autowired
38
+    private TaNewsMapper taNewsMapper;
39
+
40
+    @Autowired
41
+    private TaBuildingDynamicMapper taBuildingDynamicMapper;
42
+
43
+    @Autowired
44
+    private TaBuildingMapper taBuildingMapper;
45
+
46
+    @Override
47
+    public ResponseBean postLike(String openid, String typeOf, String like) {
48
+        List<TaPerson> persons = getPersonsByOpenId(openid);
49
+        if (null == persons || persons.size() != 1) {
50
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
51
+        }
52
+
53
+        TaPerson taPerson = persons.get(0);
54
+
55
+        // 是否被赞过
56
+        QueryWrapper<TaFavor> queryWrapper = new QueryWrapper<>();
57
+        queryWrapper.eq("person_id", taPerson.getPersonId());
58
+        queryWrapper.eq("be_favor", like);
59
+        queryWrapper.eq("tagert_type", typeOf);
60
+        List<TaFavor> favors = taFavorMapper.selectList(queryWrapper);
61
+        if (null != favors && favors.size() > 0) {
62
+//            return ResponseBean.error("请不需要重复点赞", ResponseBean.ERROR_UNAVAILABLE);
63
+            return ResponseBean.success("");
64
+        }
65
+
66
+        // 写入赞
67
+        TaFavor taFavor = new TaFavor();
68
+        taFavor.setBeFavor(like);
69
+        taFavor.setCreateDate(LocalDateTime.now());
70
+        taFavor.setNameOrnick(taPerson.getNickname());
71
+        taFavor.setPersonId(taPerson.getPersonId());
72
+        taFavor.setPhotoOravatar(taPerson.getAvatarurl());
73
+        taFavor.setTagertType(typeOf);
74
+
75
+        int row = taFavorMapper.insert(taFavor);
76
+        if (row < 1) {
77
+            return ResponseBean.error("点赞失败", ResponseBean.ERROR_UNAVAILABLE);
78
+        }
79
+
80
+        // 如果是点赞置业, 则人员点赞 + 1
81
+        if (typeOf.equals("card")) {
82
+            taPersonMapper.setFieldIncrement(like,"like_num", 1);
83
+        }
84
+
85
+        // 如果是资讯点赞, 则 +1
86
+        if(typeOf.equals(CommConstant.FAVOR_NEWS)) {
87
+            taNewsMapper.setFieldNum(like, "favor_num", 1);
88
+        }
89
+
90
+        // 如果是活动点赞, 则 +1
91
+        if(typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
92
+            taBuildingDynamicMapper.setFieldNum(like, "favor_num", 1);
93
+        }
94
+
95
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
96
+            taBuildingMapper.setFieldNum(like, "favor_num", 1);
97
+        }
98
+
99
+        return ResponseBean.success("");
100
+    }
101
+
102
+    @Override
103
+    public ResponseBean cancelLike(String openid, String typeOf, String like) {
104
+        List<TaPerson> persons = getPersonsByOpenId(openid);
105
+        if (null == persons || persons.size() != 1) {
106
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
107
+        }
108
+
109
+        TaPerson taPerson = persons.get(0);
110
+
111
+        // 是否被赞过
112
+        QueryWrapper<TaFavor> queryWrapper = new QueryWrapper<>();
113
+        queryWrapper.eq("person_id", taPerson.getPersonId());
114
+        queryWrapper.eq("be_favor", like);
115
+        queryWrapper.eq("tagert_type", typeOf);
116
+        List<TaFavor> favors = taFavorMapper.selectList(queryWrapper);
117
+        if (null == favors || favors.size() == 0) {
118
+            return ResponseBean.success("");
119
+        }
120
+
121
+        Map<String, Object> condition = new HashMap<>();
122
+        condition.put("person_id", taPerson.getPersonId());
123
+        condition.put("be_favor", like);
124
+        condition.put("tagert_type", typeOf);
125
+        taFavorMapper.deleteByMap(condition);
126
+
127
+        // 如果是点赞置业, 则人员点赞 - 1
128
+        if (typeOf.equals("card")) {
129
+            taPersonMapper.setFieldIncrement(taPerson.getPersonId(),"like_num", -1);
130
+        }
131
+
132
+        // 如果是收藏资讯, 则 - 1
133
+        if (typeOf.equals(CommConstant.FAVOR_NEWS)) {
134
+            taNewsMapper.setFieldNum(taPerson.getPersonId(),"favor_num", -1);
135
+        }
136
+
137
+        // 如果项目资讯, 则 - 1
138
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
139
+            taBuildingMapper.setFieldNum(like, "favor_num", -1);
140
+        }
141
+
142
+
143
+        // 如果是活动点赞, 则 -1
144
+        if(typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
145
+            taBuildingDynamicMapper.setFieldNum(like, "favor_num", -1);
146
+        }
147
+
148
+        return ResponseBean.success("");
149
+    }
150
+
151
+    List<TaPerson> getPersonsByOpenId(String openid) {
152
+        return taPersonMapper.getPersonByOpenId(openid);
153
+    }
154
+}

+ 10
- 0
src/main/java/com/huiju/estateagents/service/impl/TaSaveServiceImpl.java 查看文件

@@ -92,6 +92,9 @@ public class TaSaveServiceImpl extends ServiceImpl<TaSaveMapper, TaSave> impleme
92 92
         if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
93 93
             taBuildingMapper.setFieldNum(like, "save_num", 1);
94 94
         }
95
+        if(typeOf.equals("card")){
96
+            taPersonMapper.setFieldNum(like,"save_num", 1);
97
+        }
95 98
 
96 99
         return ResponseBean.success("");
97 100
     }
@@ -131,6 +134,13 @@ public class TaSaveServiceImpl extends ServiceImpl<TaSaveMapper, TaSave> impleme
131 134
             taBuildingDynamicMapper.setFieldNum(like, "save_num", -1);
132 135
         }
133 136
 
137
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)){
138
+            taBuildingMapper.setFieldNum(like, "save_num", -1);
139
+        }
140
+        if(typeOf.equals("card")){
141
+            taPersonMapper.setFieldNum(like,"save_num", -1);
142
+        }
143
+
134 144
         return ResponseBean.success("");
135 145
     }
136 146
 

+ 163
- 155
src/main/java/com/huiju/estateagents/service/impl/TaShareServiceImpl.java 查看文件

@@ -1,155 +1,163 @@
1
-package com.huiju.estateagents.service.impl;
2
-
3
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
-import com.baomidou.mybatisplus.core.metadata.IPage;
5
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
-import com.huiju.estateagents.base.ResponseBean;
8
-import com.huiju.estateagents.common.CommConstant;
9
-import com.huiju.estateagents.common.StringUtils;
10
-import com.huiju.estateagents.entity.*;
11
-import com.huiju.estateagents.event.EventBus;
12
-import com.huiju.estateagents.mapper.*;
13
-import com.huiju.estateagents.service.ITaShareService;
14
-import org.springframework.beans.factory.annotation.Autowired;
15
-import org.springframework.context.ApplicationContext;
16
-import org.springframework.stereotype.Service;
17
-
18
-import javax.annotation.Resource;
19
-import java.time.LocalDateTime;
20
-import java.util.List;
21
-
22
-/**
23
- * <p>
24
- * 用户访问表 服务实现类
25
- * </p>
26
- *
27
- * @author jobob
28
- * @since 2019-05-10
29
- */
30
-@Service
31
-public class TaShareServiceImpl extends ServiceImpl<TaShareMapper, TaShare> implements ITaShareService {
32
-    @Autowired
33
-    TaPersonMapper taPersonMapper;
34
-
35
-    @Autowired
36
-    TaShareMapper taShareMapper;
37
-
38
-    @Autowired
39
-    private TaBuildingMapper taBuildingMapper;
40
-
41
-    @Autowired
42
-    private TaBuildingDynamicMapper taBuildingDynamicMapper;
43
-    
44
-    @Resource
45
-    private ApplicationContext applicationContext;
46
-
47
-    @Override
48
-    public ResponseBean saveData(String openid, String typeOf, String id) {
49
-        List<TaPerson> persons = getPersonsByOpenId(openid);
50
-        if (null == persons || persons.size() != 1) {
51
-            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
52
-        }
53
-
54
-        TaPerson taPerson = persons.get(0);
55
-        // 如果是分享活动, 则活动 + 1
56
-        if (typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
57
-            QueryWrapper<TaBuildingDynamic> taBuildingDynamicQuery= new QueryWrapper<>();
58
-            taBuildingDynamicQuery.eq("dynamic_id",id);
59
-            TaBuildingDynamic taBuildingDynamic = taBuildingDynamicMapper.selectOne(taBuildingDynamicQuery);
60
-            taBuildingDynamicMapper.updateById( taBuildingDynamic.setShareNum(taBuildingDynamic.getShareNum()+1));
61
-            return ResponseBean.success("成功");
62
-        }
63
-
64
-        QueryWrapper<TaShare> queryWrapper = new QueryWrapper<>();
65
-        queryWrapper.eq("person_id", taPerson.getPersonId());
66
-        queryWrapper.eq("be_share", id);
67
-        queryWrapper.eq("tagert_type", typeOf);
68
-        List<TaShare> uvs = taShareMapper.selectList(queryWrapper);
69
-        if (null != uvs && uvs.size() > 0) {
70
-            return ResponseBean.success("");
71
-        }
72
-
73
-        TaShare taShare = new TaShare();
74
-        taShare.setBeShare(id);
75
-        taShare.setCreateDate(LocalDateTime.now());
76
-        taShare.setNameOrnick(taPerson.getNickname());
77
-        taShare.setPersonId(taPerson.getPersonId());
78
-        taShare.setPhotoOravatar(taPerson.getAvatarurl());
79
-        taShare.setTagertType(typeOf);
80
-
81
-        int row = taShareMapper.insert(taShare);
82
-        if (row < 1) {
83
-            return ResponseBean.error("分享增加失败", ResponseBean.ERROR_UNAVAILABLE);
84
-        }
85
-
86
-        // 如果是分享置业, 则人员分享 + 1
87
-        if (typeOf == CommConstant.FAVOR_CONSULTANT) {
88
-            taPersonMapper.setFieldIncrement(id,"share_num", 1);
89
-        }
90
-
91
-        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
92
-            taBuildingMapper.setFieldNum(id, "share_num", 1);
93
-        }
94
-
95
-        return ResponseBean.success("");
96
-    }
97
-
98
-    @Override
99
-    public ResponseBean getListOf(String id, String typeOf, Integer pageNumber, Integer pageSize) {
100
-        IPage<TaShare> page = new Page(pageNumber, pageSize);
101
-        QueryWrapper<TaShare> queryWrapper = new QueryWrapper<>();
102
-        queryWrapper.eq("be_share", id);
103
-        queryWrapper.eq("tagert_type", typeOf);
104
-        queryWrapper.orderByDesc("create_date");
105
-
106
-        IPage<TaShare> result = taShareMapper.selectPage(page, queryWrapper);
107
-        return ResponseBean.success(result);
108
-    }
109
-
110
-    @Override
111
-    public void makeSure(String openid, String typeOf, String id) {
112
-        // 查找分享记录
113
-        TaShare taShare = taShareMapper.selectById(id);
114
-        if (null == taShare) {
115
-            return;
116
-        }
117
-
118
-        // 记录分享人
119
-        TaPerson shareUsr = taPersonMapper.getById(taShare.getPersonId());
120
-        if (null == shareUsr) {
121
-            return;
122
-        }
123
-
124
-        // 如果分享人没有授权手机号
125
-        if (StringUtils.isEmpty(shareUsr.getPhone()) && StringUtils.isEmpty(shareUsr.getTel())) {
126
-            return;
127
-        }
128
-
129
-        // 查找打开人
130
-        List<TaPerson> persons = taPersonMapper.getPersonByOpenId(openid);
131
-        if (null == persons || persons.size() == 0) {
132
-            return;
133
-        }
134
-        TaPerson openUsr = persons.get(0);
135
-
136
-        // 如果打开人员与分享人员是同一个人
137
-        // 此处通过 personId 来判断,其实并不准确
138
-        // todo
139
-        if (openUsr.getPersonId().equals(shareUsr.getPersonId())) {
140
-            return;
141
-        }
142
-
143
-        taShare.setOpenUser(openUsr);
144
-
145
-        // 赠送积分
146
-        // 发放分享积分
147
-        if (typeOf.equals(CommConstant.FAVOR_PROJECT)){
148
-            applicationContext.publishEvent(new EventBus(taShare, EventBus.EventType.SharePoster));
149
-        }
150
-    }
151
-
152
-    List<TaPerson> getPersonsByOpenId(String openid) {
153
-        return taPersonMapper.getPersonByOpenId(openid);
154
-    }
155
-}
1
+package com.huiju.estateagents.service.impl;
2
+
3
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
4
+import com.baomidou.mybatisplus.core.metadata.IPage;
5
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
+import com.huiju.estateagents.base.ResponseBean;
8
+import com.huiju.estateagents.common.CommConstant;
9
+import com.huiju.estateagents.common.StringUtils;
10
+import com.huiju.estateagents.entity.*;
11
+import com.huiju.estateagents.event.EventBus;
12
+import com.huiju.estateagents.mapper.*;
13
+import com.huiju.estateagents.service.ITaShareService;
14
+import org.springframework.beans.factory.annotation.Autowired;
15
+import org.springframework.context.ApplicationContext;
16
+import org.springframework.stereotype.Service;
17
+
18
+import javax.annotation.Resource;
19
+import java.time.LocalDateTime;
20
+import java.util.List;
21
+
22
+/**
23
+ * <p>
24
+ * 用户访问表 服务实现类
25
+ * </p>
26
+ *
27
+ * @author jobob
28
+ * @since 2019-05-10
29
+ */
30
+@Service
31
+public class TaShareServiceImpl extends ServiceImpl<TaShareMapper, TaShare> implements ITaShareService {
32
+    @Autowired
33
+    TaPersonMapper taPersonMapper;
34
+
35
+    @Autowired
36
+    TaShareMapper taShareMapper;
37
+
38
+    @Autowired
39
+    private TaBuildingMapper taBuildingMapper;
40
+
41
+    @Autowired
42
+    private TaBuildingDynamicMapper taBuildingDynamicMapper;
43
+    
44
+    @Resource
45
+    private ApplicationContext applicationContext;
46
+
47
+    @Override
48
+    public ResponseBean saveData(String openid, String typeOf, String id) {
49
+        List<TaPerson> persons = getPersonsByOpenId(openid);
50
+        if (null == persons || persons.size() != 1) {
51
+            return ResponseBean.error("验证当前人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
52
+        }
53
+
54
+        TaPerson taPerson = persons.get(0);
55
+        // 如果是分享活动, 则活动 + 1
56
+        if (typeOf.equals(CommConstant.FAVOR_ACTIVITY)) {
57
+            QueryWrapper<TaBuildingDynamic> taBuildingDynamicQuery= new QueryWrapper<>();
58
+            taBuildingDynamicQuery.eq("dynamic_id",id);
59
+            TaBuildingDynamic taBuildingDynamic = taBuildingDynamicMapper.selectOne(taBuildingDynamicQuery);
60
+            taBuildingDynamicMapper.updateById( taBuildingDynamic.setShareNum(taBuildingDynamic.getShareNum()+1));
61
+            return ResponseBean.success("成功");
62
+        }
63
+
64
+        QueryWrapper<TaShare> queryWrapper = new QueryWrapper<>();
65
+        queryWrapper.eq("person_id", taPerson.getPersonId());
66
+        queryWrapper.eq("be_share", id);
67
+        queryWrapper.eq("tagert_type", typeOf);
68
+        List<TaShare> uvs = taShareMapper.selectList(queryWrapper);
69
+        if (null != uvs && uvs.size() > 0) {
70
+            return ResponseBean.success("");
71
+        }
72
+
73
+        TaShare taShare = new TaShare();
74
+        taShare.setBeShare(id);
75
+        taShare.setCreateDate(LocalDateTime.now());
76
+        taShare.setNameOrnick(taPerson.getNickname());
77
+        taShare.setPersonId(taPerson.getPersonId());
78
+        taShare.setPhotoOravatar(taPerson.getAvatarurl());
79
+        taShare.setTagertType(typeOf);
80
+
81
+        int row = taShareMapper.insert(taShare);
82
+        if (row < 1) {
83
+            return ResponseBean.error("分享增加失败", ResponseBean.ERROR_UNAVAILABLE);
84
+        }
85
+
86
+        // 如果是分享置业, 则人员分享 + 1
87
+        if (typeOf == CommConstant.FAVOR_CONSULTANT) {
88
+            taPersonMapper.setFieldIncrement(id,"share_num", 1);
89
+        }
90
+
91
+        if(typeOf.equals(CommConstant.FAVOR_PROJECT)) {
92
+            taBuildingMapper.setFieldNum(id, "share_num", 1);
93
+        }
94
+
95
+        if(typeOf.equals("card")){
96
+            taPersonMapper.setFieldNum(id, "share_num", 1);
97
+        }
98
+
99
+        if(typeOf.equals(CommConstant.FAVOR_ACTIVITY)){
100
+            taPersonMapper.setFieldNum(id, "share_num", 1);
101
+        }
102
+
103
+        return ResponseBean.success("");
104
+    }
105
+
106
+    @Override
107
+    public ResponseBean getListOf(String id, String typeOf, Integer pageNumber, Integer pageSize) {
108
+        IPage<TaShare> page = new Page(pageNumber, pageSize);
109
+        QueryWrapper<TaShare> queryWrapper = new QueryWrapper<>();
110
+        queryWrapper.eq("be_share", id);
111
+        queryWrapper.eq("tagert_type", typeOf);
112
+        queryWrapper.orderByDesc("create_date");
113
+
114
+        IPage<TaShare> result = taShareMapper.selectPage(page, queryWrapper);
115
+        return ResponseBean.success(result);
116
+    }
117
+
118
+    @Override
119
+    public void makeSure(String openid, String typeOf, String id) {
120
+        // 查找分享记录
121
+        TaShare taShare = taShareMapper.selectById(id);
122
+        if (null == taShare) {
123
+            return;
124
+        }
125
+
126
+        // 记录分享人
127
+        TaPerson shareUsr = taPersonMapper.getById(taShare.getPersonId());
128
+        if (null == shareUsr) {
129
+            return;
130
+        }
131
+
132
+        // 如果分享人没有授权手机号
133
+        if (StringUtils.isEmpty(shareUsr.getPhone()) && StringUtils.isEmpty(shareUsr.getTel())) {
134
+            return;
135
+        }
136
+
137
+        // 查找打开人
138
+        List<TaPerson> persons = taPersonMapper.getPersonByOpenId(openid);
139
+        if (null == persons || persons.size() == 0) {
140
+            return;
141
+        }
142
+        TaPerson openUsr = persons.get(0);
143
+
144
+        // 如果打开人员与分享人员是同一个人
145
+        // 此处通过 personId 来判断,其实并不准确
146
+        // todo
147
+        if (openUsr.getPersonId().equals(shareUsr.getPersonId())) {
148
+            return;
149
+        }
150
+
151
+        taShare.setOpenUser(openUsr);
152
+
153
+        // 赠送积分
154
+        // 发放分享积分
155
+        if (typeOf.equals(CommConstant.FAVOR_PROJECT)){
156
+            applicationContext.publishEvent(new EventBus(taShare, EventBus.EventType.SharePoster));
157
+        }
158
+    }
159
+
160
+    List<TaPerson> getPersonsByOpenId(String openid) {
161
+        return taPersonMapper.getPersonByOpenId(openid);
162
+    }
163
+}