Transfered alt_transport to job from event and added to production boards. IO-462

This commit is contained in:
Patrick Fic
2020-12-16 15:58:07 -08:00
parent 41c1e75b31
commit 536fd606ed
29 changed files with 1927 additions and 34 deletions

View File

@@ -72,9 +72,12 @@ export default function ProductionBoardCard(card) {
</Col>
</Row>
<Row>
<Col span={24}>
<Col span={18}>
<DateTimeFormatter>{card.scheduled_completion}</DateTimeFormatter>
</Col>
<Col span={6}>
<div>{card.alt_transport || ""}</div>
</Col>
</Row>
<div className="imex-flex-row imex-flex-row__flex-space-around">
<ProductionAlert record={card} key="alert" />

View File

@@ -156,6 +156,13 @@ const r = [
ellipsis: true,
sorter: (a, b) => alphaSort(a.csr, b.csr),
},
{
title: i18n.t("jobs.fields.alt_transport"),
dataIndex: "alt_transport",
key: "alt_transport",
ellipsis: true,
sorter: (a, b) => alphaSort(a.alt_transport, b.alt_transport),
},
{
title: i18n.t("jobs.fields.status"),
dataIndex: "status",

View File

@@ -1,6 +1,6 @@
import React from "react";
import { useMutation } from "react-apollo";
import { UPDATE_APPOINTMENT } from "../../graphql/appointments.queries";
import { UPDATE_JOB } from "../../graphql/jobs.queries";
import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
@@ -16,12 +16,12 @@ const mapDispatchToProps = (dispatch) => ({
});
export function ScheduleAtChange({ bodyshop, event }) {
const [updateAppointment] = useMutation(UPDATE_APPOINTMENT);
const [updateJob] = useMutation(UPDATE_JOB);
const { t } = useTranslation();
const onClick = async ({ key }) => {
const result = await updateAppointment({
variables: { appid: event.id, app: { alt_transport: key } },
const result = await updateJob({
variables: { jobId: event.job.id, job: { alt_transport: key } },
});
if (!!!result.errors) {
@@ -35,7 +35,10 @@ export function ScheduleAtChange({ bodyshop, event }) {
}
};
const menu = (
<Menu selectedKeys={[event.alt_transport]} onClick={onClick}>
<Menu
selectedKeys={[event.job && event.job.alt_transport]}
onClick={onClick}
>
{bodyshop.appt_alt_transport &&
bodyshop.appt_alt_transport.map((alt) => (
<Menu.Item key={alt}>{alt}</Menu.Item>

View File

@@ -64,8 +64,8 @@ export function ScheduleEventComponent({
{(event.job && event.job.ownr_ph1) || ""}
</PhoneFormatter>
</DataLabel>
<DataLabel label={t("appointments.fields.alt_transport")}>
{event.alt_transport || ""}
<DataLabel label={t("jobs.fields.alt_transport")}>
{(event.job && event.job.alt_transport) || ""}
<ScheduleAtChange event={event} />
</DataLabel>
</div>
@@ -134,8 +134,8 @@ export function ScheduleEventComponent({
(event.job && event.job.larhrs.aggregate.sum.mod_lb_hrs) || "0"
})`}
</div>
{event.alt_transport && (
<div style={{ margin: ".1rem" }}>{event.alt_transport}</div>
{event.job && event.job.alt_transport && (
<div style={{ margin: ".1rem" }}>{event.job.alt_transport}</div>
)}
</div>
) : (

View File

@@ -146,7 +146,7 @@ export function ScheduleJobModalComponent({
</Form.Item>
<Form.Item
name={"alt_transport"}
label={t("appointments.fields.alt_transport")}
label={t("jobs.fields.alt_transport")}
>
<Select>
{bodyshop.appt_alt_transport &&

View File

@@ -93,8 +93,9 @@ export function ScheduleJobModalContainer({
start: moment(values.start),
end: moment(values.start).add(bodyshop.appt_length || 60, "minutes"),
color: values.color,
alt_transport: values.alt_transport,
},
jobId: jobId,
altTransport: values.alt_transport,
},
});