Browse Source

活动报名

魏熙美 5 years ago
parent
commit
30700a4a96

+ 4
- 3
src/main/java/com/huiju/estateagents/controller/TaBuildingDynamicController.java View File

@@ -226,6 +226,8 @@ public class TaBuildingDynamicController extends BaseController {
226 226
     public ResponseBean taActivityDynamicEnlist(@RequestBody TaActivityDynamicEnlist taActivityDynamicEnlist,
227 227
                                                 HttpServletRequest request){
228 228
         String openid = getOpenId(request);
229
+        Integer orgId = getOrgId(request);
230
+
229 231
         List<TaPerson> taPersons = taPersonService.getPersonsByOpenId(openid);
230 232
         if (null == taPersons || taPersons.size() != 1) {
231 233
             return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
@@ -236,7 +238,7 @@ public class TaBuildingDynamicController extends BaseController {
236 238
         // 携带的报名人数(是已经包括自己了),不能超过活动总人数
237 239
 
238 240
         // 当前活动已报名的总人数
239
-        Integer enlistCount = taActivityDynamicEnlistMapper.selectEnlistCount(taActivityDynamicEnlist.getDynamicId(), getOrgId(request));
241
+        Integer enlistCount = taActivityDynamicEnlistMapper.selectEnlistCount(taActivityDynamicEnlist.getDynamicId(), orgId);
240 242
         if ((enlistCount + taActivityDynamicEnlist.getAttendNum()) > buildingDynamic.getEnlistNum().intValue()) {
241 243
             return ResponseBean.error("报名失败,超过活动报名的最大人数!", ResponseBean.ERROR_UNAVAILABLE);
242 244
         }
@@ -257,10 +259,9 @@ public class TaBuildingDynamicController extends BaseController {
257 259
 
258 260
 
259 261
         TaPerson person = taPersons.get(0);
260
-        Integer orgId = getOrgId(request);
261 262
         taActivityDynamicEnlist.setPersonId(person.getPersonId());
262 263
         taActivityDynamicEnlist.setOrgId(orgId);
263
-        ResponseBean  responseBean = iBuildingDynamicService.taActivityDynamicEnlistAdd(taActivityDynamicEnlist);
264
+        ResponseBean  responseBean = iBuildingDynamicService.taActivityDynamicEnlistAdd(taActivityDynamicEnlist, orgId);
264 265
         return responseBean;
265 266
     }
266 267
     

+ 1
- 1
src/main/java/com/huiju/estateagents/service/ITaBuildingDynamicService.java View File

@@ -72,7 +72,7 @@ public interface ITaBuildingDynamicService extends IService<TaBuildingDynamic> {
72 72
      * 报名活动
73 73
      * @return
74 74
      */
75
-    ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist);
75
+    ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist, Integer orgId);
76 76
 
77 77
     /**
78 78
      * 报名列表

+ 16
- 7
src/main/java/com/huiju/estateagents/service/impl/TaBuildingDynamicServiceImpl.java View File

@@ -156,6 +156,9 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
156 156
         Integer enlistCount = taActivityDynamicEnlistMapper.selectEnlistCount(buildingDynamic.getDynamicId(), orgId);
157 157
         buildingDynamic.setEnlisted(enlistCount);
158 158
 
159
+        // 活动海报
160
+        buildingDynamic.setPosters(taPosterService.getPostersForTarget(buildingDynamic.getDynamicId(), CommConstant.POSTER_CONTENT_TYPE_ACTIVITY));
161
+
159 162
         return ResponseBean.success(buildingDynamic);
160 163
     }
161 164
 
@@ -216,23 +219,29 @@ public class TaBuildingDynamicServiceImpl extends ServiceImpl<TaBuildingDynamicM
216 219
     }
217 220
 
218 221
     @Override
219
-    public ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist) {
222
+    public ResponseBean taActivityDynamicEnlistAdd(TaActivityDynamicEnlist taActivityDynamicEnlist, Integer orgId) {
220 223
         ResponseBean responseBean= new ResponseBean<>();
221 224
         // 查询当前活动属于哪个楼盘
222 225
         TaBuildingDynamic taBuildingDynamic= buildingDynamicMapper.selectById(taActivityDynamicEnlist.getDynamicId());
223
-        // 判断当前活动是否满
224
-        QueryWrapper<TaActivityDynamicEnlist> taBuildingDynamicQuery=  new QueryWrapper<>();
225
-        taBuildingDynamicQuery.eq("dynamic_id",taBuildingDynamic.getDynamicId());
226
-        int contActivity = taActivityDynamicEnlistMapper.selectCount(taBuildingDynamicQuery);
227
-        int personNum= Integer.parseInt(null == taBuildingDynamic.getPersonNum()?"0": taBuildingDynamic.getPersonNum());
226
+
227
+        /**
228
+         * 判断当前活动是否满
229
+         */
230
+
231
+        TaBuildingDynamic buildingDynamic = this.getById(taActivityDynamicEnlist.getDynamicId());
232
+        // 已报名人数
233
+        Integer enlistCount = taActivityDynamicEnlistMapper.selectEnlistCount(taActivityDynamicEnlist.getDynamicId(), orgId);
234
+
228 235
         // 当报名人数已满时,活动为已结束
229
-        if (contActivity >= personNum){
236
+        if ((enlistCount + taActivityDynamicEnlist.getAttendNum()) > buildingDynamic.getEnlistNum().intValue()) {
230 237
             taBuildingDynamic.setIsEnlist("2");
231 238
             buildingDynamicMapper.updateById(taBuildingDynamic);
232 239
             responseBean.addError("当前报名人数已满");
233 240
             return responseBean;
234 241
         }
235 242
         // 判断是否报名根据电话号码校验
243
+        QueryWrapper<TaActivityDynamicEnlist> taBuildingDynamicQuery=  new QueryWrapper<>();
244
+        taBuildingDynamicQuery.eq("dynamic_id",taBuildingDynamic.getDynamicId());
236 245
         taBuildingDynamicQuery.eq("phone",taActivityDynamicEnlist.getPhone());
237 246
         TaActivityDynamicEnlist activityDynamicEnlist = taActivityDynamicEnlistMapper.selectOne(taBuildingDynamicQuery);
238 247
         if (null !=activityDynamicEnlist){

+ 1
- 1
src/main/resources/mapper/TaActivityDynamicEnlistMapper.xml View File

@@ -6,6 +6,6 @@
6 6
         </select>
7 7
 
8 8
         <select id="selectEnlistCount" resultType="Integer" >
9
-            select sum(attend_num) from ta_activity_dynamic_enlist where dynamic_id = #{dynamicId} and org_id = #{orgId}
9
+            select ifnull(sum( attend_num ), 0) from ta_activity_dynamic_enlist where dynamic_id = #{dynamicId} and org_id = #{orgId}
10 10
         </select>
11 11
 </mapper>