浏览代码

后期年假记录统计数据修改

yanliming 11 月之前
父节点
当前提交
7733a6070c

+ 23 - 3
web/src/main/java/com/jpsoft/shinestar/modules/business/controller/WorkScheduleAttendanceController.java

@@ -739,6 +739,10 @@ public class WorkScheduleAttendanceController {
                 BigDecimal businessTripNum = businessOutService.sumDaysByPersonIdAndTimeRange(pi.getId(), startDate, endDate);
                 wsaDTO.setBusinessTripNum(businessTripNum);
 
+                //请年假天数yearLeaveNum
+                BigDecimal yearLeaveNum = yearRequestForLeaveInfoService.sumDaysByPersonIdAndTimeRange(pi.getId(), startDate, endDate);
+                wsaDTO.setYearLeaveNum(yearLeaveNum);
+
                 //先查总班次 确认正常上班和休息
 //                List<WorkPersonScheduling> startWorkPersonScheduling
 //                        = workPersonSchedulingService.findByPersonIdSDateAndEDate(pi.getId(),startDate,endDate,false);
@@ -752,6 +756,10 @@ public class WorkScheduleAttendanceController {
                 //全勤天数totalAttendanceDays
                 BigDecimal totalAttendanceDays = workScheduleAttendanceService.findTotalAttendance(pi.getId(), startDate, endDate, "1");
                 totalAttendanceDays = totalAttendanceDays.add(businessTripNum);
+
+                //加上年假天数
+                totalAttendanceDays = totalAttendanceDays.add(yearLeaveNum);
+
                 wsaDTO.setTotalAttendanceDays(totalAttendanceDays);
                 //迟到分钟lateMinutes
                 Map<String, Object> searchParams3 = new HashMap<>();
@@ -781,6 +789,7 @@ public class WorkScheduleAttendanceController {
                 //未刷次数notSwipingNum = 旷工次数
                 Map<String, Object> searchParams9 = new HashMap<>();
                 searchParams9.put("result", "0");
+                searchParams9.put("noWorkStatus7", "7");//年假未打卡不算
                 int notSwipingNum = workScheduleAttendanceService.findCountByParams(pi.getId(), startDate, endDate, searchParams9);
                 wsaDTO.setNotSwipingNum(notSwipingNum);
                 //签到次数signNum
@@ -1665,9 +1674,15 @@ public class WorkScheduleAttendanceController {
                                     } else if ("4".equals(wsa.getWorkStatus())) {
                                         //请假
                                         onWorkResult = "13";
-                                    } else if (StringUtils.isEmpty(wsa.getWorkStatus())) {
+                                    }
+                                    else if ("7".equals(wsa.getWorkStatus())) {
+                                        //年假
+                                        onWorkResult = "14";
+                                    }
+                                    else if (StringUtils.isEmpty(wsa.getWorkStatus())) {
                                         onWorkResult = "";
-                                    } else {
+                                    }
+                                    else {
                                         onWorkResult = wsa.getResult();
                                     }
                                     onWorkStatus = wsa.getWorkStatus();
@@ -1702,7 +1717,12 @@ public class WorkScheduleAttendanceController {
                                     } else if ("4".equals(wsa.getWorkStatus())) {
                                         //请假
                                         offWorkResult = "13";
-                                    } else if (StringUtils.isEmpty(wsa.getWorkStatus())) {
+                                    }
+                                    else if ("7".equals(wsa.getWorkStatus())) {
+                                        //年假
+                                        offWorkResult = "14";
+                                    }
+                                    else if (StringUtils.isEmpty(wsa.getWorkStatus())) {
                                         //状态为空 代表没有数据
                                         offWorkResult = "";
                                     } else if (StringUtils.isNotEmpty(wsa.getWorkOverPersonId())) {