diff --git a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTaskController.java b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTaskController.java index 8bbea6ec..8c519261 100644 --- a/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTaskController.java +++ b/blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTaskController.java @@ -400,49 +400,51 @@ public class BsEfficiencyTaskController extends BladeController { reportParam.setEmployeeNameExact(bsEfficiencyTask.getEmployeeNameExact()); reportParam.setYearMonth(bsEfficiencyTask.getYearMonth()); List reports = bsEfficiencyTaskReportService.selectBsEfficiencyTaskReportList(reportParam); - List firstParams = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper().eq(BsEfficiencyTaskParamEntity::getReportId, reports.get(0).getId())); - List> tableColumnList = new ArrayList<>(); - LinkedHashMap headMap = new LinkedHashMap<>(); - headMap.put(this.EMPLOYEE_CODE, "employeeCode"); - headMap.put(this.EMPLOYEE_NAME, "employeeName"); - int num = 1; - for (BsEfficiencyTaskParamEntity param : firstParams) { - headMap.put(param.getParamName(), "temp" + num); - num++; - } - headMap.put(this.TOTAL_SCORE, "totalScore"); - for (Map.Entry entry : headMap.entrySet()) { - LinkedHashMap tableColumn = new LinkedHashMap<>(); - tableColumn.put("label", entry.getKey()); - tableColumn.put("prop", entry.getValue()); - tableColumnList.add(tableColumn); - } - Map table = new HashMap<>(); - table.put("tableColumn", tableColumnList); - List> tableDataList = new ArrayList(); - for (BsEfficiencyTaskReportEntity report : reports) { - List params = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper().eq(BsEfficiencyTaskParamEntity::getReportId, report.getId())); - LinkedHashMap tableData = new LinkedHashMap<>(); - for (BsEfficiencyTaskParamEntity param : params) { - for (Map.Entry entry : headMap.entrySet()) { - if (param.getParamName().equals(entry.getKey())) { - tableData.put(entry.getValue(), param.getParamValue()); + if (!CollectionUtils.isEmpty(reports)) { + List firstParams = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper().eq(BsEfficiencyTaskParamEntity::getReportId, reports.get(0).getId())); + List> tableColumnList = new ArrayList<>(); + LinkedHashMap headMap = new LinkedHashMap<>(); + headMap.put(this.EMPLOYEE_CODE, "employeeCode"); + headMap.put(this.EMPLOYEE_NAME, "employeeName"); + int num = 1; + for (BsEfficiencyTaskParamEntity param : firstParams) { + headMap.put(param.getParamName(), "temp" + num); + num++; + } + headMap.put(this.TOTAL_SCORE, "totalScore"); + for (Map.Entry entry : headMap.entrySet()) { + LinkedHashMap tableColumn = new LinkedHashMap<>(); + tableColumn.put("label", entry.getKey()); + tableColumn.put("prop", entry.getValue()); + tableColumnList.add(tableColumn); + } + Map table = new HashMap<>(); + table.put("tableColumn", tableColumnList); + List> tableDataList = new ArrayList(); + for (BsEfficiencyTaskReportEntity report : reports) { + List params = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper().eq(BsEfficiencyTaskParamEntity::getReportId, report.getId())); + LinkedHashMap tableData = new LinkedHashMap<>(); + for (BsEfficiencyTaskParamEntity param : params) { + for (Map.Entry entry : headMap.entrySet()) { + if (param.getParamName().equals(entry.getKey())) { + tableData.put(entry.getValue(), param.getParamValue()); + } } } + tableData.put(headMap.get(this.EMPLOYEE_CODE), report.getEmployeeCode()); + tableData.put(headMap.get(this.EMPLOYEE_NAME), report.getEmployeeName()); + tableData.put(headMap.get(this.TOTAL_SCORE), report.getTotalScore()); + R userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode")); + if (userInfoResult.getData() == null || userInfoResult.getData().getUser() == null || !userInfoResult.getData().getUser().getRealName().equals(tableData.get("employeeName"))) { + tableData.put("isSysUser", "0"); + } else { + tableData.put("isSysUser", "1"); + } + tableDataList.add(tableData); } - tableData.put(headMap.get(this.EMPLOYEE_CODE), report.getEmployeeCode()); - tableData.put(headMap.get(this.EMPLOYEE_NAME), report.getEmployeeName()); - tableData.put(headMap.get(this.TOTAL_SCORE), report.getTotalScore()); - R userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode")); - if (userInfoResult.getData() == null || userInfoResult.getData().getUser() == null || !userInfoResult.getData().getUser().getRealName().equals(tableData.get("employeeName"))) { - tableData.put("isSysUser", "0"); - } else { - tableData.put("isSysUser", "1"); - } - tableDataList.add(tableData); + table.put("tableDataList", tableDataList); + task.setTable(table); } - table.put("tableDataList", tableDataList); - task.setTable(table); return R.data(task); }