package com.hollywood.manage.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hollywood.common.model.TBanner;
import com.hollywood.common.model.TPopularActivity;
import com.hollywood.manage.dto.PerformerAuditDTO;
import com.hollywood.manage.mapper.TUserMapper;
import com.hollywood.manage.query.TUserQuery;
import com.hollywood.manage.service.TUserService;
import com.hollywood.common.basic.PageInfo;
import com.hollywood.common.model.TUser;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
import java.util.Date;
import java.util.List;
/**
*
* 用户管理 服务实现类
*
*
* @author xiaochen
* @since 2024-03-01
*/
@Service
public class TUserServiceImpl extends ServiceImpl implements TUserService {
@Override
public PageInfo userPageList(TUserQuery query) {
PageInfo pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
List list = this.baseMapper.userPageList(query,pageInfo);
pageInfo.setRecords(list);
return pageInfo;
}
@Override
public int performerAudit(PerformerAuditDTO dto) {
TUser user = this.baseMapper.selectById(dto.getUserId());
user.setAuditStatus(dto.getAuditStatus());
user.setAuditRemark(dto.getAuditRemark());
user.setAuditTime(LocalDateTime.now());
return this.baseMapper.updateById(user);
}
@Override
public int updatePerformerStatus(Long id, Integer performerStatus) {
TUser user = this.baseMapper.selectById(id);
user.setPerformerStatus(performerStatus);
return this.baseMapper.updateById(user);
}
@Override
public int updateStatus(Long id, Integer status) {
TUser user = this.baseMapper.selectById(id);
user.setStatus(status);
return this.baseMapper.updateById(user);
}
@Override
public void updateUserStatus() {
List list = this.baseMapper.selectList(Wrappers.lambdaQuery(TUser.class)
.isNotNull(TUser::getEndTime));
list.forEach(item -> {
if(LocalDateTime.now().isAfter(item.getEndTime())){
// 变为普通用户
item.setVipType(3);
}
});
this.updateBatchById(list);
}
}