cjl
2023-09-26 2573d09a4a305b7cb4ba9ab82daa8a8e2a4cdeb4
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;
    }
}