From 3ffe33aaa24386337e3638558eca731c62f25521 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期六, 13 九月 2025 13:30:06 +0800
Subject: [PATCH] 修改表格打印的数控程序编号

---
 blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramConfirmTableService.java |   94 +++++++++++++++++++++++++++++-----------------
 1 files changed, 59 insertions(+), 35 deletions(-)

diff --git a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramConfirmTableService.java b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramConfirmTableService.java
index 8dbb37f..fe8af9f 100644
--- a/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramConfirmTableService.java
+++ b/blade-service/blade-mdm/src/main/java/org/springblade/mdm/flow/service/ProgramConfirmTableService.java
@@ -2,35 +2,26 @@
 package org.springblade.mdm.flow.service;
 
 import com.itextpdf.text.*;
-import com.itextpdf.text.pdf.*;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
-import org.flowable.engine.HistoryService;
-import org.flowable.task.api.history.HistoricTaskInstance;
 import org.springblade.core.oss.OssTemplate;
 import org.springblade.core.tool.api.R;
-import org.springblade.core.tool.utils.DateUtil;
-import org.springblade.mdm.basesetting.machine.MachineService;
+import org.springblade.mdm.basesetting.machine.service.MachineService;
 import org.springblade.mdm.basesetting.machine.entity.Machine;
+import org.springblade.mdm.basesetting.producedivision.entity.QinzheFgb;
+import org.springblade.mdm.basesetting.producedivision.service.QinzheFgbService;
 import org.springblade.mdm.commons.contants.DictBizConstants;
 import org.springblade.mdm.commons.service.ParamService;
-import org.springblade.mdm.flow.constants.FlowContants;
+import org.springblade.mdm.commons.support.TemplatedPdfWriter;
 import org.springblade.mdm.flow.vo.ApproveTableInfo;
-import org.springblade.mdm.program.entity.NcNode;
-import org.springblade.mdm.program.entity.NcProgramApproved;
 import org.springblade.mdm.program.service.NcNodeService;
-import org.springblade.mdm.program.service.NcProgramApprovedService;
 import org.springblade.system.feign.IDictBizClient;
 import org.springblade.system.feign.IUserClient;
-import org.springblade.system.pojo.entity.DictBiz;
-import org.springblade.system.pojo.entity.User;
-import org.springblade.system.pojo.entity.UserInfo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.io.*;
 import java.util.*;
-import java.util.List;
 
 /**
  * 鏁版帶绋嬪簭纭琛ㄨ緭鍑烘湇鍔�
@@ -41,7 +32,7 @@
 @Service
 public class ProgramConfirmTableService {
 	@Autowired
-	private FlowCommonService flowCommonService;
+	private QinzheFgbService qinzheFgbService;
 	@Autowired
 	private IDictBizClient dictBizClient;
 	@Autowired
@@ -54,13 +45,16 @@
 	private IUserClient userClient;
 	@Autowired
 	private ParamService paramService;
-
+	@Autowired
+	private ApproveInfoQueryService approveInfoQueryService;
 	public void exportConfirmTable(FlowProgramProperties props, OutputStream os) throws IOException, DocumentException {
 
-		byte[] tplBytes = getTemplateBytes();
-		generateTempPDF(tplBytes,props,os);
+		//byte[] tplBytes = getTemplateBytes();
+		TemplatedPdfWriter pdfWriter = new TemplatedPdfWriter(getTemplateBytes());
+		//generateTempPDF(tplBytes,props,os);
+		pdfWriter.write(getPdfData(props),os);
 	}
-
+	/*
 	void generateTempPDF(byte[] bytes,FlowProgramProperties props,OutputStream outputStream) throws DocumentException, IOException {
 		PdfReader reader = null;
 		PdfStamper pdfStamper = null;
@@ -91,7 +85,7 @@
 			//fields.setFieldRichValue()
 		}
 
-	}
+	}*/
 
 
 
@@ -111,7 +105,7 @@
 	 * @param props 娴佺▼灞炴��
 	 * @return 鏁版嵁map
 	 */
-	Map<String,String> getData(FlowProgramProperties props){
+	Map<String,String> getPdfData(FlowProgramProperties props){
 		Map<String,String> data = new HashMap<>();
 		data.put("pageTotal","1");
 		data.put("pageNo","1");
@@ -124,8 +118,12 @@
 		data.put("productModel",props.getProductModel());
 		data.put("craftEdition",props.getCraftEdition());
 
-		data.put("fuheY","Y");
-		data.put("keyongY","Y");
+		//闆剁粍浠跺悕绉�
+		data.put("drawingName",getDrawingName(props.getDrawingNo()));
+		data.put("deviation",props.getDeviation()!=null?props.getDeviation():StringUtils.EMPTY);
+
+
+
 		Machine machine = this.machineService.getByCode(props.getMachineCode());
 		data.put("machineMode",machine.getName());
 		R<String> dictSystemResult = dictBizClient.getValue(DictBizConstants.CONTROL_SYSTEM,machine.getControlSystem());
@@ -133,29 +131,55 @@
 			data.put("controlSystem",dictSystemResult.getData());
 		}
 
-		data.put("operator","涓嶆槑纭�/2025-1-1");
-		data.put("jjy","涓嶆槑纭�/2025-1-1");
+		data.put("operator","鏉ユ簮MES/2025-1-1");
+		data.put("jjy","鏉ユ簮MES/2025-1-1");
+		data.put("fuheY","Y");//TODO 鏈� 妫�楠屽憳 鍒欑鍚�
+		data.put("keyongY","Y");//TODO 鏈� 妫�楠屽憳 鍒欑鍚�
 
-		data.put("programmerName",getNameByUserId(props.getProgrammerId()));
-		data.put("checkerName",getNameByUserId(props.getCheckerId()));
-		data.put("seniorName",getNameByUserId(props.getSeniorId()));
+		data.put("jly","鏉ユ簮MES/2025-1-1");
+		data.put("jln","鏉ユ簮MES/2025-1-1");
+		ApproveTableInfo approveInfo = approveInfoQueryService.getApproveInfo(props);
+		data.put("programmerName",approveInfo.getProgrammerName());
+		data.put("checkerName",approveInfo.getCheckerName());
+		data.put("seniorName",approveInfo.getSeniorName());
+
+		data.put("programNo",approveInfo.getProgramNo());
 
 		return data;
 	}
 
-
-	String getNameByUserId(Long userId){
-		if(userId == null){
+	/**
+	 * 鏌ヨ绋嬪簭缂栧彿
+	 * @param nodeId
+	 * @return
+	 */
+	/*
+	private String queryProgramNo(Long nodeId) {
+		if(nodeId ==null) {
+			return StringUtils.EMPTY;
+		}
+		NcNode programPkdNode = this.ncNodeService.getById(nodeId);
+		if (programPkdNode != null) {
+			return programPkdNode.getProgramNo();
+		}else{
 			return StringUtils.EMPTY;
 		}
 
-		String name = StringUtils.EMPTY;
-		R<User> useInfoResult =  userClient.userInfoById(userId);
-		if(useInfoResult.isSuccess()){
-			name = useInfoResult.getData().getName();
+	}
+	*/
+	/**
+	 * 鑾峰彇闆剁粍浠跺悕绉�
+	 * @param drawingNo 闆朵欢缂栧彿
+	 * @return 闆剁粍浠跺悕绉�
+	 */
+	String getDrawingName(String drawingNo){
+		QinzheFgb fgb = qinzheFgbService.getByLjh(drawingNo);
+		if(fgb!= null){
+			return fgb.getLjmc();
+		}else{
+			return StringUtils.EMPTY;
 		}
 
-		return name;
 	}
 
 }

--
Gitblit v1.9.3