dingxin преди 5 години
родител
ревизия
a72d47a4d0

+ 61
- 2
src/main/java/com/huiju/estateagents/controller/TaShareRecordController.java Целия файл

@@ -2,7 +2,10 @@ package com.huiju.estateagents.controller;
2 2
 
3 3
 import com.huiju.estateagents.base.BaseController;
4 4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.TaPerson;
5 6
 import com.huiju.estateagents.entity.TaShareRecord;
7
+import com.huiju.estateagents.service.ITaPersonService;
8
+import com.huiju.estateagents.service.ITaShareActivityService;
6 9
 import com.huiju.estateagents.service.ITaShareRecordService;
7 10
 import org.slf4j.Logger;
8 11
 import org.slf4j.LoggerFactory;
@@ -10,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
10 13
 import org.springframework.web.bind.annotation.*;
11 14
 
12 15
 import javax.servlet.http.HttpServletRequest;
16
+import java.util.List;
13 17
 
14 18
 /**
15 19
  * <p>
@@ -27,8 +31,10 @@ public class TaShareRecordController extends BaseController {
27 31
 
28 32
     @Autowired
29 33
     public ITaShareRecordService iTaShareRecordService;
30
-
31
-
34
+    
35
+    @Autowired
36
+    private ITaPersonService taPersonService;
37
+    
32 38
     /**
33 39
      * 分页拼团成功列表
34 40
      * @param pageNum
@@ -185,4 +191,57 @@ public class TaShareRecordController extends BaseController {
185 191
         }
186 192
         return responseBean;
187 193
     }
194
+    
195
+    /**
196
+     * 微信端分页获取团长记录
197
+     * @param pageNum
198
+     * @param pageSize
199
+     * @return
200
+     */
201
+    @RequestMapping(value="/wx/taShareRecord",method= RequestMethod.GET)
202
+    public ResponseBean wxShareRecordList(@RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
203
+                                                 @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
204
+                                                 HttpServletRequest request){
205
+        ResponseBean responseBean = new ResponseBean();
206
+        String openid = getOpenId(request);
207
+        Integer orgId = getOrgId(request);
208
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
209
+        if (null == taPersons || taPersons.size() != 1) {
210
+            return responseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
211
+        }
212
+        TaPerson person = taPersons.get(0);
213
+        try {
214
+            responseBean = iTaShareRecordService.getShareRecordList(pageNum, pageSize, orgId, person);
215
+        }catch (Exception e){
216
+            e.printStackTrace();
217
+            logger.error("taShareRecordList -=- {}",e.toString());
218
+            responseBean.addError(e.getMessage());
219
+        }
220
+        return responseBean;
221
+    }
222
+    
223
+    /**
224
+     * 保存拼团中的对象
225
+     * @param taShareRecord 实体对象
226
+     * @return
227
+     */
228
+    @RequestMapping(value="/wx/taShareRecord",method= RequestMethod.POST)
229
+    public ResponseBean wxShareRecordAdd(@RequestBody TaShareRecord taShareRecord, HttpServletRequest request){
230
+        ResponseBean responseBean = new ResponseBean();
231
+        String openid = getOpenId(request);
232
+        Integer orgId = getOrgId(request);
233
+        List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
234
+        if (null == taPersons || taPersons.size() != 1) {
235
+            return responseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
236
+        }
237
+        TaPerson person = taPersons.get(0);
238
+        try {
239
+            responseBean = iTaShareRecordService.saveShareRecord(taShareRecord,orgId,person);
240
+        }catch (Exception e){
241
+            e.printStackTrace();
242
+            logger.error("taShareRecordAdd -=- {}",e.toString());
243
+            responseBean.addError(e.getMessage());
244
+        }
245
+        return responseBean;
246
+    }
188 247
 }

+ 13
- 2
src/main/java/com/huiju/estateagents/entity/HelpRecord.java Целия файл

@@ -1,5 +1,6 @@
1 1
 package com.huiju.estateagents.entity;
2 2
 
3
+import com.baomidou.mybatisplus.annotation.TableField;
3 4
 import com.baomidou.mybatisplus.annotation.TableName;
4 5
 import java.time.LocalDateTime;
5 6
 import java.io.Serializable;
@@ -72,6 +73,16 @@ public class HelpRecord implements Serializable {
72 73
      * 发起活动助力id
73 74
      */
74 75
     private Integer helpRecordInitiateId;
75
-
76
-
76
+    
77
+    @TableField(exist = false)
78
+    private String activityName;
79
+    
80
+    @TableField(exist = false)
81
+    private String mainImg;
82
+    
83
+    @TableField(exist = false)
84
+    private Integer activityStatus;
85
+    
86
+    @TableField(exist = false)
87
+    private LocalDateTime endDate;
77 88
 }

+ 3
- 0
src/main/java/com/huiju/estateagents/mapper/TaShareRecordMapper.java Целия файл

@@ -1,6 +1,7 @@
1 1
 package com.huiju.estateagents.mapper;
2 2
 
3 3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
4 5
 import com.huiju.estateagents.entity.TaShareRecord;
5 6
 import com.huiju.estateagents.po.TaShareRecordPO;
6 7
 import org.apache.ibatis.annotations.Mapper;
@@ -20,4 +21,6 @@ import java.util.List;
20 21
 public interface TaShareRecordMapper extends BaseMapper<TaShareRecord> {
21 22
     List<TaShareRecord> recordSuccessList(@Param("phone") String phone, @Param("status") Integer status, @Param("orgId") Integer orgId);
22 23
     List<TaShareRecordPO> recordFailAndProcessingList(@Param("phone") String phone, @Param("status") Integer status, @Param("orgId") Integer orgId);
24
+	
25
+	List<TaShareRecord> getShareRecordList(Page<TaShareRecord> pg,@Param("orgId") Integer orgId,@Param("personId") String personId);
23 26
 }

+ 20
- 0
src/main/java/com/huiju/estateagents/service/ITaShareRecordService.java Целия файл

@@ -2,6 +2,7 @@ package com.huiju.estateagents.service;
2 2
 
3 3
 import com.baomidou.mybatisplus.extension.service.IService;
4 4
 import com.huiju.estateagents.base.ResponseBean;
5
+import com.huiju.estateagents.entity.TaPerson;
5 6
 import com.huiju.estateagents.entity.TaShareRecord;
6 7
 
7 8
 
@@ -18,4 +19,23 @@ public interface ITaShareRecordService extends IService<TaShareRecord> {
18 19
     ResponseBean getFailAndProcessingList(Integer pageNum, Integer pageSize, String phone, Integer status, Integer orgId);
19 20
     ResponseBean validateRule(TaShareRecord taShareRecord);
20 21
     ResponseBean verifyCode(Integer activityId, String verifyCode);
22
+	
23
+	/**
24
+	 * 分页获取微信端发起拼团记录
25
+	 * @param pageNum
26
+	 * @param pageSize
27
+	 * @param orgId
28
+	 * @param person
29
+	 * @return
30
+	 */
31
+	ResponseBean getShareRecordList(Integer pageNum, Integer pageSize, Integer orgId, TaPerson person);
32
+	
33
+	/**
34
+	 * 微信端发起我的拼团
35
+	 * @param taShareRecord
36
+	 * @param orgId
37
+	 * @param person
38
+	 * @return
39
+	 */
40
+	ResponseBean saveShareRecord(TaShareRecord taShareRecord, Integer orgId, TaPerson person);
21 41
 }

+ 8
- 2
src/main/java/com/huiju/estateagents/service/impl/HelpRecordServiceImpl.java Целия файл

@@ -85,13 +85,19 @@ public class HelpRecordServiceImpl extends ServiceImpl<HelpRecordMapper, HelpRec
85 85
 		//反更新在入库
86 86
 		helpActivity.setEnlistNum(helpActivity.getEnlistNum()+1);
87 87
 		helpActivityMapper.updateById(helpActivity);
88
-		helpInitiateRecord.setEnlistNum(helpInitiateRecord.getEnlistNum()+1);
89
-		helpInitiateRecordMapper.updateById(helpInitiateRecord);
90 88
 		//插入数据
91 89
 		helpRecord.setOrgId(orgId);
92 90
 		helpRecord.setCreateDate(LocalDateTime.now());
93 91
 		helpRecord.setPersionId(person.getPersonId());
94 92
 		helpRecordMapper.insert(helpRecord);
93
+		if (helpActivity.getEnlistNum()+1 == helpActivity.getPersionNum()){
94
+			//发送微信模板消息所有人都发送--todo
95
+			
96
+			//生成核销码
97
+			helpInitiateRecord.setVerification(helpInitiateRecord.getHelpActivityId()+System.currentTimeMillis());
98
+		}
99
+		helpInitiateRecord.setEnlistNum(helpInitiateRecord.getEnlistNum()+1);
100
+		helpInitiateRecordMapper.updateById(helpInitiateRecord);
95 101
 		return ResponseBean.success(helpRecord);
96 102
 	}
97 103
 }

+ 52
- 0
src/main/java/com/huiju/estateagents/service/impl/TaShareRecordServiceImpl.java Целия файл

@@ -16,6 +16,7 @@ import com.huiju.estateagents.service.ITaShareRecordService;
16 16
 import org.springframework.beans.factory.annotation.Autowired;
17 17
 import org.springframework.stereotype.Service;
18 18
 
19
+import java.time.LocalDateTime;
19 20
 import java.util.List;
20 21
 
21 22
 /**
@@ -111,4 +112,55 @@ public class TaShareRecordServiceImpl extends ServiceImpl<TaShareRecordMapper, T
111 112
         responseBean.addSuccess("核销成功");
112 113
         return responseBean;
113 114
     }
115
+    
116
+    /**
117
+     * 分页获取微信端发起拼团记录
118
+     *
119
+     * @param pageNum
120
+     * @param pageSize
121
+     * @param orgId
122
+     * @param person
123
+     * @return
124
+     */
125
+    @Override
126
+    public ResponseBean getShareRecordList(Integer pageNum, Integer pageSize, Integer orgId, TaPerson person) {
127
+        Page<TaShareRecord> pg = new Page<>(pageNum,pageSize);
128
+        List<TaShareRecord> list = taShareRecordMapper.getShareRecordList(pg,orgId,person.getPersonId());
129
+        pg.setRecords(list);
130
+        return ResponseBean.success(pg);
131
+    }
132
+    
133
+    /**
134
+     * 微信端发起我的拼团
135
+     *
136
+     * @param taShareRecord
137
+     * @param orgId
138
+     * @param person
139
+     * @return
140
+     */
141
+    @Override
142
+    public ResponseBean saveShareRecord(TaShareRecord taShareRecord, Integer orgId, TaPerson person) {
143
+        TaShareActivity taShareActivity = activityMapper.selectTaShareActivityById(taShareRecord.getGroupActivityId());
144
+    
145
+        QueryWrapper<TaShareRecord> queryWrapper = new QueryWrapper<>();
146
+        queryWrapper.eq("person_id", taShareRecord.getPersonId());
147
+        TaShareRecord record = taShareRecordMapper.selectOne(queryWrapper);
148
+    
149
+        if (record != null){
150
+            return ResponseBean.error("您已经发起拼团,请勿再次发起,加入好友的拼团吧",ResponseBean.ERROR_UNAVAILABLE);
151
+        }
152
+        if (person.getPoints() == null || person.getPoints() < taShareActivity.getIntegral()){
153
+            return ResponseBean.error("积分不足",ResponseBean.ERROR_UNAVAILABLE);
154
+        }
155
+        //扣取积分,更新参团人数
156
+        person.setPoints(person.getPoints() - taShareActivity.getIntegral());
157
+        taPersonMapper.updateById(person);
158
+        //保存拼团团长数据
159
+        taShareRecord.setOrgId(orgId);
160
+        taShareRecord.setPersonId(person.getPersonId());
161
+        taShareRecord.setCreateTime(LocalDateTime.now());
162
+        taShareRecord.setStatus(1);
163
+        taShareRecordMapper.insert(taShareRecord);
164
+        return ResponseBean.success(taShareRecord);
165
+    }
114 166
 }

+ 15
- 0
src/main/resources/mapper/TaShareRecordMapper.xml Целия файл

@@ -53,4 +53,19 @@
53 53
             and t.phone = #{phone}
54 54
         </if> order by t.create_time desc
55 55
     </select>
56
+
57
+    <select id="getShareRecordList" resultType="com.huiju.estateagents.entity.TaShareRecord">
58
+        SELECT
59
+            t.*,
60
+            a.activity_name,
61
+            a.main_img,
62
+            a.activity_status,
63
+            a.end_time AS end_date
64
+        FROM
65
+            ta_share_record t
66
+            LEFT JOIN ta_share_activity a ON t.group_activity_id = a.group_acticity_id
67
+        WHERE
68
+            t.org_id = #{orgId}
69
+            AND t.person_id = #{personId}
70
+    </select>
56 71
 </mapper>