123
This commit is contained in:
@@ -4,8 +4,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.AnchorTop;
|
||||
import com.ruoyi.cai.dto.admin.vo.AnchorTopAdminVo;
|
||||
import com.ruoyi.cai.dto.app.vo.AnchorListVo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 主播限时置顶Service接口
|
||||
*
|
||||
@@ -15,4 +18,10 @@ import com.ruoyi.common.core.domain.PageQuery;
|
||||
public interface AnchorTopService extends IService<AnchorTop> {
|
||||
|
||||
Page<AnchorTopAdminVo> pageAdmin(PageQuery pageQuery, AnchorTopAdminVo bo);
|
||||
|
||||
boolean saveOrUpdateAnchorTop(AnchorTopAdminVo bo);
|
||||
|
||||
AnchorTopAdminVo getAnchorTopByUserCode(String usercode);
|
||||
|
||||
List<AnchorListVo> anchorTop(int limit);
|
||||
}
|
||||
|
||||
@@ -1,13 +1,22 @@
|
||||
package com.ruoyi.cai.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.ruoyi.cai.domain.AnchorTop;
|
||||
import com.ruoyi.cai.domain.User;
|
||||
import com.ruoyi.cai.dto.admin.vo.AnchorTopAdminVo;
|
||||
import com.ruoyi.cai.dto.app.vo.AnchorListVo;
|
||||
import com.ruoyi.cai.mapper.AnchorTopMapper;
|
||||
import com.ruoyi.cai.service.AnchorTopService;
|
||||
import com.ruoyi.cai.service.UserService;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.exception.ServiceException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 主播限时置顶Service业务层处理
|
||||
@@ -18,8 +27,68 @@ import org.springframework.stereotype.Service;
|
||||
@Service
|
||||
public class AnchorTopServiceImpl extends ServiceImpl<AnchorTopMapper,AnchorTop> implements AnchorTopService {
|
||||
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
|
||||
@Override
|
||||
public Page<AnchorTopAdminVo> pageAdmin(PageQuery pageQuery, AnchorTopAdminVo bo) {
|
||||
return baseMapper.pageAdmin(pageQuery.build(), bo);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean saveOrUpdateAnchorTop(AnchorTopAdminVo bo) {
|
||||
if(bo.getBeginTime() == null || bo.getEndTime() == null){
|
||||
throw new ServiceException("请填写开始时间和结束时间");
|
||||
}
|
||||
if(bo.getBeginTime().isAfter(bo.getEndTime())){
|
||||
throw new ServiceException("开始时间不能大于结束时间");
|
||||
}
|
||||
User user = userService.getByUserCode(bo.getUsercode());
|
||||
if(user == null || user.getIsAnchor() != 1){
|
||||
throw new ServiceException("用户不存在或不是主播");
|
||||
}
|
||||
if(bo.getSortBy() == null){
|
||||
bo.setSortBy(0L);
|
||||
}
|
||||
AnchorTop one = this.getOne(Wrappers.lambdaQuery(AnchorTop.class).eq(AnchorTop::getUserId, user.getId()).last("limit 1"));
|
||||
AnchorTop anchorTop = new AnchorTop();
|
||||
if(one != null){
|
||||
anchorTop.setId(one.getId());
|
||||
}
|
||||
anchorTop.setUserId(user.getId());
|
||||
anchorTop.setBeginTime(bo.getBeginTime());
|
||||
anchorTop.setEndTime(bo.getEndTime());
|
||||
anchorTop.setSortBy(bo.getSortBy());
|
||||
return this.saveOrUpdate(anchorTop);
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnchorTopAdminVo getAnchorTopByUserCode(String usercode) {
|
||||
User user = userService.getByUserCode(usercode);
|
||||
if(user == null){
|
||||
return null;
|
||||
}
|
||||
AnchorTop one = this.getOne(Wrappers.lambdaQuery(AnchorTop.class).eq(AnchorTop::getUserId, user.getId()).last("limit 1"));
|
||||
if(one != null){
|
||||
AnchorTopAdminVo vo = new AnchorTopAdminVo();
|
||||
vo.setId(one.getId());
|
||||
vo.setUsercode(user.getUsercode());
|
||||
vo.setNickname(user.getNickname());
|
||||
vo.setMobile(user.getMobile());
|
||||
vo.setAge(user.getAge());
|
||||
vo.setGender(user.getGender());
|
||||
vo.setUserId(one.getUserId());
|
||||
vo.setBeginTime(one.getBeginTime());
|
||||
vo.setEndTime(one.getEndTime());
|
||||
vo.setSortBy(one.getSortBy());
|
||||
return vo;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<AnchorListVo> anchorTop(int limit) {
|
||||
return baseMapper.anchorTop(limit);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user