diff --git a/client/src/components/job-at-change/schedule-event.component.jsx b/client/src/components/job-at-change/schedule-event.component.jsx
index c7cd21f8f..45e3fa9c0 100644
--- a/client/src/components/job-at-change/schedule-event.component.jsx
+++ b/client/src/components/job-at-change/schedule-event.component.jsx
@@ -1,4 +1,4 @@
-import { Button, Popover, Space } from "antd";
+import { Button, Divider, Popover, Space } from "antd";
import { AlertFilled } from "@ant-design/icons";
import React, { useState } from "react";
import { useTranslation } from "react-i18next";
@@ -13,6 +13,7 @@ import DataLabel from "../data-label/data-label.component";
import ScheduleAtChange from "./job-at-change.component";
import ScheduleEventColor from "./schedule-event.color.component";
import queryString from "query-string";
+import ScheduleEventNote from "./schedule-event.note.component";
const mapDispatchToProps = (dispatch) => ({
setScheduleContext: (context) =>
@@ -39,7 +40,7 @@ export function ScheduleEventComponent({
);
const popoverContent = (
-
+
{!event.isintake ? (
{event.title}
) : (
@@ -84,12 +85,10 @@ export function ScheduleEventComponent({
{(event.job && event.job.alt_transport) || ""}
-
- {event.note || ""}
-
+
) : null}
-
+
{event.job ? (
diff --git a/client/src/components/job-at-change/schedule-event.note.component.jsx b/client/src/components/job-at-change/schedule-event.note.component.jsx
new file mode 100644
index 000000000..713c38845
--- /dev/null
+++ b/client/src/components/job-at-change/schedule-event.note.component.jsx
@@ -0,0 +1,74 @@
+import { EditFilled, SaveFilled } from "@ant-design/icons";
+import { useMutation } from "@apollo/client";
+import { Button, Input, notification, Space } from "antd";
+import React, { useState } from "react";
+import { useTranslation } from "react-i18next";
+import { connect } from "react-redux";
+import { createStructuredSelector } from "reselect";
+import { UPDATE_APPOINTMENT } from "../../graphql/appointments.queries";
+import { selectBodyshop } from "../../redux/user/user.selectors";
+import DataLabel from "../data-label/data-label.component";
+
+const mapStateToProps = createStructuredSelector({
+ bodyshop: selectBodyshop,
+});
+const mapDispatchToProps = (dispatch) => ({
+ //setUserLanguage: language => dispatch(setUserLanguage(language))
+});
+
+export function ScheduleEventNote({ event }) {
+ const [editing, setEditing] = useState(false);
+ const [note, setNote] = useState(event.note || "");
+ const [loading, setLoading] = useState(false);
+ const [updateAppointment] = useMutation(UPDATE_APPOINTMENT);
+ const { t } = useTranslation();
+
+ const toggleEdit = async () => {
+ if (editing) {
+ //Await the update
+ setLoading(true);
+ const result = await updateAppointment({
+ variables: {
+ appid: event.id,
+ app: { note },
+ },
+ });
+
+ if (!!!result.errors) {
+ // notification["success"]({ message: t("appointments.successes.saved") });
+ } else {
+ notification["error"]({
+ message: t("jobs.errors.saving", {
+ error: JSON.stringify(result.errors),
+ }),
+ });
+ }
+
+ setEditing(false);
+ } else {
+ setEditing(true);
+ }
+ setLoading(false);
+ };
+
+ return (
+
+
+ {!editing ? (
+ event.note || ""
+ ) : (
+ setNote(e.target.value)}
+ style={{ maxWidth: "8vw" }}
+ />
+ )}
+
+
+
+ );
+}
+export default connect(mapStateToProps, mapDispatchToProps)(ScheduleEventNote);
diff --git a/client/src/components/schedule-job-modal/schedule-job-modal.component.jsx b/client/src/components/schedule-job-modal/schedule-job-modal.component.jsx
index 0753c43b4..74d2fff28 100644
--- a/client/src/components/schedule-job-modal/schedule-job-modal.component.jsx
+++ b/client/src/components/schedule-job-modal/schedule-job-modal.component.jsx
@@ -1,4 +1,14 @@
-import { Button, Col, Form, Input, Row, Select, Switch } from "antd";
+import {
+ Button,
+ Col,
+ Form,
+ Input,
+ Row,
+ Select,
+ Space,
+ Switch,
+ Typography,
+} from "antd";
import axios from "axios";
import moment from "moment";
import React, { useState } from "react";
@@ -91,31 +101,34 @@ export function ScheduleJobModalComponent({
-
+
+
+ {t("appointments.labels.smartscheduling")}
+
+
+ {
+ // smartOptions.length > 0 && (
+ // {t("appointments.labels.suggesteddates")}
+ // )
+ }
+
- {smartOptions.length > 0 && (
- {t("appointments.labels.suggesteddates")}
- )}
-
- {smartOptions.map((d, idx) => (
-
- ))}
-
-
+ {smartOptions.map((d, idx) => (
+
+ ))}
+
+