|
@@ -1,76 +1,37 @@
|
|
|
package com.jeeplus.human.enrollment.enrollmentRegistration.controller;
|
|
|
|
|
|
-import cn.hutool.core.collection.CollectionUtil;
|
|
|
-import cn.hutool.core.util.ObjectUtil;
|
|
|
-import cn.hutool.extra.spring.SpringUtil;
|
|
|
-import com.alibaba.excel.EasyExcel;
|
|
|
-import com.alibaba.excel.ExcelWriter;
|
|
|
-import com.alibaba.excel.write.metadata.WriteSheet;
|
|
|
-import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.google.common.collect.Lists;
|
|
|
-import com.jeeplus.common.TokenProvider;
|
|
|
import com.jeeplus.common.excel.EasyExcelUtils;
|
|
|
+import com.jeeplus.common.excel.ExcelOptions;
|
|
|
+import com.jeeplus.common.excel.annotation.ExportMode;
|
|
|
import com.jeeplus.common.utils.ResponseUtil;
|
|
|
-import com.jeeplus.flowable.feign.IFlowableApi;
|
|
|
import com.jeeplus.human.depart.handover.domain.Handover;
|
|
|
import com.jeeplus.human.depart.handover.service.HandoverService;
|
|
|
import com.jeeplus.human.enrollment.enrollmentRegistration.domain.*;
|
|
|
import com.jeeplus.human.enrollment.enrollmentRegistration.service.*;
|
|
|
+import com.jeeplus.human.enrollment.enrollmentRegistration.service.dto.ExportDTO;
|
|
|
import com.jeeplus.human.enrollment.enrollmentRegistration.service.dto.UserTemplate;
|
|
|
-import com.jeeplus.human.enrollment.enrollmentRegistration.utils.HunamFreemarkerUtil;
|
|
|
-import com.jeeplus.human.enrollment.enrollmentRegistration.utils.IdCardUtil;
|
|
|
-import com.jeeplus.human.practice.register.domain.Registration;
|
|
|
import com.jeeplus.logging.annotation.ApiLog;
|
|
|
import com.jeeplus.logging.constant.enums.LogTypeEnum;
|
|
|
-import com.jeeplus.sys.feign.IOfficeApi;
|
|
|
-import com.jeeplus.sys.feign.IRoleApi;
|
|
|
-import com.jeeplus.sys.feign.IUserApi;
|
|
|
-import com.jeeplus.sys.service.dto.OfficeDTO;
|
|
|
-import com.jeeplus.sys.service.dto.RoleDTO;
|
|
|
-import com.jeeplus.sys.service.dto.UserDTO;
|
|
|
-import com.jeeplus.utils.StringUtils;
|
|
|
+import com.jeeplus.pubmodules.holiday.utils.EasyPoiUtil;
|
|
|
import freemarker.template.Configuration;
|
|
|
import freemarker.template.Template;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
-import io.swagger.models.auth.In;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.apache.pdfbox.pdmodel.PDDocument;
|
|
|
-import org.apache.pdfbox.pdmodel.PDPage;
|
|
|
-import org.apache.pdfbox.pdmodel.PDPageContentStream;
|
|
|
-import org.apache.pdfbox.pdmodel.common.PDRectangle;
|
|
|
-import org.apache.pdfbox.pdmodel.font.PDType0Font;
|
|
|
-import org.apache.pdfbox.pdmodel.graphics.state.RenderingMode;
|
|
|
-import org.apache.pdfbox.util.Matrix;
|
|
|
-import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
|
|
-import org.apache.poi.xwpf.usermodel.XWPFParagraph;
|
|
|
import org.springframework.http.ResponseEntity;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
-import org.springframework.web.multipart.MultipartFile;
|
|
|
-import org.w3c.dom.Document;
|
|
|
-import org.w3c.dom.Node;
|
|
|
-import org.w3c.dom.NodeList;
|
|
|
-import org.xml.sax.InputSource;
|
|
|
-import org.xml.sax.SAXException;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
|
import javax.servlet.ServletOutputStream;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import javax.validation.Valid;
|
|
|
-import javax.xml.parsers.DocumentBuilder;
|
|
|
-import javax.xml.parsers.DocumentBuilderFactory;
|
|
|
import java.io.*;
|
|
|
import java.lang.reflect.Field;
|
|
|
import java.lang.reflect.Type;
|
|
|
-import java.nio.charset.StandardCharsets;
|
|
|
-import java.nio.file.Files;
|
|
|
-import java.nio.file.Path;
|
|
|
-import java.nio.file.Paths;
|
|
|
-import java.nio.file.StandardCopyOption;
|
|
|
-import java.time.LocalDate;
|
|
|
import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -664,4 +625,26 @@ public class EnrollmentRegistrationController {
|
|
|
return flag;
|
|
|
}
|
|
|
|
|
|
+ @ApiLog(value = "导出入职人员数据", type = LogTypeEnum.EXPORT)
|
|
|
+ @GetMapping("export")
|
|
|
+ @ApiOperation(value = "导出入职人员数据")
|
|
|
+ public void exportFile(ExportDTO exportTemplate, Page <ExportDTO> page, ExcelOptions options, HttpServletResponse response) throws Exception {
|
|
|
+ String fileName = options.getFilename();
|
|
|
+ String sheetName = options.getSheetName();
|
|
|
+ List<ExportDTO> result = new ArrayList<>();
|
|
|
+ if ( ExportMode.current.equals ( options.getMode() ) ) {
|
|
|
+ result = service.exportList(page,exportTemplate).getRecords();
|
|
|
+ } else if (ExportMode.selected.equals ( options.getMode() )) {
|
|
|
+ result = service.exportList(page,exportTemplate).getRecords().stream ( ).filter ( item ->
|
|
|
+ options.getSelectIds ( ).contains ( item.getId ( ) )
|
|
|
+ ).collect ( Collectors.toList ( ) );
|
|
|
+ } else {
|
|
|
+ page.setSize (-1);
|
|
|
+ page.setCurrent (0);
|
|
|
+ result = service.exportList(page,exportTemplate).getRecords();
|
|
|
+ }
|
|
|
+ EasyPoiUtil.exportExcel ( result, sheetName, sheetName, ExportDTO.class, fileName, response );
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
}
|