Commit 2716514f authored by cq990612's avatar cq990612

Merge remote-tracking branch 'origin/chenqi2.0' into chenqi2.0

parents 0c57737c 3f653fd1
......@@ -569,13 +569,11 @@ public class StatisticsServiceImpl implements StatisticsService {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.NO_AUTHORITY);
}
// 不是中心级不能选择部门,只能查看自己部门的信息
if (!rank.contains(LevelRankEnum.CENTRAL_LEVEL.getRank()) && !deptId.equals(user.getDeptId())) {
if (!rank.contains(LevelRankEnum.CENTRAL_LEVEL.getRank()) && !user.getDeptId().equals(deptId)) {
throw new BaseCustomException(BASE_RESP_CODE_ENUM.NO_AUTHORITY);
}
// 默认统计截至时间为当天
if (StringUtil.isEmpty(endDate)) {
Date date = new Date();
......@@ -829,7 +827,7 @@ public class StatisticsServiceImpl implements StatisticsService {
HSSFCell row_1Cell;
// 总计行单元格
HSSFCell totalRow2Cell;
if (!"请假".equals(projectWorkTimeAndType.get(i).getProjectName()) && !"调休".equals(projectWorkTimeAndType.get(i).getProjectName())) {
// if (!"请假".equals(projectWorkTimeAndType.get(i).getProjectName()) && !"调休".equals(projectWorkTimeAndType.get(i).getProjectName())) {
// 项目名称或类型名称
row_1Cell = row_1.createCell((i + 1) * 2);
totalRow2Cell = totalRow2.createCell((i + 1) * 2);
......@@ -845,32 +843,32 @@ public class StatisticsServiceImpl implements StatisticsService {
// 该项目加班工时合计
HSSFCell cell2 = totalRow1.createCell((i + 1) * 2 + 1);
cell2.setCellValue(projectWorkTimeAndType.get(i).getOverTime());
} else {
// 合计行最后的列
short lastCellNum = totalRow1.getLastCellNum();
// 调休和请假的类型名单元格
row_1Cell = row_1.createCell(lastCellNum);
// 请假或调休的总计单元格
totalRow2Cell = totalRow2.createCell(lastCellNum);
// 请假或调休合计
HSSFCell cell1 = totalRow1.createCell(lastCellNum);
cell1.setCellValue(projectWorkTimeAndType.get(i).getNormalTime());
}
// } else {
// 合计行最后的列
// short lastCellNum = totalRow1.getLastCellNum();
// 调休和请假的类型名单元格
// row_1Cell = row_1.createCell(lastCellNum);
// 请假或调休的总计单元格
// totalRow2Cell = totalRow2.createCell(lastCellNum);
// 请假或调休合计
// HSSFCell cell1 = totalRow1.createCell(lastCellNum);
// cell1.setCellValue(projectWorkTimeAndType.get(i).getNormalTime());
// }
row_1Cell.setCellValue(projectWorkTimeAndType.get(i).getProjectName());
totalRow2Cell.setCellValue(projectWorkTimeAndType.get(i).getTotalTime());
}
// 所有项目的合计
String lastProjectName = projectWorkTimeAndType.get(projectWorkTimeAndType.size() - 1).getProjectName();
// String lastProjectName = projectWorkTimeAndType.get(projectWorkTimeAndType.size() - 1).getProjectName();
short row1_lastCellNum = row_1.getLastCellNum();
if (lastProjectName.equals("请假") || lastProjectName.equals("调休")) {
row_1.createCell(row1_lastCellNum).setCellValue("合计");
totalRow1.createCell(row1_lastCellNum).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
totalRow2.createCell(row1_lastCellNum).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
} else {
row_1.createCell(row1_lastCellNum + 1).setCellValue("计");
// if (lastProjectName.equals("请假") || lastProjectName.equals("调休")) {
// row_1.createCell(row1_lastCellNum).setCellValue("合计");
// totalRow1.createCell(row1_lastCellNum).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
// totalRow2.createCell(row1_lastCellNum).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
// } else {
row_1.createCell(row1_lastCellNum + 1).setCellValue("计");
totalRow1.createCell(row1_lastCellNum + 1).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
totalRow2.createCell(row1_lastCellNum + 1).setCellValue(userWorkTimeStatisticsByProject.getTotalTime());
}
// }
for (int i = 0; i < userWorkTimeStatisticsReport.size() - 2; i++) {
UserWorkTimeStatisticsByProject userWorkTimeStatisticsByProject1 = userWorkTimeStatisticsReport.get(i);
......@@ -885,8 +883,7 @@ public class StatisticsServiceImpl implements StatisticsService {
// 项目的工时
for (int j = 0; j < projectWorkTimeAndType1.size(); j++) {
for (int k = 2; k < row1_lastCellNum; k++) {
// 除开请假和调休
if (row_1.getCell(k) != null && !projectWorkTimeAndType1.get(j).getProjectName().equals("请假") && !projectWorkTimeAndType1.get(j).getProjectName().equals("调休") && projectWorkTimeAndType1.get(j).getProjectName().equals(row_1.getCell(k).getStringCellValue())) {
if (row_1.getCell(k) != null && projectWorkTimeAndType1.get(j).getProjectName().equals(row_1.getCell(k).getStringCellValue())) {
if (projectWorkTimeAndType1.get(j).getNormalTime() != null) {
HSSFCell cell_k_1 = row_i.createCell(k);
cell_k_1.setCellValue(projectWorkTimeAndType1.get(j).getNormalTime());
......@@ -895,14 +892,13 @@ public class StatisticsServiceImpl implements StatisticsService {
HSSFCell cell_k_2 = row_i.createCell(k + 1);
cell_k_2.setCellValue(projectWorkTimeAndType1.get(j).getOverTime());
}
break;
}
if (row_1.getCell(k) != null && projectWorkTimeAndType1.get(j).getProjectName().equals(row_1.getCell(k).getStringCellValue())) {
if (projectWorkTimeAndType1.get(j).getNormalTime() != null) {
HSSFCell cell_k_1 = row_i.createCell(k);
cell_k_1.setCellValue(projectWorkTimeAndType1.get(j).getNormalTime());
}
}
// if (row_1.getCell(k) != null && projectWorkTimeAndType1.get(j).getProjectName().equals(row_1.getCell(k).getStringCellValue())) {
// if (projectWorkTimeAndType1.get(j).getNormalTime() != null) {
// HSSFCell cell_k_1 = row_i.createCell(k);
// cell_k_1.setCellValue(projectWorkTimeAndType1.get(j).getNormalTime());
// }
// }
}
}
......@@ -912,7 +908,7 @@ public class StatisticsServiceImpl implements StatisticsService {
}
// 合并单元格,第一行
CellRangeAddress cellRangeAddress = new CellRangeAddress(0, 0, 0, row1_lastCellNum);
CellRangeAddress cellRangeAddress = new CellRangeAddress(0, 0, 0, row1_lastCellNum + 1);
sheet1.addMergedRegion(cellRangeAddress);
setBorderStyle(cellRangeAddress, sheet1);
// 序号
......@@ -936,9 +932,9 @@ public class StatisticsServiceImpl implements StatisticsService {
// 项目行和总计行,正常工时和加班工时表头列数
short lastCellNum = row_2.getLastCellNum();
for (int i = 0; i < lastCellNum / 2; i++) {
if (row_1.getCell(2 * i).getStringCellValue().equals("请假") || row_1.getCell(2 * i).getStringCellValue().equals("调休")) {
continue;
}
// if (row_1.getCell(2 * i).getStringCellValue().equals("请假") || row_1.getCell(2 * i).getStringCellValue().equals("调休")) {
// continue;
// }
// 总计行
CellRangeAddress cellRangeAddress4 = new CellRangeAddress(userWorkTimeStatisticsReport.size() + 2, userWorkTimeStatisticsReport.size() + 2, i * 2, i * 2 + 1);
sheet1.addMergedRegion(cellRangeAddress4);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment