From 2573d09a4a305b7cb4ba9ab82daa8a8e2a4cdeb4 Mon Sep 17 00:00:00 2001 From: cjl <276999030@qq.com> Date: Tue, 26 Sep 2023 20:02:25 +0800 Subject: [PATCH] feat:补充提交 --- screen-api/src/main/java/com/moral/api/controller/AllocationController.java | 83 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 83 insertions(+), 0 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/controller/AllocationController.java b/screen-api/src/main/java/com/moral/api/controller/AllocationController.java index 32958bf..67e7547 100644 --- a/screen-api/src/main/java/com/moral/api/controller/AllocationController.java +++ b/screen-api/src/main/java/com/moral/api/controller/AllocationController.java @@ -1,6 +1,12 @@ package com.moral.api.controller; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections4.CollectionUtils; +import org.aspectj.apache.bcel.generic.RET; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.moral.api.pojo.ext.allocation.AllocationExt; import com.moral.api.pojo.ext.allocation.AllocationPageExt; @@ -13,14 +19,24 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.lang.reflect.Field; +import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + import com.moral.api.entity.Allocation; import com.moral.api.entity.ResponsibilityUnit; +import com.moral.api.pojo.dto.allocation.AllocationUnitViewDto; import com.moral.api.service.AllocationService; +import com.moral.api.utils.EasyExcelUtils; +import com.moral.api.utils.NoModelWriteData; import com.moral.constant.Constants; import com.moral.constant.ResultMessage; +import com.moral.util.WebUtils; import javax.validation.Valid; @@ -153,4 +169,71 @@ return allocationService.applyFor(allocationExtensionAddCond) ? ResultMessage.ok() : ResultMessage.fail(); } + + /** + * ������������������ + * @return + */ + @GetMapping("selectUnitView") + public ResultMessage selectUnitView(HttpServletRequest request){ + Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); + Map<String, Object> map1 = allocationService.selectUnitView(params); + return ResultMessage.ok(map1); + } + + + @GetMapping("unitExel") + public void unitExel(HttpServletResponse response,HttpServletRequest request){ + Map<String, Object> params = WebUtils.getParametersStartingWith(request, null); + //������������ + Map<String, Object> map1 = allocationService.selectUnitView(params); + List<AllocationUnitViewDto> unitView = (List<AllocationUnitViewDto>) map1.get("unitView"); + + + ArrayList<Map<String, Object>> mapArrayList = new ArrayList<>(); + for (AllocationUnitViewDto allocationUnitViewDto : unitView) { + Map<String, Object> map = entityToMap(allocationUnitViewDto); + mapArrayList.add(map); + } + if (CollectionUtils.isEmpty(mapArrayList)) { + return; + } + Map<String, Object> map = mapArrayList.get(0); + List<String> list = new ArrayList<>(); + for (String key : map.keySet()) { + list.add(key); + } + String[] s2 = new String[list.size()]; + list.toArray(s2); + NoModelWriteData d = new NoModelWriteData(); + d.setFileName("������������"); + d.setHeadMap(s2); + d.setDataStrMap(s2); + d.setDataList(mapArrayList); + try { + EasyExcelUtils easyExcelUtils = new EasyExcelUtils(); + easyExcelUtils.noModleWrite(d, response); + } catch (Exception e) { + int i = 0; + } + } + + /** + ������������Map + */ + public static Map<String, Object> entityToMap(Object object) { + Map<String, Object> map = new HashMap<>(); + for (Field field : object.getClass().getDeclaredFields()) { + try { + boolean flag = field.isAccessible(); + field.setAccessible(true); + Object o = field.get(object); + map.put(field.getName(), o); + field.setAccessible(flag); + } catch (Exception e) { + e.printStackTrace(); + } + } + return map; + } } -- Gitblit v1.8.0