无关风月
2024-12-31 0c51a577db337520452022d9d6a22b720ef858d4
xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
@@ -124,7 +124,66 @@
    private RemoteUserService remoteUserService;
    @Resource
    private NoticeRecordService noticeRecordService;
    @Resource
    private AppUserBlackService appUserBlackService;
    /**
     * 远程调用 查询当前登陆人拉黑列表
     * @param appUserId
     */
    @PostMapping("/getUserBlackList/{appUserId}")
    public R<List<Long>> getUserBlackList(@PathVariable("appUserId") Long appUserId){
        List<Long> collect = appUserBlackService.lambdaQuery().eq(AppUserBlack::getAppUserId, appUserId).list()
                .stream().map(AppUserBlack::getBlackId).collect(Collectors.toList());
        return R.ok(collect);
    }
    @PostMapping("/blackUser")
    @ApiOperation(value = "取消拉黑功能", tags = "IOS拉黑列表--用于上架")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "被拉黑用户id", name = "appUserId", required = true, dataType = "Long"),
    })
    public R blackUser(Long appUserId) {
        LoginUser loginUser = tokenService.getLoginUser();
        if (loginUser==null){
            return R.tokenError("登录失效");
        }
        AppUserBlack one = appUserBlackService.lambdaQuery().eq(AppUserBlack::getAppUserId, loginUser.getAppUserId())
                .eq(AppUserBlack::getBlackId, appUserId).one();
        if (one==null){
            // 拉黑
            AppUserBlack appUserBlack = new AppUserBlack();
            appUserBlack.setAppUserId(loginUser.getAppUserId());
            appUserBlack.setBlackId(appUserId);
            appUserBlackService.save(appUserBlack);
        }else {
            // 取消拉黑
            appUserBlackService.removeById(one.getId());
        }
        return R.ok();
    }
    @GetMapping("/blackList")
    @ApiOperation(value = "IOS拉黑列表", tags = "IOS拉黑列表--用于上架")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "分页参数,当前页码", name = "pageCurr", required = true, dataType = "Integer"),
            @ApiImplicitParam(value = "分页参数,每页数量", name = "pageSize", required = true, dataType = "Integer")
    })
    public R<PageDTO<AppUser>> blackList(Integer pageCurr, Integer pageSize) {
        LoginUser loginUser = tokenService.getLoginUser();
        if (loginUser==null){
            return R.tokenError("登录失效");
        }
        List<Long> collect = appUserBlackService.lambdaQuery().eq(AppUserBlack::getAppUserId, loginUser.getAppUserId()).list()
                .stream().map(AppUserBlack::getBlackId).collect(Collectors.toList());
        if (collect.isEmpty()){
            collect.add(-1L);
        }
        Page<AppUser> page = appUserService.lambdaQuery().in(AppUser::getId, collect).page(new Page<>(pageCurr, pageSize));
        if (CollUtils.isEmpty(page.getRecords())){
            PageDTO<AppUser> empty = PageDTO.empty(page);
            return R.ok(empty);
        }
        return R.ok(PageDTO.of(page, AppUser.class));
    }
    @PostMapping("/subVipExpireTime/{appUserId}/{type}")
    public void subVipExpireTime(@PathVariable("appUserId") Long appUserId,@PathVariable("type") Integer type){