diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java index 6958ac0..0e7ca67 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java @@ -39,4 +39,6 @@ public interface LeaveReportingDao { List getUserList(@Param("params")LeaveReportingBean bean); List getFestivalAndHoliday(LeaveReportingBean bean); + + String getAttTypeByUserId(Long userId); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java index 0e79a27..2522275 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java @@ -123,24 +123,26 @@ public class LeaveReportingServiceImpl implements LeaveReportingService { @Override public LeaveReportingBean getDays(LeaveReportingBean bean) { try { + //只能查自己部门的人 + Long userId = SecurityUtils.getLoginUser().getSysUser().getUserId(); + //1 公司机关 2 项目部 + String attType= leaveReportingDao.getAttTypeByUserId(userId); // 查询出所有周末以及节假日的日期 - List holidays = leaveReportingDao.getFestivalAndHoliday(bean); - + List holidays = leaveReportingDao.getFestivalAndHoliday(bean); + if("2".equals(attType)){ + holidays.clear(); + } // 将节假日转换为 Set,提高查找效率 Set holidaySet = new HashSet<>(); for (LeaveReportingBean holiday : holidays) { holidaySet.add(holiday.getDate()); } - Date startDate = null; startDate = parseDate(String.valueOf(bean.getLeaveStartDate())); Date endDate = parseDate(String.valueOf(bean.getLeaveEndDate())); - Calendar calendar = Calendar.getInstance(); calendar.setTime(startDate); - int totalDays = 0; - while (!calendar.getTime().after(endDate)) { String currentDate = formatDate(calendar.getTime()); if (!holidaySet.contains(currentDate)) { diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml index 1fe4b47..181a364 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml @@ -198,4 +198,11 @@ sys_holiday where type ='1' + \ No newline at end of file