From 65753426df35e69a24d3f91e92e443c42deaa594 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Tue, 1 Dec 2020 13:56:39 +0800 Subject: [PATCH] fix --- pom.xml | 2 +- .../controller/AssessManagerController.java | 5 +- .../controller/ChartController.java | 15 +-- .../controller/ExportController.java | 107 ++++++++++++++++++ .../mapper/generator/StaffOccupationDao.xml | 2 +- 5 files changed, 112 insertions(+), 19 deletions(-) create mode 100644 src/main/java/com/lz/modules/performance/controller/ExportController.java diff --git a/pom.xml b/pom.xml index 1dce0895..5fc6ee94 100644 --- a/pom.xml +++ b/pom.xml @@ -37,7 +37,7 @@ 2.9.9 2.8.5 1.2.60 - 4.1.1 + 5.2.3 1.18.4 3.17 diff --git a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java index ae350613..2dbee8f0 100644 --- a/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java +++ b/src/main/java/com/lz/modules/performance/controller/AssessManagerController.java @@ -6,6 +6,7 @@ import com.lz.common.utils.StringUtil; import com.lz.modules.app.dto.StaffSimpleDto; import com.lz.modules.flow.dao.FlowStartMapper; import com.lz.modules.flow.entity.FlowStart; +import com.lz.modules.flow.service.EvaluationStartStaffService; import com.lz.modules.performance.req.AssessChangeReq; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.AssessDetailReq; @@ -47,6 +48,7 @@ public class AssessManagerController extends AbstractController{ private ChartResultService chartResultService; + @PostMapping("assess/manager/list") @ApiOperation("获取考核列表") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = AssessManagerListRes.class)}) @@ -115,9 +117,6 @@ public class AssessManagerController extends AbstractController{ } - - - @GetMapping("assess/manager/delete") @ApiOperation("删除考核任务") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = ChartStatisticalRes.class)}) diff --git a/src/main/java/com/lz/modules/performance/controller/ChartController.java b/src/main/java/com/lz/modules/performance/controller/ChartController.java index 6c2c1c33..344ca94f 100644 --- a/src/main/java/com/lz/modules/performance/controller/ChartController.java +++ b/src/main/java/com/lz/modules/performance/controller/ChartController.java @@ -1,16 +1,9 @@ package com.lz.modules.performance.controller; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.google.common.collect.Lists; import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; -import com.lz.common.utils.StringUtil; -import com.lz.modules.app.enums.ResultRecordStatusEnum; import com.lz.modules.app.resp.OwnResultResp; -import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.dao.FlowStartMapper; -import com.lz.modules.flow.entity.FlowStart; -import com.lz.modules.flow.service.FlowStartService; import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.req.ChartStartsReq; import com.lz.modules.performance.req.OwnResultReq; @@ -19,17 +12,13 @@ import com.lz.modules.performance.res.ChartStatisticalRes; import com.lz.modules.performance.res.ResultRankListRes; import com.lz.modules.performance.service.ChartResultService; import com.lz.modules.sys.controller.AbstractController; -import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; import io.swagger.annotations.*; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import java.util.*; -import java.util.concurrent.*; -import java.util.function.Function; -import java.util.function.Supplier; +import java.util.List; /** * @Author: djc @@ -110,6 +99,4 @@ public class ChartController extends AbstractController{ } - - } diff --git a/src/main/java/com/lz/modules/performance/controller/ExportController.java b/src/main/java/com/lz/modules/performance/controller/ExportController.java new file mode 100644 index 00000000..23262d09 --- /dev/null +++ b/src/main/java/com/lz/modules/performance/controller/ExportController.java @@ -0,0 +1,107 @@ +package com.lz.modules.performance.controller; + +import cn.hutool.core.io.IoUtil; +import cn.hutool.poi.excel.ExcelUtil; +import cn.hutool.poi.excel.ExcelWriter; +import com.lz.common.utils.PageUtils; +import com.lz.common.utils.R; +import com.lz.common.utils.StringUtil; +import com.lz.modules.performance.req.ChartResultReq; +import com.lz.modules.performance.service.ChartResultService; +import com.lz.modules.sys.entity.app.ResultRecord; +import io.swagger.annotations.ApiParam; +import io.swagger.models.auth.In; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.ServletOutputStream; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.List; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/12/1 10:26 + */ +@RestController +@RequestMapping("/performance") +@Slf4j +public class ExportController { + @Autowired + private ChartResultService chartResultService; + + + @GetMapping("/export/levelDetail") + public R levelDetail(@RequestBody @ApiParam(name = "body",value = "body请求体",required = true) ChartResultReq req,HttpServletResponse response){ + PageUtils pageUtils; + try { + //Long userId = getUserId(); + Long userId = 313L; + req.setLoginUserId(userId); + pageUtils = chartResultService.selectChartDetailList(req); + } catch (Exception e) { + log.error("获取报表等级详情数据异常" ,e); + return R.error(e.getMessage()); + } + List list = pageUtils.getList(); + ExcelWriter writer = ExcelUtil.getWriter(); + ResultRecord resultRecord = new ResultRecord(); + + writer.addHeaderAlias("name", "姓名"); + writer.addHeaderAlias("age", "年龄"); + writer.merge(1, "员工信息表"); + writer.write(list, true); + response.setContentType("application/vnd.ms-excel;charset=utf-8"); + String name = null; + try { + //name = new String("XXX国际贸易公司".getBytes("UTF-8")); + name = new String("XXX国际贸易公司".getBytes("UTF-8"),"utf-8"); + System.out.println("-----" + name); + } catch (UnsupportedEncodingException e) { + e.printStackTrace(); + } + response.setHeader("Content-Disposition", "attachment;filename=" + name + ".xls"); + ServletOutputStream out = null; + try { + out = response.getOutputStream(); + writer.flush(out, true); + } catch (IOException e) { + e.printStackTrace(); + } finally { + writer.close(); + } + IoUtil.close(out); + return R.ok().put("data",pageUtils); + + + } + + + + private void buildData(Class data,List tags,ExcelWriter writer){ + if(data == null || CollectionUtils.isEmpty(tags)){ + log.info("导出excel-实体属性或数据为空!"); + return; + } + Field[] fields = data.getDeclaredFields(); + if(fields.length != tags.size()){ + log.info("导出excel-实体属性与数据大小不一致!"); + return; + } + System.out.println(fields.length); + for(int i=0; i