fzzy-igdss-web/src/main/java/com/fzzy/common/ExportController.java
@@ -1,7 +1,10 @@
package com.fzzy.common;
import com.fzzy.common.manager.ExportManager;
import com.fzzy.igds.*;
import com.fzzy.igds.CompanyPR;
import com.fzzy.igds.DepotPR;
import com.fzzy.igds.DeptPR;
import com.fzzy.igds.ReportInoutPR;
import com.fzzy.igds.constant.FoodVariety;
import com.fzzy.igds.data.*;
import com.fzzy.igds.domain.Company;
@@ -19,17 +22,15 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.*;
import java.util.stream.Collectors;
/**
 * @Description  数据导出入口
 * @Description 数据导出入口
 * @Author CZT
 * @Date 2025/12/29 10:32
 */
@@ -101,6 +102,7 @@
    /**
     * 出入库报表导出
     *
     * @return
     */
    @RequestMapping("/inout-excel")
@@ -112,10 +114,29 @@
        List<InoutRecord> list = new ArrayList<>();
        //获取分库编码对应的分库名称
        String deptName = "";
        SysDept subDept = sysDeptService.getCacheDept(null, ContextUtil.subDeptId(null));
        String deptId= ContextUtil.subDeptId(null);
        if (StringUtils.isNotBlank(param.getDeptId())){
            deptId=param.getDeptId();
        }
        SysDept subDept = sysDeptService.getCacheDept(null,deptId);
        if (null != subDept) {
            deptName = subDept.getDeptName();
        }
        String exportTimeDesc = "";
        String exportCreateUser = "";
        Date exportCreateTime = new Date();
        if (StringUtils.isNotEmpty(param.getTimeDesc())) {
            exportTimeDesc = param.getTimeDesc();
        }
        if (StringUtils.isNotEmpty(param.getCreateUser())) {
            exportCreateUser = param.getCreateUser();
        }
        if (param.getCreateTime() != null) {
            exportCreateTime = param.getCreateTime();
        }
        //创建收储公司ID到名称的映射
        Map<String, String> companyMap = Optional.ofNullable(companyPR.getData())
                .orElse(new ArrayList<>())
@@ -127,7 +148,7 @@
                .stream()
                .collect(Collectors.toMap(Dept::getId, Dept::getKqmc, (key1, key2) -> key2));
        // 创建仓库ID到名称的映射
        Map<String, String> depotMap = Optional.ofNullable(depotPR.getData(null))
        Map<String, String> depotMap = Optional.ofNullable(depotPR.getData(ContextUtil.getCompanyId()))
                .orElse(new ArrayList<>())
                .stream()
                .collect(Collectors.toMap(Depot::getId, Depot::getName, (key1, key2) -> key2));
@@ -148,18 +169,18 @@
                //粮食品种映射
                String foodVarietyNameValue = FoodVariety.getMsg(record.getFoodVariety());
                export.setFoodVariety(foodVarietyNameValue != null ? foodVarietyNameValue : "");
                export.setFullWeight(df.format(record.getFullWeight())+"KG");
                export.setEmptyWeight(df.format(record.getEmptyWeight())+"KG");
                export.setNetWeight(df.format(record.getNetWeight())+"KG");
                export.setSettleWeight(df.format(record.getSettleWeight())+"KG");
                export.setRecordWeight(df.format(record.getRecordWeight())+"KG");
                export.setFullWeight(df.format(record.getFullWeight()) + "KG");
                export.setEmptyWeight(df.format(record.getEmptyWeight()) + "KG");
                export.setNetWeight(df.format(record.getNetWeight()) + "KG");
                export.setSettleWeight(df.format(record.getSettleWeight()) + "KG");
                export.setRecordWeight(df.format(record.getRecordWeight()) + "KG");
                export.setCompleteTime(record.getCompleteTime());
                export.setDeOther(df.format(record.getDeOther())+"KG");
                export.setDeOther(df.format(record.getDeOther()) + "KG");
                export.setUpdateLog(record.getUpdateLog());
                exportList.add(export);
            }
            ExcelUtil<InoutRecordInExport> util = new ExcelUtil<InoutRecordInExport>(InoutRecordInExport.class);
            return util.exportExcel(exportList, sheetName, deptName);
            return util.exportExcel(exportList, sheetName, deptName, exportTimeDesc, exportCreateUser, exportCreateTime);
        }
        if (StringUtils.isNotEmpty(param.getType()) && "OUT".equals(param.getType())) {
@@ -177,18 +198,18 @@
                //粮食品种映射
                String foodVarietyNameValue = FoodVariety.getMsg(record.getFoodVariety());
                export.setFoodVariety(foodVarietyNameValue != null ? foodVarietyNameValue : "");
                export.setFullWeight(df.format(record.getFullWeight())+"KG");
                export.setEmptyWeight(df.format(record.getEmptyWeight())+"KG");
                export.setNetWeight(df.format(record.getNetWeight())+"KG");
                export.setSettleWeight(df.format(record.getSettleWeight())+"KG");
                export.setRecordWeight(df.format(record.getRecordWeight())+"KG");
                export.setFullWeight(df.format(record.getFullWeight()) + "KG");
                export.setEmptyWeight(df.format(record.getEmptyWeight()) + "KG");
                export.setNetWeight(df.format(record.getNetWeight()) + "KG");
                export.setSettleWeight(df.format(record.getSettleWeight()) + "KG");
                export.setRecordWeight(df.format(record.getRecordWeight()) + "KG");
                export.setCompleteTime(record.getCompleteTime());
                export.setDeOther(df.format(record.getDeOther())+"KG");
                export.setDeOther(df.format(record.getDeOther()) + "KG");
                export.setUpdateLog(record.getUpdateLog());
                exportList.add(export);
            }
            ExcelUtil<InoutRecordOutExport> util = new ExcelUtil<InoutRecordOutExport>(InoutRecordOutExport.class);
            return util.exportExcel(exportList, sheetName, deptName);
            return util.exportExcel(exportList, sheetName, deptName, exportTimeDesc, exportCreateUser, exportCreateTime);
        }
        if (StringUtils.isNotEmpty(param.getType()) && "IN_DETAIL".equals(param.getType())) {
@@ -213,14 +234,14 @@
                //粮食品种映射
                String foodVarietyNameValue = FoodVariety.getMsg(record.getFoodVariety());
                export.setFoodVariety(foodVarietyNameValue != null ? foodVarietyNameValue : "");
                export.setSettleWeight(df.format(record.getSettleWeight())+"KG");
                export.setRecordWeight(df.format(record.getRecordWeight())+"KG");
                export.setSettleWeight(df.format(record.getSettleWeight()) + "KG");
                export.setRecordWeight(df.format(record.getRecordWeight()) + "KG");
                export.setCompleteTime(record.getCompleteTime());
                export.setUpdateLog(record.getUpdateLog());
                exportList.add(export);
            }
            ExcelUtil<InoutRecordDetailInExport> util = new ExcelUtil<InoutRecordDetailInExport>(InoutRecordDetailInExport.class);
            return util.exportExcel(exportList, sheetName, deptName);
            return util.exportExcel(exportList, sheetName, deptName, exportTimeDesc, exportCreateUser, exportCreateTime);
        }
        if (StringUtils.isNotEmpty(param.getType()) && "OUT_DETAIL".equals(param.getType())) {
@@ -245,20 +266,21 @@
                //粮食品种映射
                String foodVarietyNameValue = FoodVariety.getMsg(record.getFoodVariety());
                export.setFoodVariety(foodVarietyNameValue != null ? foodVarietyNameValue : "");
                export.setSettleWeight(df.format(record.getSettleWeight())+"KG");
                export.setRecordWeight(df.format(record.getRecordWeight())+"KG");
                export.setSettleWeight(df.format(record.getSettleWeight()) + "KG");
                export.setRecordWeight(df.format(record.getRecordWeight()) + "KG");
                export.setCompleteTime(record.getCompleteTime());
                export.setUpdateLog(record.getUpdateLog());
                exportList.add(export);
            }
            ExcelUtil<InoutRecordDetailOutExport> util = new ExcelUtil<InoutRecordDetailOutExport>(InoutRecordDetailOutExport.class);
            return util.exportExcel(exportList, sheetName, deptName);
            return util.exportExcel(exportList, sheetName, deptName, exportTimeDesc, exportCreateUser, exportCreateTime);
        }
        return AjaxResult.error("参数错误");
    }
    /**
     * 库存报表导出
     *
     * @return
     */
    @RequestMapping("/storage-excel")
@@ -274,27 +296,39 @@
        if (null != subDept) {
            deptName = subDept.getDeptName();
        }
        String exportTimeDesc = "";
        String exportCreateUser = "";
        Date exportCreateTime = new Date();
        if (StringUtils.isNotEmpty(param.getTimeDesc())) {
            exportTimeDesc = param.getTimeDesc();
        }
        if (StringUtils.isNotEmpty(param.getCreateUser())) {
            exportCreateUser = param.getCreateUser();
        }
        if (param.getCreateTime() != null) {
            exportCreateTime = param.getCreateTime();
        }
        List<SuperInventoryReportExport> exportList = new ArrayList<>();
        DecimalFormat df = new DecimalFormat("0.00");
        for (SuperInventoryReportData data :list) {
        for (SuperInventoryReportData data : list) {
            SuperInventoryReportExport export = new SuperInventoryReportExport();
            export.setCustomerName(data.getCustomerName());
            export.setDeptName(data.getDeptName());
            export.setDepotName(data.getDepotName());
            export.setInitialWeight(df.format(data.getInitialWeight())+"KG");
            export.setRecordInWeight(df.format(data.getRecordInWeight())+"KG");
            export.setChangeInWeight(df.format(data.getChangeInWeight())+"KG");
            export.setRecordOutWeight(df.format(data.getRecordOutWeight())+"KG");
            export.setChangeOutWeight(df.format(data.getChangeOutWeight())+"KG");
            export.setLossWeight(df.format(data.getLossWeight())+"KG");
            export.setFinalWeight(df.format(data.getFinalWeight())+"KG");
            export.setInitialWeight(df.format(data.getInitialWeight()) + "KG");
            export.setRecordInWeight(df.format(data.getRecordInWeight()) + "KG");
            export.setChangeInWeight(df.format(data.getChangeInWeight()) + "KG");
            export.setRecordOutWeight(df.format(data.getRecordOutWeight()) + "KG");
            export.setChangeOutWeight(df.format(data.getChangeOutWeight()) + "KG");
            export.setLossWeight(df.format(data.getLossWeight()) + "KG");
            export.setFinalWeight(df.format(data.getFinalWeight()) + "KG");
            exportList.add(export);
        }
        //导出
        ExcelUtil<SuperInventoryReportExport> util = new ExcelUtil<SuperInventoryReportExport>(SuperInventoryReportExport.class);
        return util.exportExcel(exportList, sheetName, deptName);
        return util.exportExcel(exportList, sheetName, deptName, exportTimeDesc, exportCreateUser, exportCreateTime);
    }
}