From 454f69b511fd323ced174a7da5254d28e74d61bd Mon Sep 17 00:00:00 2001
From: Patrick Fic <>
Date: Wed, 29 Dec 2021 17:50:17 -0600
Subject: [PATCH] IO-1605 Refactor smart scheduling.
---
client/package.json | 2 +-
.../scheduler-calendar-wrapper.component.jsx | 13 +
.../schedule-calendar.component.jsx | 2 +
.../schedule-verify-integrity.component.jsx | 60 ++++
client/src/graphql/appointments.queries.js | 8 +-
.../redux/application/application.actions.js | 4 +
.../redux/application/application.reducer.js | 6 +-
.../redux/application/application.sagas.js | 24 +-
.../application/application.selectors.js | 4 +
.../redux/application/application.types.js | 1 +
client/src/utils/SSSUtils.js | 3 +
server/graphql-client/queries.js | 68 +++--
server/scheduling/scheduling-job.js | 282 ++++++++++++------
13 files changed, 361 insertions(+), 116 deletions(-)
create mode 100644 client/src/components/schedule-verify-integrity/schedule-verify-integrity.component.jsx
diff --git a/client/package.json b/client/package.json
index 71d7bfa89..1153baef0 100644
--- a/client/package.json
+++ b/client/package.json
@@ -117,9 +117,9 @@
"devDependencies": {
"@sentry/webpack-plugin": "^1.18.3",
"@testing-library/cypress": "^8.0.2",
- "react-error-overlay": "6.0.9",
"cypress": "^9.1.1",
"eslint-plugin-cypress": "^2.12.1",
+ "react-error-overlay": "6.0.9",
"redux-logger": "^3.0.6",
"source-map-explorer": "^2.5.2"
}
diff --git a/client/src/components/schedule-calendar-wrapper/scheduler-calendar-wrapper.component.jsx b/client/src/components/schedule-calendar-wrapper/scheduler-calendar-wrapper.component.jsx
index 1f38fa348..942f2908f 100644
--- a/client/src/components/schedule-calendar-wrapper/scheduler-calendar-wrapper.component.jsx
+++ b/client/src/components/schedule-calendar-wrapper/scheduler-calendar-wrapper.component.jsx
@@ -10,13 +10,17 @@ import Event from "../job-at-change/schedule-event.container";
import HeaderComponent from "./schedule-calendar-header.component";
import "./schedule-calendar.styles.scss";
import JobDetailCards from "../job-detail-cards/job-detail-cards.component";
+import { selectProblemJobs } from "../../redux/application/application.selectors";
+import { Alert } from "antd";
const mapStateToProps = createStructuredSelector({
bodyshop: selectBodyshop,
+ problemJobs: selectProblemJobs,
});
const localizer = momentLocalizer(moment);
export function ScheduleCalendarWrapperComponent({
bodyshop,
+ problemJobs,
data,
refetch,
defaultView,
@@ -48,6 +52,15 @@ export function ScheduleCalendarWrapperComponent({
return (
<>
+ {problemJobs &&
+ problemJobs.map((problem) => (
+
+ ))}
+
+