From 79e81a02076cdd1e828eb06029cd51eb37522f42 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 18 九月 2025 09:11:37 +0800
Subject: [PATCH] 首页下载问题修复

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/ProduceDivisionController.java |   86 ++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 85 insertions(+), 1 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/ProduceDivisionController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/ProduceDivisionController.java
index cf8561b..726c725 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/ProduceDivisionController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/basesetting/producedivision/controller/ProduceDivisionController.java
@@ -3,15 +3,32 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.servlet.http.HttpServletResponse;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.io.IOUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.oss.OssTemplate;
+import org.springblade.core.tool.api.IResultCode;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
+import org.springblade.mdm.basesetting.producedivision.entity.ProduceDivision;
+import org.springblade.mdm.basesetting.producedivision.entity.QinzheFgb;
 import org.springblade.mdm.basesetting.producedivision.service.ProduceDivisionService;
+import org.springblade.mdm.basesetting.producedivision.vo.ImportResult;
 import org.springblade.mdm.basesetting.producedivision.vo.ProduceDivisionVO;
 import org.springblade.mdm.basesetting.producedivision.vo.ProduceDivisionViewVO;
+import org.springblade.mdm.commons.service.ParamService;
+import org.springblade.mdm.program.vo.DncSendBackData;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.Collections;
+import java.util.List;
 
 @Slf4j
 @RestController
@@ -21,7 +38,10 @@
 
 	@Autowired
 	private ProduceDivisionService service;
-
+	@Autowired
+	private ParamService paramService;
+	@Autowired
+	private OssTemplate ossTemplate;
 	/**
 	 * 鏂板
 	 */
@@ -71,4 +91,68 @@
 		IPage<ProduceDivisionViewVO> pages = service.pageQuery(name,query);
 		return R.data(pages);
 	}
+
+	@Operation(summary = "瀵煎叆鍒嗗伐琛�", description = "瀵煎叆鍒嗗伐琛�")
+	@PostMapping("/import-division")
+	public R<ImportResult> importDivision(@RequestParam MultipartFile file) {
+		try {
+			return R.data(service.importDivision(file));
+		}catch(Exception e) {
+			log.error("瀵煎叆寮傚父",e);
+			return R.fail(e.getMessage());
+		}
+	}
+	@Operation(summary = "涓嬭浇鍒嗗伐琛ㄥ鍏ユā鏉�", description = "涓嬭浇鍒嗗伐琛ㄥ鍏ユā鏉�")
+	@GetMapping("/download-template")
+	public void downloadTemplate(HttpServletResponse response) {
+		String PARAMKEY = "DIVISION_TEMPLATE";
+
+		try {
+			String filename = "divisiontemplate.xlsx";
+			response.setHeader("Content-Disposition", "attachment; filename="+filename);
+			response.setContentType("application/octet-stream");
+			String ossName  = paramService.getParamValue(PARAMKEY,"");
+			try(InputStream ins = ossTemplate.statFileStream(ossName);){
+				IOUtils.copy(ins,response.getOutputStream());
+			}
+
+		} catch (Exception e) {
+			log.error("瀵煎嚭鍒嗗伐琛ㄦā鏉垮紓甯�", e);
+		}
+	}
+	@Operation(summary = "浠诲姟璁″垝鏌ヨ鍒嗗伐琛╥d", description = "浠诲姟璁″垝g鏍规嵁闆剁粍浠跺彿鏌ヨ鑱岃矗琛╥d")
+	@GetMapping("/select-by-drawingno")
+	public R<ProduceDivision> selectByDrawingNo(@RequestParam String drawingNo) {
+		try {
+			ProduceDivision div = service.getByDrawingNoWithQinzhe(drawingNo);
+			return R.data(div);
+		} catch (Exception e) {
+			log.error("鏍规嵁闆朵欢鍙疯幏鍙栬亴璐h〃寮傚父",e);
+			return R.fail(new IResultCode() {
+				@Override
+				public String getMessage() {
+					return e.getMessage();
+				}
+
+				@Override
+				public int getCode() {
+					return 201;
+				}
+			});
+		}
+	}
+
+	@Operation(summary = "浠诲姟璁″垝閫夋嫨涓荤宸ヨ壓", description = "浠诲姟璁″垝閫夋嫨涓荤宸ヨ壓")
+	@GetMapping("/select-programmer")
+	public R<List<ProduceDivisionViewVO>> selectProgrammer(@RequestParam String programmer) {
+
+		try {
+
+			String p = programmer.trim();
+			return R.data(service.queryProgrammer(programmer));
+		} catch (Exception e) {
+			log.error("鑾峰彇闆朵欢鍙峰紓甯�",e);
+			return R.fail(e.getMessage());
+		}
+	}
 }

--
Gitblit v1.9.3