diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/download/ExportFileController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/download/ExportFileController.java index 8d3aa23..dc13d2f 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/download/ExportFileController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/download/ExportFileController.java @@ -661,7 +661,6 @@ public class ExportFileController { } } } - MultiSheetExcelExporter exporter = new MultiSheetExcelExporter(); //将表格时间区间取出来做标题 String title = bean.getMonth(); @@ -712,6 +711,11 @@ public class ExportFileController { dayTable.setEndDate(monthFirstAndLast.get(1)); if (bean.getOrgId() != null) { dayTable.setOrgId(String.valueOf(bean.getOrgId())); + }else{ + //受限于当前登录人 + if(!bean.getOrgList().isEmpty()){ + dayTable.setOrgList(bean.getOrgList()); + } } dayTable.setName(bean.getUserName()); headers.entrySet() @@ -721,6 +725,11 @@ public class ExportFileController { att.setAttCurrentMonth(bean.getMonth()); if (bean.getOrgId() != null) { att.setOrgId(bean.getOrgId()); + }else{ + //受限于当前登录人 + if(!bean.getOrgList().isEmpty()){ + att.setOrgList(bean.getOrgList()); + } } att.setUserName(bean.getUserName()); List list = attendanceDetailsService.getOutCountList(att); 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