|
|
@ -29,6 +29,7 @@ import com.epmet.project.dto.result.ProjectCategoryResultDTO; |
|
|
|
import lombok.extern.slf4j.Slf4j; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
|
import org.apache.poi.ss.usermodel.Workbook; |
|
|
|
import org.jetbrains.annotations.NotNull; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.web.bind.annotation.*; |
|
|
|
|
|
|
@ -195,20 +196,13 @@ public class ScreenProjectController { |
|
|
|
* @date 2021/11/4 3:38 下午 |
|
|
|
*/ |
|
|
|
@PostMapping("selectprojectcategory/export") |
|
|
|
public void selectProjectCategoryExport(@RequestBody ProjectCategoryFormDTO formDTO, /*@LoginUser*/ TokenDto tokenDto, HttpServletResponse response) throws Exception { |
|
|
|
tokenDto.setUserId("36bc0fb38565ecdebf8ab9b476b44548"); |
|
|
|
tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); |
|
|
|
ValidatorUtils.validateEntity(formDTO, ProjectCategoryFormDTO.ProjectCategoryForm.class); |
|
|
|
public void selectProjectCategoryExport(@RequestBody ProjectCategoryFormDTO formDTO, @LoginUser TokenDto tokenDto, HttpServletResponse response) throws Exception { |
|
|
|
//tokenDto.setUserId("36bc0fb38565ecdebf8ab9b476b44548");
|
|
|
|
//tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc");
|
|
|
|
ValidatorUtils.validateEntity(formDTO, ProjectCategoryFormDTO.CategoryProjectExportForm.class); |
|
|
|
List<ProjectCategoryResultDTO> data = screenProjectService.selectProjectCategory(formDTO, tokenDto); |
|
|
|
String templatePath = "excel/project_category_temp.xlsx"; |
|
|
|
|
|
|
|
StringBuilder dateBuilder = new StringBuilder(); |
|
|
|
if (StringUtils.isNotBlank(formDTO.getStartTime())){ |
|
|
|
dateBuilder.append(formDTO.getStartTime()).append(StrConstant.HYPHEN); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(formDTO.getEndTime())){ |
|
|
|
dateBuilder.append(formDTO.getEndTime()); |
|
|
|
} |
|
|
|
List<ProjectCategoryResultDTO> resultDTOList = new ArrayList<>(); |
|
|
|
data.forEach(e->{ |
|
|
|
resultDTOList.add(e); |
|
|
@ -219,7 +213,7 @@ public class ScreenProjectController { |
|
|
|
Map<String,Object> mapData = new HashMap<>(); |
|
|
|
mapData.put("list",resultDTOList); |
|
|
|
mapData.put("orgName",staffInfo.getAgencyName()); |
|
|
|
mapData.put("exportDate",dateBuilder.toString()); |
|
|
|
mapData.put("exportDate",getExportDateStr(formDTO.getStartTime(),formDTO.getEndTime())); |
|
|
|
Workbook workbook = ExcelExportUtil.exportExcel(new TemplateExportParams(templatePath), mapData); |
|
|
|
response.setHeader("content-Type", "application/vnd.ms-excel"); |
|
|
|
response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode("项目分类统计.xls", "UTF-8")); |
|
|
@ -239,4 +233,50 @@ public class ScreenProjectController { |
|
|
|
return new Result<PageCategoryProjectListResultDTO>().ok(screenProjectService.selectCategoryProjectList(formDTO,tokenDto)); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @Description 【项目分类】查询项目分类 |
|
|
|
* @param formDTO |
|
|
|
* @param tokenDto |
|
|
|
* @author zxc |
|
|
|
* @date 2021/11/4 3:38 下午 |
|
|
|
*/ |
|
|
|
@PostMapping("selectcategoryprojectlist/export") |
|
|
|
public void selectProjectCategoryExport(@RequestBody CategoryProjectListFormDTO formDTO,/*@LoginUser*/ TokenDto tokenDto, HttpServletResponse response) throws Exception { |
|
|
|
tokenDto.setUserId("36bc0fb38565ecdebf8ab9b476b44548"); |
|
|
|
tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); |
|
|
|
formDTO.setIsPage(false); |
|
|
|
formDTO.setStatus("all"); |
|
|
|
formDTO.setCategoryCode("0102"); |
|
|
|
ValidatorUtils.validateEntity(formDTO, ProjectCategoryFormDTO.CategoryProjectExportForm.class); |
|
|
|
PageCategoryProjectListResultDTO data = screenProjectService.selectCategoryProjectList(formDTO,tokenDto); |
|
|
|
String templatePath = "excel/project_temp.xlsx"; |
|
|
|
|
|
|
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(tokenDto.getCustomerId(), tokenDto.getUserId()); |
|
|
|
Map<String,Object> mapData = new HashMap<>(); |
|
|
|
mapData.put("list",data.getList()); |
|
|
|
mapData.put("orgName",staffInfo.getAgencyName()); |
|
|
|
mapData.put("exportDate",getExportDateStr(formDTO.getStartTime(),formDTO.getEndTime())); |
|
|
|
mapData.put("categoryName", formDTO.getCategoryName()); |
|
|
|
if (StringUtils.isNotBlank(formDTO.getParentCategoryName())){ |
|
|
|
mapData.put("categoryName", formDTO.getParentCategoryName().concat(StrConstant.HYPHEN).concat(formDTO.getCategoryName())); |
|
|
|
} |
|
|
|
|
|
|
|
Workbook workbook = ExcelExportUtil.exportExcel(new TemplateExportParams(templatePath), mapData); |
|
|
|
response.setHeader("content-Type", "application/vnd.ms-excel"); |
|
|
|
response.addHeader("Content-Disposition", "attachment;fileName=" + URLEncoder.encode("项目统计.xls", "UTF-8")); |
|
|
|
workbook.write(response.getOutputStream()); |
|
|
|
} |
|
|
|
|
|
|
|
@NotNull |
|
|
|
private String getExportDateStr(String startTime,String endTime) { |
|
|
|
StringBuilder dateBuilder = new StringBuilder(); |
|
|
|
if (StringUtils.isNotBlank(startTime)) { |
|
|
|
dateBuilder.append(startTime).append(StrConstant.HYPHEN); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(endTime)) { |
|
|
|
dateBuilder.append(endTime); |
|
|
|
} |
|
|
|
return dateBuilder.toString(); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|