From c6b49750da5d19383e74e644f4fa1734138aff89 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期三, 13 八月 2025 20:12:34 +0800
Subject: [PATCH] 增补上传的文件类型字段

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/controller/MachineBackFileHandleController.java |   42 ++++++++++++++++++++++++++++++++----------
 1 files changed, 32 insertions(+), 10 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/controller/MachineBackFileHandleController.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/controller/MachineBackFileHandleController.java
index c561461..4007c82 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/controller/MachineBackFileHandleController.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/machineback/controller/MachineBackFileHandleController.java
@@ -3,10 +3,13 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.tags.Tag;
 import jakarta.servlet.http.HttpServletResponse;
+import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.DateUtil;
@@ -14,7 +17,10 @@
 import org.springblade.mdm.basesetting.machine.vo.MachineExcelVO;
 import org.springblade.mdm.basesetting.machine.vo.MachineQueryVO;
 import org.springblade.mdm.basesetting.machine.vo.MachineVO;
+import org.springblade.mdm.commons.vo.IdsVO;
+import org.springblade.mdm.gkw.programnode.service.MachineFileService;
 import org.springblade.mdm.machineback.service.MachineBackFileService;
+import org.springblade.mdm.machineback.service.NcProgramExportInnerService;
 import org.springblade.mdm.machineback.vo.MachineBackFileHandleExcelVO;
 import org.springblade.mdm.machineback.vo.MachineBackFileHandleQueryVO;
 import org.springblade.mdm.machineback.vo.MachineBackFileQueryVO;
@@ -23,33 +29,47 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import java.io.IOException;
 import java.util.ArrayList;
 import java.util.List;
 
 @Slf4j
 @RestController
+@AllArgsConstructor
 @RequestMapping("/machineback/filehandle")
 @Tag(name = "鏈哄簥鍥炰紶绋嬪簭澶勭悊", description = "鏈哄簥鍥炰紶绋嬪簭澶勭悊")
 public class MachineBackFileHandleController {
 
-	@Autowired
-	private MachineBackFileService service;
-
+	private final MachineBackFileService service;
+	private final MachineFileService machineFileService;
+	private final NcProgramExportInnerService ncProgramExportInnerService;
 	/**
 	 * 鍒嗛〉
 	 */
-	@Operation(summary = "鍒嗛〉鏌ヨ", description = "鍚嶇О鎴栫紪鐮�")
+	@Operation(summary = "鍒嗛〉鏌ヨ", description = "鍚嶇О鎴栫紪鐮�,宸叉帴鍙楃殑鏂囦欢鍒楄〃")
 	@GetMapping("/page")
 	public R<IPage<MachineBackFileVO>> page(MachineBackFileHandleQueryVO query) {
-		IPage<MachineBackFileVO> pages = service.handlePageQuery(query);
+		IPage<MachineBackFileVO> pages = machineFileService.handlePageQuery(query);
 		return R.data(pages);
 	}
 
 	@GetMapping("export-to-inner")
 	@ApiOperationSupport(order = 13)
 	@Operation(summary = "瀵煎嚭鍒版秹瀵嗙綉", description = "瀵煎嚭鍒版秹瀵嗙綉")
-	public void exportToInner(MachineBackFileHandleQueryVO query, HttpServletResponse response) {
+	public void exportToInner(@Parameter(description = "瀹℃壒琛╥d鏁扮粍") String ids, HttpServletResponse response) {
 
+		if(Func.isBlank(ids)) {
+			throw new ServiceException("鏈�夋嫨鏂囦欢瀵煎嚭");
+		}
+		try {
+			String filename = "toinnerexp-"+ DateUtil.format(DateUtil.now(), "yyyyMMddHHmm")+".zip";
+			response.setHeader("Content-Disposition", "attachment; filename="+filename);
+			response.setContentType("application/octet-stream");
+			ncProgramExportInnerService.exportToInner(Func.toLongList(ids),response.getOutputStream());
+		} catch (IOException e) {
+			log.error("宸ユ帶缃戝鍑哄洖浼犳枃浠跺紓甯�", e);
+			throw new RuntimeException(e);
+		}
 
 	}
 
@@ -58,13 +78,15 @@
 	public void exportExcel(MachineBackFileHandleQueryVO query, HttpServletResponse response) {
 		query.setCurrent(1);
 		query.setSize(Integer.MAX_VALUE);
-		IPage<MachineBackFileVO> pages = service.handlePageQuery(query);
-
+		//IPage<MachineBackFileVO> pages = service.handlePageQuery(query);
+		IPage<MachineBackFileVO> pages = machineFileService.handlePageQuery(query);
 		List<MachineBackFileHandleExcelVO> list = new ArrayList<>();
 		pages.getRecords().forEach(vo ->{
-			MachineBackFileHandleExcelVO excelVO	= new MachineBackFileHandleExcelVO();
-			BeanUtil.copy(vo, excelVO);
+			MachineBackFileHandleExcelVO excelVO = new MachineBackFileHandleExcelVO();
+			BeanUtil.copyProperties(vo, excelVO);
 			excelVO.setCuredStatus(vo.getIsCured()==0?"鍥哄寲":"鏈浐鍖�");
+
+			list.add(excelVO);
 		});
 		ExcelUtil.export(response, "鏈哄簥鍥炰紶绋嬪簭" + DateUtil.time(), "鏈哄簥鍥炰紶绋嬪簭琛�", list, MachineBackFileHandleExcelVO.class);
 

--
Gitblit v1.9.3