From 499460f9d26d5d08538de24680ab4c63735007f2 Mon Sep 17 00:00:00 2001
From: yubo <autumnal_wind@yeah.net>
Date: 星期三, 11 三月 2026 23:54:20 +0800
Subject: [PATCH] refactor(hr): 重构员工信息导出功能
---
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/util/CreatePdf.java | 38 +++++++++++++++++---------------------
1 files changed, 17 insertions(+), 21 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 f77e6eb..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
@@ -335,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);
@@ -407,22 +408,26 @@
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);
+ if(img!=null){
+ img.setAlignment(Element.ALIGN_LEFT);
+ img.scaleAbsolute(120,125);
+ }
+
// 每个cell的宽度
float[] widthss = {400, 400, 400, 400,400, 400};
// 创建一个表格,每一行有四个cell
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++) {
@@ -533,7 +538,6 @@
int size = empWorkExperiences1.size();
for (int i = 0; i < size; i++) {
EmpWorkExperience user = empWorkExperiences1.get(i);
- workheadtable.addCell(createCells(String.valueOf(re++), textfont));
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));
@@ -545,7 +549,6 @@
int size = records.size();
for (int i = 0; i < size; i++) {
EmpPhysicalExam user = records.get(i);
- empPhysicalheadtable.addCell(createCells(String.valueOf(re1++), textfont));
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));
@@ -562,12 +565,12 @@
int size = empContractInfos.size();
for (int i = 0; i < size; i++) {
EmpContractInfo user = empContractInfos.get(i);
- empContractInfotable.addCell(createCells(String.valueOf(re2++), textfont));
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;
@@ -575,7 +578,6 @@
int size = empJobChangeList.size();
for (int i = 0; i < size; i++) {
Map user = empJobChangeList.get(i);
- empJobChangetable.addCell(createCells(String.valueOf(re3++), textfont));
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));
@@ -583,6 +585,8 @@
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;
@@ -590,7 +594,7 @@
int size = records1.size();
for (int i = 0; i < size; i++) {
Map user = records1.get(i);
- dimissionLogtable.addCell(createCells(String.valueOf(re4++), textfont));
+ 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));
@@ -604,7 +608,6 @@
int size = empLeaveInfos.size();
for (int i = 0; i < size; i++) {
EmpLeaveInfo user = empLeaveInfos.get(i);
- leaveInfotable.addCell(createCells(String.valueOf(re5++), textfont));
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));
@@ -619,7 +622,6 @@
int size = empResigns.size();
for (int i = 0; i < size; i++) {
EmpResign user = empResigns.get(i);
- resigntable.addCell(createCells(String.valueOf(re6++), textfont));
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));
@@ -631,7 +633,6 @@
int size = dimissionAttends.size();
for (int i = 0; i < size; i++) {
EmpDimissionAttend user = dimissionAttends.get(i);
- dimissionAttendtable.addCell(createCells(String.valueOf(re7++), textfont));
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));
@@ -647,7 +648,6 @@
int size = empUnemployments.size();
for (int i = 0; i < size; i++) {
EmpUnemployment user = empUnemployments.get(i);
- unemploymenttable.addCell(createCells(String.valueOf(re8++), textfont));
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));
@@ -660,7 +660,6 @@
int size = empInsurances.size();
for (int i = 0; i < size; i++) {
EmpInsurance user = empInsurances.get(i);
- insurancetable.addCell(createCells(String.valueOf(re9++), textfont));
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));
@@ -675,7 +674,6 @@
int size = empAccidentCases1.size();
for (int i = 0; i < size; i++) {
EmpAccidentCases user = empAccidentCases1.get(i);
- accidentCasestable.addCell(createCells(String.valueOf(re10++), textfont));
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));
@@ -697,7 +695,6 @@
int size = empLaborTroubles.size();
for (int i = 0; i < size; i++) {
EmpLaborTrouble user = empLaborTroubles.get(i);
- laborTroubletable.addCell(createCells(String.valueOf(re11++), textfont));
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));
@@ -713,7 +710,6 @@
int size = empOccupationals.size();
for (int i = 0; i < size; i++) {
EmpOccupational user = empOccupationals.get(i);
- occtable.addCell(createCells(String.valueOf(re12++), textfont));
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));
@@ -736,7 +732,6 @@
int size = empBadRecords.size();
for (int i = 0; i < size; i++) {
EmpBadRecord user = empBadRecords.get(i);
- badRecordtable.addCell(createCells(String.valueOf(re13++), textfont));
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));
@@ -748,14 +743,15 @@
int size = empRemarkInfos.size();
for (int i = 0; i < size; i++) {
EmpRemarkInfo user = empRemarkInfos.get(i);
- remarkInfotable.addCell(createCells(String.valueOf(re14++), textfont));
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);
--
Gitblit v1.8.0