fix-用户

This commit is contained in:
xl
2024-07-08 19:05:49 +08:00
parent 16851cb9fb
commit 2377bed8fa
16 changed files with 344 additions and 37 deletions

View File

@@ -0,0 +1,56 @@
package com.zbkj.admin.controller.excel;
import com.zbkj.admin.service.AdminUserBannedService;
import com.zbkj.common.model.user.UserBanned;
import com.zbkj.common.model.user.UserReport;
import com.zbkj.common.request.*;
import com.zbkj.common.response.UserCertificationResponse;
import com.zbkj.common.utils.poi.ExcelUtil;
import com.zbkj.service.service.UserCertificationService;
import com.zbkj.service.service.UserReportService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
@Slf4j
@RestController
@RequestMapping("excel/admin/user/certification")
@Api(tags = "用户实名excel控制器")
public class UserExcelController {
@Autowired
private UserCertificationService userCertificationService;
@Autowired
private UserReportService userReportService;
@Autowired
private AdminUserBannedService adminUserBannedService;
@ApiOperation(value = "用户实名导出")
@RequestMapping(value = "/export/list", method = RequestMethod.GET)
public void export(@ModelAttribute CertificationSearchRequest request, HttpServletResponse response) {
List<UserCertificationResponse> list = userCertificationService.getListAll(request);
ExcelUtil.exportExcel(list, "用户实名信息列表", UserCertificationResponse.class, response);
}
@ApiOperation(value = "用户举报导出")
@RequestMapping(value = "/export/report", method = RequestMethod.GET)
public void reportExportUser(@ModelAttribute UserReportSearchRequest request, HttpServletResponse response) {
List<UserReport> list = userReportService.exportReportSearchList(request);
ExcelUtil.exportExcel(list, "用户举报列表", UserReport.class, response);
}
@ApiOperation(value = "禁言列表导出")
@RequestMapping(value = "/export/prohibition", method = RequestMethod.GET)
public void exportProhibition(@Validated UserBannedPageSearchRequest request, HttpServletResponse response) {
List<UserBanned> list = adminUserBannedService.prohibition(request);
ExcelUtil.exportExcel(list, "用户举报列表", UserBanned.class, response);
}
}

View File

@@ -7,6 +7,8 @@ import com.zbkj.common.request.UserBannedPageSearchRequest;
import com.zbkj.common.request.UserBannedRequest;
import com.zbkj.common.request.UserBannedSearchRequest;
import java.util.List;
/**
* AdminUserBannedService 接口
* +----------------------------------------------------------------------
@@ -48,4 +50,6 @@ public interface AdminUserBannedService {
* @return
*/
UserBanned getBandDetailById(Integer id);
List<UserBanned> prohibition(UserBannedPageSearchRequest request);
}

View File

@@ -1,8 +1,10 @@
package com.zbkj.admin.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.github.pagehelper.Page;
@@ -50,11 +52,23 @@ public class AdminUserBannedServiceImpl implements AdminUserBannedService {
@Override
public PageInfo<UserBanned> findPageList(UserBannedPageSearchRequest request) {
List<Integer> idList = CollUtil.newArrayList();
if (StrUtil.isNotBlank(request.getUserNickname())) {
List<User> list = userService.list(new LambdaQueryWrapper<User>().like(User::getNickname, request.getUserNickname()));
if (CollUtil.isNotEmpty(list)) {
idList = list.stream().map(User::getId).collect(Collectors.toList());
}
}
if (request.getUid() != null) {
idList.add(request.getUid());
}
Page<UserBanned> page = PageHelper.startPage(request.getPage(), request.getLimit());
LambdaQueryWrapper<UserBanned> lqw = Wrappers.lambdaQuery();
lqw.eq(ObjectUtil.isNotNull(request.getUid()), UserBanned::getUid, request.getUid());
lqw.in(CollUtil.isNotEmpty(idList), UserBanned::getUid, idList);
lqw.eq(ObjectUtil.isNotNull(request.getLinkId()), UserBanned::getLinkId, request.getLinkId());
lqw.eq(ObjectUtil.isNotNull(request.getType()), UserBanned::getType, request.getType());
lqw.like(StrUtil.isNotBlank(request.getPhone()), UserBanned::getPhone, request.getPhone());
lqw.like(StrUtil.isNotBlank(request.getUserNickname()), UserBanned::getUserNickname, request.getUserNickname());
lqw.orderByDesc(UserBanned::getId);
List<UserBanned> dataList = userBannedService.list(lqw);
if (dataList != null && !dataList.isEmpty()) {
@@ -165,4 +179,37 @@ public class AdminUserBannedServiceImpl implements AdminUserBannedService {
return userBanned;
}
@Override
public List<UserBanned> prohibition(UserBannedPageSearchRequest request) {
List<Integer> idList = CollUtil.newArrayList();
if (StrUtil.isNotBlank(request.getUserNickname())) {
List<User> list = userService.list(new LambdaQueryWrapper<User>().like(User::getNickname, request.getUserNickname()));
if (CollUtil.isNotEmpty(list)) {
idList = list.stream().map(User::getId).collect(Collectors.toList());
}
}
if (request.getUid() != null) {
idList.add(request.getUid());
}
LambdaQueryWrapper<UserBanned> lqw = Wrappers.lambdaQuery();
lqw.in(CollUtil.isNotEmpty(idList), UserBanned::getUid, idList);
lqw.eq(ObjectUtil.isNotNull(request.getLinkId()), UserBanned::getLinkId, request.getLinkId());
lqw.eq(ObjectUtil.isNotNull(request.getType()), UserBanned::getType, request.getType());
lqw.like(StrUtil.isNotBlank(request.getPhone()), UserBanned::getPhone, request.getPhone());
lqw.like(StrUtil.isNotBlank(request.getUserNickname()), UserBanned::getUserNickname, request.getUserNickname());
lqw.orderByDesc(UserBanned::getId);
List<UserBanned> dataList = userBannedService.list(lqw);
if (dataList != null && !dataList.isEmpty()) {
List<Integer> uidList = dataList.stream().map(UserBanned::getUid).collect(Collectors.toList());
Map<Integer, User> userMap = userService.getUidMapList(uidList);
for (UserBanned userBanned : dataList) {
if (userMap.get(userBanned.getUid()) != null) {
userBanned.setUserNickname(userMap.get(userBanned.getUid()).getNickname());
userBanned.setPhone(userMap.get(userBanned.getUid()).getPhone());
}
}
}
return dataList;
}
}