From 010366d0f907365ce43321ef1501192e480bd762 Mon Sep 17 00:00:00 2001
From: sfd <sun.sunshine@163.com>
Date: 星期五, 23 五月 2025 16:12:37 +0800
Subject: [PATCH] 管路产能查看车间转码
---
aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java | 57 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 53 insertions(+), 4 deletions(-)
diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java
index e11ccc3..2d52df6 100644
--- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java
+++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsGasPipelineMoController.java
@@ -7,15 +7,30 @@
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.ApsGasPipelineMo;
import com.aps.core.service.IApsGasPipelineMoService;
+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.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
import java.util.List;
/**
@@ -37,7 +52,7 @@
* 鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃
*/
@Operation(summary = "鏌ヨ绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁鍒楄〃", description = "鍒嗛〉鏌ヨ")
-// @RequiresPermissions("gasPipeline:mo:list")
+ @RequiresPermissions("gasPipeline:mo:list")
@GetMapping("/list")
public TableDataInfo list(ApsGasPipelineMo apsGasPipelineMo)
{
@@ -53,8 +68,8 @@
@PostMapping("/importData")
public AjaxResult importData(MultipartFile file) throws Exception {
- int i = apsGasPipelineMoService.batchInsertGasPipelineMo(file);
- return toAjax(i);
+ apsGasPipelineMoService.batchInsertGasPipelineMo(file);
+ return toAjax(true);
}
/**
@@ -110,11 +125,45 @@
* 鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁
*/
@Operation(summary = "鍒犻櫎绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", description = "鎵归噺鍒犻櫎")
-// @RequiresPermissions("gasPipeline:mo:remove")
+ @RequiresPermissions("gasPipeline:mo:remove")
@Log(title = "绠¤矾鎵嬪伐姘斾綋宸ュ崟鏁版嵁", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(apsGasPipelineMoService.deleteApsGasPipelineMoByIds(ids));
}
+
+ /**
+ * 涓嬭浇姘斾綋棰勬祴鏁版嵁瀵煎叆妯℃澘
+ */
+ @SneakyThrows
+ @Operation(summary = "涓嬭浇姘斾綋宸ュ崟鏁版嵁瀵煎叆妯℃澘", description = "涓嬭浇姘斾綋宸ュ崟鏁版嵁瀵煎叆妯℃澘")
+// @RequiresPermissions("gasPipeline:mo:template")
+// @Log(title = "涓嬭浇姘斾綋宸ュ崟鏁版嵁瀵煎叆妯℃澘", businessType = BusinessType.EXPORT)
+ @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)
+ .header(HttpHeaders.CONTENT_DISPOSITION,
+ String.format("attachment;filename=%s", URLEncoder.encode("姘斾綋宸ュ崟鏁版嵁妯℃澘.xlsx", StandardCharsets.UTF_8)))
+ .header(HttpHeaders.CONTENT_TYPE, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
+ .contentLength(file.length)
+ .body(resource);
+ }
}
--
Gitblit v1.9.3