plannerAllToday fixup

This commit is contained in:
aalehin 2022-12-08 13:37:20 +03:00
parent 2b1efc3bcb
commit e65973cf90

View file

@ -4,10 +4,13 @@ import com.hazelcast.core.HazelcastInstance;
import com.hazelcast.core.IMap;
import ru.clearing.classes.statics.data.scheduler.ClearingCalendar;
import ru.clearing.classes.statics.data.scheduler.Planner;
import ru.clearing.classes.statics.data.scheduler.PlannerAllToday;
import ru.clearing.classes.statics.data.scheduler.PlannerTemplate;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import static ru.spcex.clearing.imdg.IMDGDistributedNames.*;
@ -15,16 +18,60 @@ public class Util {
public static void makeSchedulerAllTodayMap(HazelcastInstance hazelcastInstance) {
IMap<Long, Planner> plannerMap = hazelcastInstance.getMap(Map_Planner);
IMap<Long, ClearingCalendar> tradingCalendarMap = hazelcastInstance.getMap(Map_ClearingCalendar);
IMap<Long, ClearingCalendar> clearingCalendarMap = hazelcastInstance.getMap(Map_ClearingCalendar);
IMap<Long, PlannerTemplate> plannerTemplateMap = hazelcastInstance.getMap(Map_PlannerTemplate);
Boolean isTradingCalendarEmpty = tradingCalendarMap.isEmpty();
List<Planner> listOfSchedulerOnDate = plannerMap.values().stream().filter((x) -> x.getClearingDate().isEqual(LocalDate.now())).toList();
if (isTradingCalendarEmpty) {
//то из timeTable все активные записи.
} else {
LocalDate currentDate = LocalDate.now();
List<PlannerAllToday> listOfPlannerAllToday = new ArrayList<>();
//= plannerMap.values().stream().filter((x) -> x.getClearingDate().isEqual(currentDate)).toList();
if (!plannerMap.isEmpty()) {
switch (currentDate.getDayOfWeek()) {
case MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY -> listOfPlannerAllToday.addAll(getPlannersOnMonday2Friday(currentDate, clearingCalendarMap, plannerTemplateMap));
case SUNDAY, SATURDAY -> listOfPlannerAllToday.addAll(getPlannersOnSunday2Saturday());
}
}
PlannerAllToday plannerAllToday = new PlannerAllToday();
}
private static List<PlannerAllToday> getPlannersOnMonday2Friday(LocalDate currentDate, IMap<Long, ClearingCalendar> clearingCalendarMap, IMap<Long, PlannerTemplate> plannerTemplateMap) {
List<PlannerAllToday> res = new ArrayList<>();
if (clearingCalendarMap == null || clearingCalendarMap.isEmpty()) {
for (PlannerTemplate plannerTemplate : plannerTemplateMap.values()) {
res.add(createPlannerAllTodayFromPlannerTemplate(plannerTemplate));
}
} else {
Optional<ClearingCalendar> clearingCalendarOptional = clearingCalendarMap.values().stream().filter((calendar) -> {
return calendar.getClearingDate().isEqual(currentDate);
}).findFirst();
if (clearingCalendarOptional.isPresent()) {
ClearingCalendar calendar = clearingCalendarOptional.get();
if (calendar.getDayStatus().equalsIgnoreCase("active")) { //todo уточнить какой здесь может быть статус
}
}
}
return res;
}
private static List<PlannerAllToday> getPlannersOnSunday2Saturday() {
List<PlannerAllToday> res = new ArrayList<>();
return res;
}
private static PlannerAllToday createPlannerAllTodayFromPlanner(Planner planner) {
PlannerAllToday res = new PlannerAllToday();
return res;
}
private static PlannerAllToday createPlannerAllTodayFromPlannerTemplate(PlannerTemplate plannerTemplate) {
PlannerAllToday res = new PlannerAllToday();
return res;
}
}