package com.hollywood.applet.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.hollywood.applet.mapper.TPopularActivityUserMapper;
|
import com.hollywood.applet.service.TPopularActivityService;
|
import com.hollywood.applet.service.TPopularActivityUserService;
|
import com.hollywood.applet.service.TUserService;
|
import com.hollywood.common.basic.ApiResult;
|
import com.hollywood.common.model.TPopularActivity;
|
import com.hollywood.common.model.TPopularActivityUser;
|
import com.hollywood.common.model.TUser;
|
import com.hollywood.common.wxPay.certificate.model.Data;
|
import org.springframework.stereotype.Service;
|
|
import javax.annotation.Resource;
|
import java.time.LocalDate;
|
import java.time.LocalDateTime;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* <p>
|
* 报名活动用户中间表 服务实现类
|
* </p>
|
*
|
* @author xiaochen
|
* @since 2024-02-29
|
*/
|
@Service
|
public class TPopularActivityUserServiceImpl extends ServiceImpl<TPopularActivityUserMapper, TPopularActivityUser> implements TPopularActivityUserService {
|
// @Resource
|
// private TPopularActivityUserService userService;
|
@Resource
|
private TPopularActivityService activityService;
|
@Resource
|
private TUserService tUserService;
|
|
|
@Override
|
public ApiResult join(Long activityId, Long userId) {
|
//判断该活动是否必须会员
|
TPopularActivity ac = activityService.getById(activityId);
|
if (ac.getParticipatingUserType()==2){
|
TUser user = tUserService.getById(userId);
|
if (user.getVipType()==3){
|
return ApiResult.failed("报名失败,当前活动仅限会员参与。");
|
}
|
}
|
//判断是否已经参加活动
|
List<TPopularActivityUser> acusers = this.baseMapper.selectList(new QueryWrapper<TPopularActivityUser>().eq("activityId", activityId).eq("userId", userId));
|
|
if (!acusers.isEmpty()){
|
return ApiResult.failed("报名失败,已报名当前活动,请勿重复报名");
|
}
|
//报名
|
TPopularActivityUser activityUser = new TPopularActivityUser();
|
activityUser.setUserId(userId);
|
activityUser.setActivityId(activityId);
|
activityUser.setApplicationTime(LocalDateTime.now());
|
this.baseMapper.insert(activityUser);
|
return ApiResult.success();
|
}
|
}
|