From 6da289fff756eaecc600422d77c4afff1ddebab0 Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期五, 23 五月 2025 15:23:50 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelinePredictionController.java | 27 +++++++++++++++++++++++---- 1 files changed, 23 insertions(+), 4 deletions(-) diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelinePredictionController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelinePredictionController.java index faf5e0a..1200905 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelinePredictionController.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelinePredictionController.java @@ -7,23 +7,28 @@ import com.aps.common.log.annotation.Log; import com.aps.common.log.enums.BusinessType; import com.aps.common.security.annotation.RequiresPermissions; +import com.aps.common.security.utils.DictUtils; import com.aps.core.domain.ApsGasPipelinePrediction; -import com.aps.core.domain.ApsMaterialProductGroupManagement; import com.aps.core.service.IApsGasPipelinePredictionService; +import com.aps.system.api.domain.SysDictData; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletResponse; import lombok.SneakyThrows; import org.apache.commons.io.IOUtils; +import org.apache.poi.ss.usermodel.Row; +import org.apache.poi.ss.usermodel.Sheet; +import org.apache.poi.ss.usermodel.Workbook; +import org.apache.poi.ss.usermodel.WorkbookFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.core.io.ByteArrayResource; import org.springframework.http.HttpHeaders; -import org.springframework.http.MediaType; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.io.InputStream; +import java.io.ByteArrayInputStream; +import java.io.ByteArrayOutputStream; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.util.List; @@ -57,7 +62,7 @@ @Operation(summary = "瀵煎叆鎵嬪伐姘斾綋棰勬祴鏁版嵁", description = "鎵归噺瀵煎叆") @Log(title = "瀵煎叆鎵嬪伐姘斾綋棰勬祴鏁版嵁", businessType = BusinessType.IMPORT) - @RequiresPermissions("gasPipeline:prediction:import") +// @RequiresPermissions("gasPipeline:prediction:import") @PostMapping("/importData") public AjaxResult importData(MultipartFile file) throws Exception { @@ -75,6 +80,20 @@ @GetMapping("/template") public ResponseEntity<ByteArrayResource> exportTemplate() { byte[] file = IOUtils.resourceToByteArray("/templates/姘斾綋棰勬祴鏁版嵁妯℃澘v1.0.xlsx"); + Workbook workbook = WorkbookFactory.create(new ByteArrayInputStream(file)); + Sheet sheet = workbook.getSheet("瀛楀吀-鐢熶骇鍩哄湴"); + List<SysDictData> sysDictDataList = DictUtils.getDictCache("aps_factory"); + if (sysDictDataList != null) { + for (int i = 0; i < sysDictDataList.size(); i++) { + Row row = sheet.createRow(i + 1); + row.createCell(0).setCellValue(sysDictDataList.get(i).getDictValue()); + row.createCell(1).setCellValue(sysDictDataList.get(i).getDictLabel()); + } + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + workbook.write(baos); + file = baos.toByteArray(); + } + workbook.close(); ByteArrayResource resource = new ByteArrayResource(file); return ResponseEntity.ok() .header("Access-Control-Expose-Headers", HttpHeaders.CONTENT_DISPOSITION) -- Gitblit v1.9.3