From f7dd80d1383f406ba46c417a7c9a95181db94d1a Mon Sep 17 00:00:00 2001
From: luoyb <412940104@qq.com>
Date: 星期二, 16 四月 2024 21:56:36 +0800
Subject: [PATCH] fix: 问题修复 1.数据统计模块中查看合同出错

---
 febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java |  145 +++++++++++++++++++++++-------------------------
 1 files changed, 70 insertions(+), 75 deletions(-)

diff --git a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java
index 4bcea75..b3961fc 100644
--- a/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java
+++ b/febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java
@@ -118,6 +118,13 @@
 		cell.setPhrase(new Phrase(value, font));
 		return cell;
 	}
+	private PdfPCell createCells(String value, Font font) {
+		PdfPCell cell = new PdfPCell();
+		cell.setVerticalAlignment(Element.ALIGN_MIDDLE);
+		cell.setHorizontalAlignment(Element.ALIGN_CENTER);
+		cell.setPhrase(new Phrase(value, font));
+		return cell;
+	}
 
 	/**
 	 * 为表格添加一个内容
@@ -328,7 +335,8 @@
 		DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
 		document.addHeader("标题","标题");
 		EmpBaseInfo empBaseInfo = empBaseInfoList.get(0);
-		PdfPTable workheadtable = createTable(workheadlength);
+		float[] ls={3.0f,3.0f,3.0f,3.0f};
+		PdfPTable workheadtable = createTable(ls);
 		PdfPTable empPhysicalheadtable = createTable(empPhysicalheadlength);
 		PdfPTable empContractInfotable = createTable(empContractInfolength);
 		PdfPTable empJobChangetable = createTable(empJobChangelength);
@@ -400,38 +408,18 @@
 		cell1.setPhrase(para);
 		table1.addCell(cell1);
 		Image img =null;
+		String image="http://120.24.23.155:8301/hr/empBaseInfo/image/"+empBaseInfo.getEmpId()+"";
 		try {
-			img = Image.getInstance("http://120.24.23.155:8301/hr/empBaseInfo/image/"+empBaseInfo.getEmpId()+"");
+			img = Image.getInstance(image);
 		} catch (BadElementException e) {
 			e.printStackTrace();
 		} catch (IOException e) {
 			e.printStackTrace();
 		}
-		img.setAlignment(Element.ALIGN_LEFT);
-		img.scaleAbsolute(120,125);
-		System.out.println(img.getScaledWidth());
-
-		System.out.println(img.getScaledHeight());
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+		if(img!=null){
+			img.setAlignment(Element.ALIGN_LEFT);
+			img.scaleAbsolute(120,125);
+		}
 
 //			每个cell的宽度
 		float[] widthss = {400, 400, 400, 400,400, 400};
@@ -439,7 +427,7 @@
 		PdfPTable basicTable = new PdfPTable(widthss);
 		basicTable.addCell(createCell("基本信息:", keyfont, Element.ALIGN_LEFT,basicDatas.length, false));
 
-		basicTable.addCell(createCell("档案号:"+empBaseInfo.getArchivesNumb()==null?"":empBaseInfo.getArchivesNumb(), keyfont, Element.ALIGN_RIGHT,basicDatas.length, false));
+		basicTable.addCell(createCell("档案号:"+empBaseInfo.getArchivesNumb(), keyfont, Element.ALIGN_RIGHT,basicDatas.length, false));
 		// 添加备注,靠左,不显示边框
 //			外层循环表格的行
 		for (int i = 0; i < basicDatas.length; i++) {
@@ -545,23 +533,22 @@
 		for (int i = 0; i < remarkInfolength; i++) {
 			remarkInfotable.addCell(createCell(remarkInfo[i], keyfont, Element.ALIGN_CENTER));
 		}
-
+         int re=1;
 		if (null != empWorkExperiences1 && empWorkExperiences1.size() > 0) {
 			int size = empWorkExperiences1.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpWorkExperience user = empWorkExperiences1.get(i-1);
-				workheadtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpWorkExperience user = empWorkExperiences1.get(i);
 				workheadtable.addCell(createCell(user.getBeginDate()==null?"":format1.format(user.getBeginDate()), textfont));
 				workheadtable.addCell(createCell(user.getEndDate()==null?"":format1.format(user.getEndDate()), textfont));
 				workheadtable.addCell(createCell(user.getWorkUnit()==null?"":user.getWorkUnit(), textfont));
 				workheadtable.addCell(createCell(user.getJobContent()==null?"":user.getJobContent() , textfont));
 			}
 		}
+		int re1=1;
 		if (null != records && records.size() > 0) {
 			int size = records.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpPhysicalExam user = records.get(i-1);
-				empPhysicalheadtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpPhysicalExam user = records.get(i);
 				empPhysicalheadtable.addCell(createCell(user.getHospital()==null?"":user.getHospital(), textfont));
 				empPhysicalheadtable.addCell(createCell(user.getPhysicalExamDate()==null?"":format1.format(user.getPhysicalExamDate()), textfont));
 				empPhysicalheadtable.addCell(createCell(user.getPhysicalExamTypeName()==null?"":user.getPhysicalExamTypeName(), textfont));
@@ -573,23 +560,24 @@
 				empPhysicalheadtable.addCell(createCell(user.getRemark()==null?"":user.getRemark(), textfont));
 			}
 		}
+		int re2=1;
 		if (null != empContractInfos && empContractInfos.size() > 0) {
 			int size = empContractInfos.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpContractInfo user = empContractInfos.get(i-1);
-				empContractInfotable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpContractInfo user = empContractInfos.get(i);
 				empContractInfotable.addCell(createCell(user.getSigningDate()==null?"":format1.format(user.getSigningDate()), textfont));
 				empContractInfotable.addCell(createCell(user.getEndDate()==null?"":format1.format(user.getEndDate()), textfont));
 				empContractInfotable.addCell(createCell(user.getContractPeriod()==null?"":String.valueOf(user.getContractPeriod()), textfont));
 				empContractInfotable.addCell(createCell(user.getContractStatusName()==null?"":user.getContractStatusName(), textfont));
 				empContractInfotable.addCell(createCell(user.getTransactor()==null?"":user.getTransactor() , textfont));
+				empContractInfotable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re3=1;
 		if (null != empJobChangeList && empJobChangeList.size() > 0) {
 			int size = empJobChangeList.size();
-			for (int i = 1; i < size+1; i++) {
-				Map user = empJobChangeList.get(i-1);
-				empJobChangetable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				Map user = empJobChangeList.get(i);
 				empJobChangetable.addCell(createCell(user.get("newDeptName")==null?"":user.get("newDeptName").toString(), textfont));
 				empJobChangetable.addCell(createCell(user.get("newJobName")==null?"":user.get("newJobName").toString(), textfont));
 				empJobChangetable.addCell(createCell(user.get("empName")==null?"":user.get("empName").toString(), textfont));
@@ -597,13 +585,16 @@
 				empJobChangetable.addCell(createCell(user.get("oldJobName")==null?"":user.get("oldJobName").toString(), textfont));
 				empJobChangetable.addCell(createCell(user.get("changeDate")==null?"":user.get("changeDate").toString(), textfont));
 				empJobChangetable.addCell(createCell(user.get("changeType")==null?"":user.get("changeType").toString(), textfont));
+				empJobChangetable.addCell(createCell(user.get("changeReason")==null?"":user.get("changeReason").toString(), textfont));
+
 			}
 		}
+		int re4=1;
 		if (null != records1 && records1.size() > 0) {
 			int size = records1.size();
-			for (int i = 1; i < size+1; i++) {
-				Map user = records1.get(i-1);
-				dimissionLogtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				Map user = records1.get(i);
+				dimissionLogtable.addCell(createCell(user.get("deptName")==null?"":user.get("deptName").toString(), textfont));
 				dimissionLogtable.addCell(createCell(user.get("entryDate")==null?"":user.get("entryDate").toString(), textfont));
 				dimissionLogtable.addCell(createCell(user.get("dimissionDate")==null?"":user.get("dimissionDate").toString(), textfont));
 				dimissionLogtable.addCell(createCell(user.get("dimissionType")==null?"":user.get("dimissionType").toString(), textfont));
@@ -612,11 +603,11 @@
 				dimissionLogtable.addCell(createCell(user.get("remark")==null?"":user.get("remark").toString(), textfont));
 			}
 		}
+		int re5=1;
 		if (null != empLeaveInfos && empLeaveInfos.size() > 0) {
 			int size = empLeaveInfos.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpLeaveInfo user = empLeaveInfos.get(i-1);
-				leaveInfotable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpLeaveInfo user = empLeaveInfos.get(i);
 				leaveInfotable.addCell(createCell(user.getBeginTime()==null?"":format1.format(user.getBeginTime()), textfont));
 				leaveInfotable.addCell(createCell(user.getEndTime()==null?"":format1.format(user.getEndTime()), textfont));
 				leaveInfotable.addCell(createCell(user.getLeaveDay()==null?"":String.valueOf(user.getLeaveDay()), textfont));
@@ -626,22 +617,22 @@
 				leaveInfotable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re6=1;
 		if (null != empResigns && empResigns.size() > 0) {
 			int size = empResigns.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpResign user = empResigns.get(i-1);
-				resigntable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpResign user = empResigns.get(i);
 				resigntable.addCell(createCell(user.getApplayDate()==null?"":format1.format(user.getApplayDate()), textfont));
 				resigntable.addCell(createCell(user.getReason()==null?"":user.getReason(), textfont));
 				resigntable.addCell(createCell(user.getReporter()==null?"":user.getReporter() , textfont));
 				resigntable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re7=1;
 		if (null != dimissionAttends && dimissionAttends.size() > 0) {
 			int size = dimissionAttends.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpDimissionAttend user = dimissionAttends.get(i-1);
-				dimissionAttendtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpDimissionAttend user = dimissionAttends.get(i);
 				dimissionAttendtable.addCell(createCell(user.getAttendMonth()==null?"":user.getAttendMonth(), textfont));
 				dimissionAttendtable.addCell(createCell(user.getAttendDays()==null?"":user.getAttendDays().toString() , textfont));
 				dimissionAttendtable.addCell(createCell(user.getOvertimeDay()==null?"":user.getOvertimeDay().toString(), textfont));
@@ -652,11 +643,11 @@
 				dimissionAttendtable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re8=1;
 		if (null != empUnemployments && empUnemployments.size() > 0) {
 			int size = empUnemployments.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpUnemployment user = empUnemployments.get(i-1);
-				unemploymenttable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpUnemployment user = empUnemployments.get(i);
 				unemploymenttable.addCell(createCell(user.getApplayDate()==null?"":format1.format(user.getApplayDate()), textfont));
 				unemploymenttable.addCell(createCell(user.getApplayReason()==null?"":user.getApplayReason().toString() , textfont));
 				unemploymenttable.addCell(createCell(user.getReporter()==null?"":user.getReporter().toString(), textfont));
@@ -664,11 +655,11 @@
 				unemploymenttable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re9=1;
 		if (null != empInsurances && empInsurances.size() > 0) {
 			int size = empInsurances.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpInsurance user = empInsurances.get(i-1);
-				insurancetable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpInsurance user = empInsurances.get(i);
 				insurancetable.addCell(createCell(user.getApplayDate()==null?"":format1.format(user.getApplayDate()), textfont));
 				insurancetable.addCell(createCell(user.getProposer()==null?"":user.getProposer().toString() , textfont));
 				insurancetable.addCell(createCell(user.getInsuranceGaers()==null?"":user.getInsuranceGaers().toString(), textfont));
@@ -678,11 +669,11 @@
 				insurancetable.addCell(createCell(user.getRemark()==null?"":user.getRemark() , textfont));
 			}
 		}
+		int re10=1;
 		if (null != empAccidentCases1 && empAccidentCases1.size() > 0) {
 			int size = empAccidentCases1.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpAccidentCases user = empAccidentCases1.get(i-1);
-				accidentCasestable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpAccidentCases user = empAccidentCases1.get(i);
 				accidentCasestable.addCell(createCell(user.getInjuredTime()==null?"":format1.format(user.getInjuredTime()), textfont));
 				accidentCasestable.addCell(createCell(user.getInjuredAddress()==null?"":user.getInjuredAddress().toString() , textfont));
 				accidentCasestable.addCell(createCell(user.getInjuredPart()==null?"":user.getInjuredPart().toString(), textfont));
@@ -699,11 +690,11 @@
 				accidentCasestable.addCell(createCell(user.getSettleStatusName()==null?"":user.getSettleStatusName().toString() , textfont));
 			}
 		}
+		int re11=1;
 		if (null != empLaborTroubles && empLaborTroubles.size() > 0) {
 			int size = empLaborTroubles.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpLaborTrouble user = empLaborTroubles.get(i-1);
-				laborTroubletable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpLaborTrouble user = empLaborTroubles.get(i);
 				laborTroubletable.addCell(createCell(user.getArbitrationDate()==null?"":format1.format(user.getArbitrationDate()), textfont));
 				laborTroubletable.addCell(createCell(user.getArbitrationTypeName()==null?"":user.getArbitrationTypeName().toString() , textfont));
 				laborTroubletable.addCell(createCell(user.getArbitrationReason()==null?"":user.getArbitrationReason().toString(), textfont));
@@ -714,17 +705,18 @@
 				laborTroubletable.addCell(createCell(user.getSettleDate()==null?"":format1.format(user.getSettleDate()), textfont));
 			}
 		}
+		int re12=1;
 		if (null != empOccupationals && empOccupationals.size() > 0) {
 			int size = empOccupationals.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpOccupational user = empOccupationals.get(i-1);
-				occtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpOccupational user = empOccupationals.get(i);
 				occtable.addCell(createCell(user.getInjuredTime()==null?"":format1.format(user.getInjuredTime()), textfont));
 				occtable.addCell(createCell(user.getInjuredAddress()==null?"":user.getInjuredAddress().toString() , textfont));
 				occtable.addCell(createCell(user.getInjuredPart()==null?"":user.getInjuredPart().toString(), textfont));
 				occtable.addCell(createCell(user.getInjuredDescribe()==null?"":user.getInjuredDescribe().toString(), textfont));
 				occtable.addCell(createCell(user.getInjuredDiacrisis()==null?"":user.getInjuredDiacrisis().toString(), textfont));
 				occtable.addCell(createCell(user.getHospitalName()==null?"":user.getHospitalName().toString(), textfont));
+				occtable.addCell(createCell(user.getTreatmentName()==null?"":user.getTreatmentName().toString(), textfont));
 				occtable.addCell(createCell(user.getHospitalizatioFlagName()==null?"":user.getHospitalizatioFlagName().toString(), textfont));
 				occtable.addCell(createCell(user.getBedNumb()==null?"":user.getBedNumb().toString(), textfont));
 				occtable.addCell(createCell(user.getReportTime()==null?"":format1.format(user.getReportTime()), textfont));
@@ -735,29 +727,31 @@
 				occtable.addCell(createCell(user.getSettleStatusName()==null?"":user.getSettleStatusName().toString() , textfont));
 			}
 		}
+		int re13=1;
 		if (null != empBadRecords && empBadRecords.size() > 0) {
 			int size = empBadRecords.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpBadRecord user = empBadRecords.get(i-1);
-				badRecordtable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpBadRecord user = empBadRecords.get(i);
 				badRecordtable.addCell(createCell(user.getBadDate()==null?"":format1.format(user.getBadDate()), textfont));
 				badRecordtable.addCell(createCell(user.getBadContent()==null?"":user.getBadContent().toString() , textfont));
 				badRecordtable.addCell(createCell(user.getReporter()==null?"":user.getReporter().toString(), textfont));
 				badRecordtable.addCell(createCell(user.getRemark()==null?"":user.getRemark().toString(), textfont));
 			}
 		}
+		int re14=1;
 		if (null != empRemarkInfos && empRemarkInfos.size() > 0) {
 			int size = empRemarkInfos.size();
-			for (int i = 1; i < size+1; i++) {
-				EmpRemarkInfo user = empRemarkInfos.get(i-1);
-				remarkInfotable.addCell(createCell(String.valueOf(i++), textfont));
+			for (int i = 0; i < size; i++) {
+				EmpRemarkInfo user = empRemarkInfos.get(i);
 				remarkInfotable.addCell(createCell(user.getRemarkDate()==null?"":format1.format(user.getRemarkDate()), textfont));
 				remarkInfotable.addCell(createCell(user.getRemarkContent()==null?"":user.getRemarkContent().toString() , textfont));
 			}
 		}
 		try {
 			document.add(table1);
-			document.add(img);
+			if(img!=null){
+				document.add(img);
+			}
 			// 将表格添加到文档中
 			document.add(basicTable);
 			document.add(workheadtable);
@@ -783,6 +777,7 @@
 		document.close();
 	}
 
+
 	/**
 	 * 提供外界调用的接口,生成以head为表头,list为数据的pdf
 	 * 

--
Gitblit v1.8.0