init
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.cai.controller.app;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.cai.dto.app.query.BlackQuery;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||
import com.ruoyi.cai.service.CaiUserBlacklistService;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/user/black")
|
||||
@Tag(name = "用户黑名单接口")
|
||||
public class UserBlackAppController {
|
||||
|
||||
@Autowired
|
||||
private CaiUserBlacklistService userBlacklistService;
|
||||
|
||||
@GetMapping("page")
|
||||
@Operation(summary = "用户黑名单查询")
|
||||
public TableDataInfo<UserListVo> page(PageQuery pageQuery){
|
||||
Page<UserListVo> page = userBlacklistService.pageApp(pageQuery, LoginHelper.getUserId());
|
||||
return TableDataInfo.build(page);
|
||||
}
|
||||
|
||||
@PostMapping("black")
|
||||
@Operation(summary = "拉黑操作 如果已经给拉黑则放开")
|
||||
public R<Boolean> black(@RequestBody BlackQuery query){
|
||||
Long userId = LoginHelper.getUserId();
|
||||
boolean b = userBlacklistService.black(userId,query.getBlackUserId(),query.getActionType());
|
||||
return R.ok(b);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.ruoyi.cai.dto.app.query;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
@Schema(description = "拉黑入参")
|
||||
public class BlackQuery {
|
||||
@Schema(description = "拉黑的用户的ID")
|
||||
private Long blackUserId;
|
||||
@Schema(description = "1-拉黑 2-取消拉黑")
|
||||
private Integer actionType;
|
||||
}
|
||||
@@ -1,7 +1,10 @@
|
||||
package com.ruoyi.cai.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.cai.domain.CaiUserBlacklist;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
* 用户黑名单Mapper接口
|
||||
@@ -11,4 +14,5 @@ import com.ruoyi.cai.domain.CaiUserBlacklist;
|
||||
*/
|
||||
public interface CaiUserBlacklistMapper extends BaseMapper< CaiUserBlacklist> {
|
||||
|
||||
Page<UserListVo> pageApp(@Param("build") Page<Object> build, @Param("userId") Long userId);
|
||||
}
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
package com.ruoyi.cai.service;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
import com.ruoyi.cai.domain.CaiUserBlacklist;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
|
||||
/**
|
||||
* 用户黑名单Service接口
|
||||
@@ -11,4 +14,11 @@ import com.ruoyi.cai.domain.CaiUserBlacklist;
|
||||
*/
|
||||
public interface CaiUserBlacklistService extends IService<CaiUserBlacklist> {
|
||||
|
||||
/**
|
||||
*
|
||||
* @param actionType 1-拉黑 2-取消拉黑
|
||||
*/
|
||||
boolean black(Long userId, Long blackUserId,Integer actionType);
|
||||
|
||||
Page<UserListVo> pageApp(PageQuery pageQuery, Long userId);
|
||||
}
|
||||
|
||||
@@ -1,11 +1,17 @@
|
||||
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.CaiUserBlacklist;
|
||||
import com.ruoyi.cai.dto.app.vo.user.UserListVo;
|
||||
import com.ruoyi.cai.mapper.CaiUserBlacklistMapper;
|
||||
import com.ruoyi.cai.service.CaiUserBlacklistService;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户黑名单Service业务层处理
|
||||
*
|
||||
@@ -14,4 +20,26 @@ import org.springframework.stereotype.Service;
|
||||
*/
|
||||
@Service
|
||||
public class CaiUserBlacklistServiceImpl extends ServiceImpl<CaiUserBlacklistMapper,CaiUserBlacklist> implements CaiUserBlacklistService {
|
||||
@Override
|
||||
public boolean black(Long userId, Long blackUserId,Integer actionType) {
|
||||
if(userId.equals(blackUserId)){
|
||||
throw new SecurityException("不能对自己操作哦");
|
||||
}
|
||||
if(actionType == 1){ // 拉黑
|
||||
CaiUserBlacklist userBlacklist = new CaiUserBlacklist();
|
||||
userBlacklist.setUserId(userId);
|
||||
userBlacklist.setBlackUid(blackUserId);
|
||||
this.save(userBlacklist);
|
||||
}else { // 取消拉黑
|
||||
this.remove(Wrappers.lambdaQuery(CaiUserBlacklist.class)
|
||||
.eq(CaiUserBlacklist::getUserId,userId)
|
||||
.eq(CaiUserBlacklist::getBlackUid,blackUserId));
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Page<UserListVo> pageApp(PageQuery pageQuery, Long userId) {
|
||||
return baseMapper.pageApp(pageQuery.build(),userId);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user