Исправил создание plannerAllToday если тек.день=ПН-ПТ и не задан clearingCalendar (т.е. нет записи).
This commit is contained in:
parent
8755f3e1ca
commit
2a8bda41e9
1 changed files with 6 additions and 7 deletions
|
|
@ -21,7 +21,7 @@ import ru.spcex.clearing.platform.messaging.service.QueueConsumer;
|
||||||
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
import ru.spcex.clearing.platform.messaging.service.RequestInfoUpdate;
|
||||||
import ru.spcex.clearing.scheduler.PlannerAllTodayBuilder;
|
import ru.spcex.clearing.scheduler.PlannerAllTodayBuilder;
|
||||||
import ru.spcex.clearing.util.security.UserRoleVerification;
|
import ru.spcex.clearing.util.security.UserRoleVerification;
|
||||||
import ru.spcex.platform.enumeration.DayStatus;
|
import ru.spcex.platform.enumeration.Status;
|
||||||
import ru.spcex.platform.imdg.api.Imdg;
|
import ru.spcex.platform.imdg.api.Imdg;
|
||||||
import ru.spcex.platform.imdg.api.ImdgProvider;
|
import ru.spcex.platform.imdg.api.ImdgProvider;
|
||||||
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
import ru.spcex.platform.utils.enumeration.IMessageResolver;
|
||||||
|
|
@ -106,7 +106,7 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
plannerTemplate.setSecurityId(req.getSecurityId());
|
plannerTemplate.setSecurityId(req.getSecurityId());
|
||||||
plannerTemplateMap.insert(plannerTemplate);
|
plannerTemplateMap.insert(plannerTemplate);
|
||||||
|
|
||||||
if (todayWorkDay()) {
|
if (todayWorkDay() && Status.Active.equalsByKey(plannerTemplate.getTaskStatus())) {
|
||||||
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
PlannerAllToday plannerAllToday = PlannerAllTodayBuilder.builder().append(plannerTemplate).build();
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
addToPlannerQueue(TaskManager.Process.add, plannerAllToday);
|
addToPlannerQueue(TaskManager.Process.add, plannerAllToday);
|
||||||
|
|
@ -143,7 +143,7 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
plannerAllToday.setId(oldPlannerAllToday.getId());
|
plannerAllToday.setId(oldPlannerAllToday.getId());
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
addToPlannerQueue(TaskManager.Process.update, oldPlannerAllToday);
|
addToPlannerQueue(TaskManager.Process.update, oldPlannerAllToday);
|
||||||
}else {
|
} else if (Status.Active.equalsByKey(plannerTemplate.getTaskStatus())) {
|
||||||
plannerAllTodayMap.insert(plannerAllToday);
|
plannerAllTodayMap.insert(plannerAllToday);
|
||||||
addToPlannerQueue(TaskManager.Process.add, plannerAllToday);
|
addToPlannerQueue(TaskManager.Process.add, plannerAllToday);
|
||||||
}
|
}
|
||||||
|
|
@ -165,7 +165,7 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
|
|
||||||
if (todayWorkDay()) {
|
if (todayWorkDay()) {
|
||||||
PlannerAllToday plannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
PlannerAllToday plannerAllToday = plannerAllTodayMap.getSingleObjectBySQL(String.format("parentId = %s", plannerTemplate.getId()));
|
||||||
if (plannerAllToday != null){
|
if (plannerAllToday != null) {
|
||||||
plannerAllTodayMap.delete(plannerAllToday);
|
plannerAllTodayMap.delete(plannerAllToday);
|
||||||
addToPlannerQueue(TaskManager.Process.delete, plannerAllToday);
|
addToPlannerQueue(TaskManager.Process.delete, plannerAllToday);
|
||||||
}
|
}
|
||||||
|
|
@ -178,13 +178,12 @@ public class PlannerTemplateService extends QueueConsumer implements Initializin
|
||||||
LocalDate currentDate = LocalDate.now();
|
LocalDate currentDate = LocalDate.now();
|
||||||
boolean isWeekend = Arrays.asList(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY).contains(currentDate.getDayOfWeek());
|
boolean isWeekend = Arrays.asList(DayOfWeek.SATURDAY, DayOfWeek.SUNDAY).contains(currentDate.getDayOfWeek());
|
||||||
//проверим есть ли другие записи clearingCalendar с таким же clearingDate, если они актуальные ничего не удаляем
|
//проверим есть ли другие записи clearingCalendar с таким же clearingDate, если они актуальные ничего не удаляем
|
||||||
Collection<ClearingCalendar> clearingCalendars = clearingCalendarMap.getCollectionObjectsByFieldValues(Map.of("dayStatus", DayStatus.Workday.getKey(),
|
Collection<ClearingCalendar> clearingCalendars = clearingCalendarMap.getCollectionObjectsByFieldValues(Map.of("clearingDate", currentDate));
|
||||||
"clearingDate", currentDate));
|
|
||||||
if (clearingCalendars != null && !clearingCalendars.isEmpty()) {
|
if (clearingCalendars != null && !clearingCalendars.isEmpty()) {
|
||||||
for (ClearingCalendar calendar : clearingCalendars) {
|
for (ClearingCalendar calendar : clearingCalendars) {
|
||||||
if (isValidWorkday(calendar, isWeekend)) return true;
|
if (isValidWorkday(calendar, isWeekend)) return true;
|
||||||
}
|
}
|
||||||
}
|
} else return !isWeekend;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue