SAMS/src/main/java/com/bruce/sams/service/impl/ClubUserServiceImpl.java

68 lines
1.9 KiB
Java

package com.bruce.sams.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.bruce.sams.domain.sms.ClubUser;
import com.bruce.sams.service.ClubUserService;
import com.bruce.sams.mapper.ClubUserMapper;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
/**
* @author bruce
* @description 针对表【sms_club_user(社团用户关系表)】的数据库操作Service实现
* @createDate 2025-02-19 22:11:10
*/
@Service
public class ClubUserServiceImpl extends ServiceImpl<ClubUserMapper, ClubUser> implements ClubUserService {
/**
* 添加社团成员(社团管理员审批)
*
* @param clubId 社团ID
* @param userId 用户ID
*/
@Override
public void addMember(Long clubId, Long userId) {
ClubUser clubUser = new ClubUser();
clubUser.setClubId(clubId);
clubUser.setUserId(userId);
clubUser.setIsActive(1);
clubUser.setJoinDate(new Date(System.currentTimeMillis())); // 记录加入时间
this.save(clubUser);
}
/**
* 移除社团成员(社团管理员 / 校级管理员)
*
* @param clubId 社团ID
* @param userId 用户ID
*/
@Override
public void removeMember(Long clubId, Long userId) {
LambdaQueryWrapper<ClubUser> query = new LambdaQueryWrapper<>();
query.eq(ClubUser::getClubId, clubId).eq(ClubUser::getUserId, userId);
this.remove(query);
}
/**
* 获取社团成员列表(根据权限)
*
* @param clubId 社团ID
* @return 成员列表
*/
@Override
public List<ClubUser> listMembers(Long clubId) {
LambdaQueryWrapper<ClubUser> query = new LambdaQueryWrapper<>();
query.eq(ClubUser::getClubId, clubId);
return this.list(query);
}
}