From 9969bea2a8c1eab64c12a51a2d24d65e5b6c0dd0 Mon Sep 17 00:00:00 2001 From: wl <173@qq.com> Date: 星期一, 24 十月 2022 18:12:41 +0800 Subject: [PATCH] 日志导出乱码 日志查询导出 代码重构 --- ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java | 65 ++------------------------------ 1 files changed, 4 insertions(+), 61 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java index 3b468c5..3f79c85 100644 --- a/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java +++ b/ycl-common/src/main/java/com/ycl/controller/user/UmsAdminLogController.java @@ -2,12 +2,10 @@ import com.alibaba.excel.EasyExcel; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ycl.annotation.LogSave; import com.ycl.api.CommonResult; import com.ycl.dto.log.LogQueryParams; -import com.ycl.entity.user.UmsAdmin; import com.ycl.entity.user.UmsAdminLoginLog; import com.ycl.entity.user.vo.UmsAdminLogVO; import com.ycl.service.user.IAdminLoginLogService; @@ -15,15 +13,13 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.SneakyThrows; -import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; -import java.net.URLEncoder; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.List; -import java.util.stream.Collectors; @RestController @RequestMapping("/log_manage") @@ -39,32 +35,7 @@ @ApiOperation(value = "鏌ヨ") @LogSave(operationType = "鏃ュ織绠$悊", contain = "鏌ヨ鏃ュ織淇℃伅") public CommonResult searchLog(LogQueryParams logQueryParams) { - Page<UmsAdminLoginLog> umsAdminLoginLogPage = new Page<>(); - umsAdminLoginLogPage.setCurrent(logQueryParams.getCurrent()); - umsAdminLoginLogPage.setSize(logQueryParams.getSize()); - Page<UmsAdminLoginLog> page = iAdminLoginLogService - .page(umsAdminLoginLogPage, new LambdaQueryWrapper<UmsAdminLoginLog>() - .like(StringUtils.isNotBlank(logQueryParams.getContent()), UmsAdminLoginLog::getContain, logQueryParams.getContent()) - .eq(StringUtils.isNotBlank(logQueryParams.getOperationType()), UmsAdminLoginLog::getOperationType, logQueryParams.getOperationType()) - .eq(StringUtils.isNotBlank(logQueryParams.getPortEquipment()), UmsAdminLoginLog::getUserAgent, logQueryParams.getPortEquipment()) - .eq(logQueryParams.getId() != null, UmsAdminLoginLog::getAdminId, logQueryParams.getId()) - .between(StringUtils.isNotBlank(logQueryParams.getStartTime()) && StringUtils.isNotBlank(logQueryParams.getEndTime()), UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime()) - .orderBy(logQueryParams.getSort() != null && logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) - .orderBy(logQueryParams.getSort() != null && logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)); - List<UmsAdminLogVO> umsAdminLogVOList = page.getRecords().stream() - .map(item -> { - UmsAdminLogVO umsAdminlogVO = new UmsAdminLogVO(); - BeanUtils.copyProperties(item, umsAdminlogVO); - umsAdminlogVO.setAdminId(umsAdminService - .getOne(new LambdaQueryWrapper<UmsAdmin>() - .eq(UmsAdmin::getId, item.getAdminId())) - .getUsername()); - return umsAdminlogVO; - }).collect(Collectors.toList()); - Page<UmsAdminLogVO> umsAdminLogVOPage = new Page<>(); - BeanUtils.copyProperties(page, umsAdminLogVOPage); - umsAdminLogVOPage.setRecords(umsAdminLogVOList); - return CommonResult.success(umsAdminLogVOPage); + return CommonResult.success(iAdminLoginLogService.pageList(logQueryParams)); } @DeleteMapping("/deletion_batch") @@ -92,40 +63,12 @@ @SneakyThrows @LogSave(operationType = "鏃ュ織绠$悊", contain = "瀵煎嚭鏃ュ織") public void export(HttpServletResponse response, LogQueryParams logQueryParams) { - Page<UmsAdminLoginLog> umsAdminLoginLogPage = new Page<>(); - umsAdminLoginLogPage.setCurrent(logQueryParams.getCurrent()); - umsAdminLoginLogPage.setSize(logQueryParams.getSize()); - StringBuilder fileName = new StringBuilder(); - fileName.append(LocalDateTime.now().getYear()) - .append("-") - .append(LocalDateTime.now().getMonthValue()) - .append("-") - .append(LocalDateTime.now().getDayOfMonth()) - .append("鏃ュ織鏁版嵁"); response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("utf-8"); - String file = URLEncoder.encode(fileName.toString(), "UTF-8").replaceAll("\\+", "%20"); - response.setHeader("Content-disposition", "attachment;filename=" + file + ".xlsx"); + response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")) + ".xlsx"); EasyExcel .write(response.getOutputStream(), UmsAdminLogVO.class) .sheet("鏁版嵁") - .doWrite(iAdminLoginLogService - .page(umsAdminLoginLogPage, new LambdaQueryWrapper<UmsAdminLoginLog>() - .like(StringUtils.isNotBlank(logQueryParams.getContent()), UmsAdminLoginLog::getContain, logQueryParams.getContent()) - .eq(StringUtils.isNotBlank(logQueryParams.getOperationType()), UmsAdminLoginLog::getOperationType, logQueryParams.getOperationType()) - .between(StringUtils.isNotBlank(logQueryParams.getStartTime()) && StringUtils.isNotBlank(logQueryParams.getEndTime()), UmsAdminLoginLog::getCreateTime, logQueryParams.getStartTime(), logQueryParams.getEndTime()) - .orderBy(logQueryParams.getSort() != null && logQueryParams.getSort() == 0, true, UmsAdminLoginLog::getCreateTime) - .orderBy(logQueryParams.getSort() != null && logQueryParams.getSort() == 1, false, UmsAdminLoginLog::getCreateTime)) - .getRecords() - .stream() - .map(item -> { - UmsAdminLogVO umsAdminlogVO = new UmsAdminLogVO(); - BeanUtils.copyProperties(item, umsAdminlogVO); - umsAdminlogVO.setAdminId(umsAdminService - .getOne(new LambdaQueryWrapper<UmsAdmin>() - .eq(UmsAdmin::getId, item.getAdminId())) - .getUsername()); - return umsAdminlogVO; - }).collect(Collectors.toList())); + .doWrite(iAdminLoginLogService.pageList(logQueryParams).getRecords()); } } -- Gitblit v1.8.0