|
@@ -8108,7 +8108,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
List<SysRichFunction> functionAllList = sysFunctionMapper.getRoleFunctions(targetUser.getRoleId(), "全公司填报及时率");
|
|
List<SysRichFunction> functionAllList = sysFunctionMapper.getRoleFunctions(targetUser.getRoleId(), "全公司填报及时率");
|
|
List<SysRichFunction> functionDeptList = sysFunctionMapper.getRoleFunctions(targetUser.getRoleId(), "负责部门填报及时率");
|
|
List<SysRichFunction> functionDeptList = sysFunctionMapper.getRoleFunctions(targetUser.getRoleId(), "负责部门填报及时率");
|
|
//获取到公司设置的特殊节假日设置
|
|
//获取到公司设置的特殊节假日设置
|
|
- List<HolidaySetting> holidaySettingList = holidaySettingService.list(new LambdaQueryWrapper<HolidaySetting>().eq(HolidaySetting::getCompanyId, targetUser.getCompanyId()));
|
|
|
|
|
|
+ List<HolidaySetting> holidaySettingList = holidaySettingService.list(new LambdaQueryWrapper<HolidaySetting>().eq(HolidaySetting::getCompanyId, targetUser.getCompanyId()).isNotNull(HolidaySetting::getHolidayDate));
|
|
List<Integer> deptIds=new ArrayList<>();
|
|
List<Integer> deptIds=new ArrayList<>();
|
|
List<Department> allDepartmentList=departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id",targetUser.getCompanyId()));
|
|
List<Department> allDepartmentList=departmentMapper.selectList(new QueryWrapper<Department>().eq("company_id",targetUser.getCompanyId()));
|
|
List<Department> userDepartmentList = departmentMapper.selectList(new QueryWrapper<Department>().eq("manager_id", targetUser.getId()).eq("company_id",targetUser.getCompanyId()));
|
|
List<Department> userDepartmentList = departmentMapper.selectList(new QueryWrapper<Department>().eq("manager_id", targetUser.getId()).eq("company_id",targetUser.getCompanyId()));
|
|
@@ -8160,6 +8160,10 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
List<LeaveSheet> leaveSheetList = leaveSheetMapper.selectList(new LambdaQueryWrapper<LeaveSheet>()
|
|
List<LeaveSheet> leaveSheetList = leaveSheetMapper.selectList(new LambdaQueryWrapper<LeaveSheet>()
|
|
.eq(LeaveSheet::getCompanyId, targetUser.getCompanyId()).le(LeaveSheet::getStartDate,endDate).ge(LeaveSheet::getEndDate,startDate));
|
|
.eq(LeaveSheet::getCompanyId, targetUser.getCompanyId()).le(LeaveSheet::getStartDate,endDate).ge(LeaveSheet::getEndDate,startDate));
|
|
List<TimelinessRateVO> resultList=new ArrayList<>();
|
|
List<TimelinessRateVO> resultList=new ArrayList<>();
|
|
|
|
+ //针对美莱德 去除2024-02-09
|
|
|
|
+ //针对人员已经特殊节假日设置去除相对应的日期
|
|
|
|
+ List<HolidaySetting> allUsersSetting = holidaySettingList.stream().filter(h -> h.getRangeType() == 0).collect(Collectors.toList());
|
|
|
|
+ List<HolidaySetting> targetUserOrDeptSetting = holidaySettingList.stream().filter(h -> h.getRangeType() == 1).collect(Collectors.toList());
|
|
for (User user : userList){
|
|
for (User user : userList){
|
|
LocalDateTime sDate;
|
|
LocalDateTime sDate;
|
|
LocalDateTime eDate = LocalDate.parse(endDate).atTime(LocalTime.MIN);
|
|
LocalDateTime eDate = LocalDate.parse(endDate).atTime(LocalTime.MIN);
|
|
@@ -8173,10 +8177,6 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
}
|
|
}
|
|
}else sDate = LocalDate.parse(startDate).atTime(LocalTime.MIN);
|
|
}else sDate = LocalDate.parse(startDate).atTime(LocalTime.MIN);
|
|
AtomicReference<List<LocalDateTime>> dateTimeList= new AtomicReference<>(getDays(sDate, eDate));
|
|
AtomicReference<List<LocalDateTime>> dateTimeList= new AtomicReference<>(getDays(sDate, eDate));
|
|
- //针对美莱德 去除2024-02-09
|
|
|
|
- //针对人员已经特殊节假日设置去除相对应的日期
|
|
|
|
- List<HolidaySetting> allUsersSetting = holidaySettingList.stream().filter(h -> h.getRangeType() == 0).collect(Collectors.toList());
|
|
|
|
- List<HolidaySetting> targetUserOrDeptSetting = holidaySettingList.stream().filter(h -> h.getRangeType() == 1).collect(Collectors.toList());
|
|
|
|
if(allUsersSetting.size()>0){
|
|
if(allUsersSetting.size()>0){
|
|
List<LocalDateTime> holidayDateList = allUsersSetting.stream().map(h->h.getHolidayDate().atTime(LocalTime.MIN)).collect(Collectors.toList());
|
|
List<LocalDateTime> holidayDateList = allUsersSetting.stream().map(h->h.getHolidayDate().atTime(LocalTime.MIN)).collect(Collectors.toList());
|
|
dateTimeList.set(dateTimeList.get().stream().filter(d -> !holidayDateList.contains(d)).collect(Collectors.toList()));
|
|
dateTimeList.set(dateTimeList.get().stream().filter(d -> !holidayDateList.contains(d)).collect(Collectors.toList()));
|
|
@@ -8184,15 +8184,15 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
if(targetUserOrDeptSetting.size()>0){
|
|
if(targetUserOrDeptSetting.size()>0){
|
|
targetUserOrDeptSetting.forEach(t->{
|
|
targetUserOrDeptSetting.forEach(t->{
|
|
LocalDateTime holidayDate = t.getHolidayDate().atTime(LocalTime.MIN);
|
|
LocalDateTime holidayDate = t.getHolidayDate().atTime(LocalTime.MIN);
|
|
- if(!StringUtils.isEmpty(t.getTargetUsers())){
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(t.getTargetUsers())&&!t.getTargetUsers().equals("")){
|
|
String[] userSplit = t.getTargetUsers().split(",");
|
|
String[] userSplit = t.getTargetUsers().split(",");
|
|
List<String> userAsList = Arrays.asList(userSplit);
|
|
List<String> userAsList = Arrays.asList(userSplit);
|
|
if(userAsList.contains(user.getId())){
|
|
if(userAsList.contains(user.getId())){
|
|
dateTimeList.set(dateTimeList.get().stream().filter(d -> !d.isEqual(holidayDate)).collect(Collectors.toList()));
|
|
dateTimeList.set(dateTimeList.get().stream().filter(d -> !d.isEqual(holidayDate)).collect(Collectors.toList()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(!StringUtils.isEmpty(t.getTargetDepts())){
|
|
|
|
- String[] deptSplit = t.getTargetUsers().split(",");
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(t.getTargetDepts())&&!t.getTargetDepts().equals("")){
|
|
|
|
+ String[] deptSplit = t.getTargetDepts().split(",");
|
|
List<String> deptAsList = Arrays.asList(deptSplit);
|
|
List<String> deptAsList = Arrays.asList(deptSplit);
|
|
for (String deptId : deptAsList) {
|
|
for (String deptId : deptAsList) {
|
|
List<Integer> subDeptIds = getBranchDepartment(Integer.valueOf(deptId), departmentList);
|
|
List<Integer> subDeptIds = getBranchDepartment(Integer.valueOf(deptId), departmentList);
|
|
@@ -8266,7 +8266,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
if(targetUserOrDeptSetting.size()>0){
|
|
if(targetUserOrDeptSetting.size()>0){
|
|
targetUserOrDeptSetting.forEach(t->{
|
|
targetUserOrDeptSetting.forEach(t->{
|
|
LocalDateTime holidayDate = t.getHolidayDate().atTime(LocalTime.MIN);
|
|
LocalDateTime holidayDate = t.getHolidayDate().atTime(LocalTime.MIN);
|
|
- if(!StringUtils.isEmpty(t.getTargetUsers())){
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(t.getTargetUsers())&&!t.getTargetUsers().equals("")){
|
|
String[] userSplit = t.getTargetUsers().split(",");
|
|
String[] userSplit = t.getTargetUsers().split(",");
|
|
List<String> userAsList = Arrays.asList(userSplit);
|
|
List<String> userAsList = Arrays.asList(userSplit);
|
|
if(userAsList.contains(user.getId())){
|
|
if(userAsList.contains(user.getId())){
|
|
@@ -8274,8 +8274,8 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
|
|
list.set(list.get().stream().filter(d -> !d.isEqual(holidayDate)).collect(Collectors.toList()));
|
|
list.set(list.get().stream().filter(d -> !d.isEqual(holidayDate)).collect(Collectors.toList()));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if(!StringUtils.isEmpty(t.getTargetDepts())){
|
|
|
|
- String[] deptSplit = t.getTargetUsers().split(",");
|
|
|
|
|
|
+ if(!StringUtils.isEmpty(t.getTargetDepts())&&!t.getTargetDepts().equals("")){
|
|
|
|
+ String[] deptSplit = t.getTargetDepts().split(",");
|
|
List<String> deptAsList = Arrays.asList(deptSplit);
|
|
List<String> deptAsList = Arrays.asList(deptSplit);
|
|
for (String deptId : deptAsList) {
|
|
for (String deptId : deptAsList) {
|
|
List<Integer> subDeptIds = getBranchDepartment(Integer.valueOf(deptId), departmentList);
|
|
List<Integer> subDeptIds = getBranchDepartment(Integer.valueOf(deptId), departmentList);
|