|
@@ -20,6 +20,7 @@ import com.xjrsoft.module.attendance.mapper.AttendanceRuleDetailsMapper;
|
|
|
import com.xjrsoft.module.attendance.mapper.AttendanceUserRelationMapper;
|
|
|
import com.xjrsoft.module.attendance.service.IAttendanceRuleCategoryService;
|
|
|
import com.xjrsoft.module.attendance.vo.AttendanceRuleDetailsUserVo;
|
|
|
+import com.xjrsoft.module.attendance.vo.TimeRangeVo;
|
|
|
import com.xjrsoft.module.concat.service.IXjrUserService;
|
|
|
import com.xjrsoft.module.organization.entity.UserDeptRelation;
|
|
|
import com.xjrsoft.module.student.entity.BaseStudent;
|
|
@@ -33,6 +34,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.time.DayOfWeek;
|
|
|
import java.time.LocalDateTime;
|
|
|
+import java.time.temporal.ChronoUnit;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
@@ -493,4 +495,23 @@ public class AttendanceRuleCategoryServiceImpl extends MPJBaseServiceImpl<Attend
|
|
|
}
|
|
|
return dataMap;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<TimeRangeVo> getAllTimeRange(LocalDateTime startTime, LocalDateTime endTime) {
|
|
|
+ long between = ChronoUnit.DAYS.between(startTime, endTime);
|
|
|
+ List<String> dayOfWeeks = new ArrayList<>();
|
|
|
+ Map<String, LocalDateTime> timeMap = new HashMap<>();
|
|
|
+ for (int i = 0; i <= between; i ++) {
|
|
|
+ String name = startTime.plusDays(i).getDayOfWeek().name();
|
|
|
+ dayOfWeeks.add(name);
|
|
|
+ timeMap.put(name, startTime.plusDays(i));
|
|
|
+ }
|
|
|
+
|
|
|
+ List<AttendanceRuleDetails> detailsList = detailsMapper.selectList(
|
|
|
+ new QueryWrapper<AttendanceRuleDetails>().lambda()
|
|
|
+ .in(AttendanceRuleDetails::getDateType, dayOfWeeks)
|
|
|
+ );
|
|
|
+
|
|
|
+ return null;
|
|
|
+ }
|
|
|
}
|