From c0086600234482c409673692dc3aebebd63cb6a1 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Fri, 20 Oct 2023 08:50:31 -0700 Subject: [PATCH 1/4] Resolve error on multiple conversations found saga. --- client/src/redux/messaging/messaging.sagas.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/client/src/redux/messaging/messaging.sagas.js b/client/src/redux/messaging/messaging.sagas.js index f2684a171..9016047aa 100644 --- a/client/src/redux/messaging/messaging.sagas.js +++ b/client/src/redux/messaging/messaging.sagas.js @@ -4,7 +4,7 @@ import { all, call, put, select, takeLatest } from "redux-saga/effects"; import { logImEXEvent } from "../../firebase/firebase.utils"; import { CONVERSATION_ID_BY_PHONE, - CREATE_CONVERSATION + CREATE_CONVERSATION, } from "../../graphql/conversations.queries"; import { INSERT_CONVERSATION_TAG } from "../../graphql/job-conversations.queries"; import client from "../../utils/GraphQLClient"; @@ -12,7 +12,7 @@ import { selectBodyshop } from "../user/user.selectors"; import { sendMessageFailure, sendMessageSuccess, - setSelectedConversation + setSelectedConversation, } from "./messaging.actions"; import MessagingActionTypes from "./messaging.types"; @@ -79,6 +79,7 @@ export function* openChatByPhone({ payload }) { }); } else { console.log("ERROR: Multiple conversations found. "); + yield put(setSelectedConversation(null)); } } catch (error) { console.log("Error in sendMessage saga.", error); From 7825aa412256f84739277a6a851a80c14e3ed4bf Mon Sep 17 00:00:00 2001 From: Allan Carr Date: Fri, 20 Oct 2023 13:55:21 -0700 Subject: [PATCH 2/4] IO-2420 Prefered Vendor for Bill Entry --- client/src/components/bill-form/bill-form.component.jsx | 2 ++ client/src/components/bill-form/bill-form.container.jsx | 9 +++++---- client/src/graphql/jobs-lines.queries.js | 1 + client/src/graphql/vendors.queries.js | 1 + 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/client/src/components/bill-form/bill-form.component.jsx b/client/src/components/bill-form/bill-form.component.jsx index 0fa28359a..44b8cd815 100644 --- a/client/src/components/bill-form/bill-form.component.jsx +++ b/client/src/components/bill-form/bill-form.component.jsx @@ -50,6 +50,7 @@ export function BillFormComponent({ job, loadOutstandingReturns, loadInventory, + preferredMake, }) { const { t } = useTranslation(); const client = useApolloClient(); @@ -185,6 +186,7 @@ export function BillFormComponent({ diff --git a/client/src/components/bill-form/bill-form.container.jsx b/client/src/components/bill-form/bill-form.container.jsx index 07a70e4c5..d77e0d29c 100644 --- a/client/src/components/bill-form/bill-form.container.jsx +++ b/client/src/components/bill-form/bill-form.container.jsx @@ -1,16 +1,16 @@ import { useLazyQuery, useQuery } from "@apollo/client"; +import { useTreatments } from "@splitsoftware/splitio-react"; import React from "react"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; +import { QUERY_OUTSTANDING_INVENTORY } from "../../graphql/inventory.queries"; import { GET_JOB_LINES_TO_ENTER_BILL } from "../../graphql/jobs-lines.queries"; +import { QUERY_UNRECEIVED_LINES } from "../../graphql/parts-orders.queries"; import { SEARCH_VENDOR_AUTOCOMPLETE } from "../../graphql/vendors.queries"; import { selectBodyshop } from "../../redux/user/user.selectors"; -import BillFormComponent from "./bill-form.component"; import BillCmdReturnsTableComponent from "../bill-cm-returns-table/bill-cm-returns-table.component"; -import { QUERY_UNRECEIVED_LINES } from "../../graphql/parts-orders.queries"; import BillInventoryTable from "../bill-inventory-table/bill-inventory-table.component"; -import { QUERY_OUTSTANDING_INVENTORY } from "../../graphql/inventory.queries"; -import { useTreatments } from "@splitsoftware/splitio-react"; +import BillFormComponent from "./bill-form.component"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, @@ -59,6 +59,7 @@ export function BillFormContainer({ disableInvNumber={disableInvNumber} loadOutstandingReturns={loadOutstandingReturns} loadInventory={loadInventory} + preferredMake={lineData ? lineData.jobs_by_pk.v_make_desc : null} /> {!billEdit && ( Date: Mon, 23 Oct 2023 12:32:32 -0700 Subject: [PATCH 3/4] IO-2419 Correct for Cloudinary to include fullsize on send --- .../jobs-documents-gallery.external.component.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/client/src/components/jobs-documents-gallery/jobs-documents-gallery.external.component.jsx b/client/src/components/jobs-documents-gallery/jobs-documents-gallery.external.component.jsx index 2ff912930..27774f5a8 100644 --- a/client/src/components/jobs-documents-gallery/jobs-documents-gallery.external.component.jsx +++ b/client/src/components/jobs-documents-gallery/jobs-documents-gallery.external.component.jsx @@ -1,7 +1,7 @@ import React, { useEffect } from "react"; import { Gallery } from "react-grid-gallery"; import { useTranslation } from "react-i18next"; -import { GenerateThumbUrl } from "./job-documents.utility"; +import { GenerateSrcUrl, GenerateThumbUrl } from "./job-documents.utility"; function JobsDocumentGalleryExternal({ data, @@ -15,7 +15,7 @@ function JobsDocumentGalleryExternal({ let documents = data.reduce((acc, value) => { if (value.type.startsWith("image")) { acc.push({ - //src: GenerateSrcUrl(value), + fullsize: GenerateSrcUrl(value), src: GenerateThumbUrl(value), thumbnailHeight: 225, thumbnailWidth: 225, From 4a62ac2a11f5f6e4fd223b0a24961853b1ebe613 Mon Sep 17 00:00:00 2001 From: Allan Carr Date: Wed, 25 Oct 2023 08:52:03 -0700 Subject: [PATCH 4/4] IO-2421 Add Production Vars to the initial values on CheckList --- .../job-checklist-form/job-checklist-form.component.jsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/client/src/components/job-checklist/components/job-checklist-form/job-checklist-form.component.jsx b/client/src/components/job-checklist/components/job-checklist-form/job-checklist-form.component.jsx index 956cb4761..a809100a6 100644 --- a/client/src/components/job-checklist/components/job-checklist-form/job-checklist-form.component.jsx +++ b/client/src/components/job-checklist/components/job-checklist-form/job-checklist-form.component.jsx @@ -1,5 +1,6 @@ import { useMutation } from "@apollo/client"; import { Button, Card, Form, Input, notification, Switch } from "antd"; +import moment from "moment-business-days"; import queryString from "query-string"; import React, { useState } from "react"; import { useTranslation } from "react-i18next"; @@ -12,16 +13,15 @@ import { MARK_LATEST_APPOINTMENT_ARRIVED, } from "../../../../graphql/appointments.queries"; import { UPDATE_JOB } from "../../../../graphql/jobs.queries"; +import { UPDATE_OWNER } from "../../../../graphql/owners.queries"; +import { insertAuditTrail } from "../../../../redux/application/application.actions"; import { selectBodyshop, selectCurrentUser, } from "../../../../redux/user/user.selectors"; +import AuditTrailMapping from "../../../../utils/AuditTrailMappings"; import ConfigFormComponents from "../../../config-form-components/config-form-components.component"; import DateTimePicker from "../../../form-date-time-picker/form-date-time-picker.component"; -import moment from "moment-business-days"; -import { insertAuditTrail } from "../../../../redux/application/application.actions"; -import AuditTrailMapping from "../../../../utils/AuditTrailMappings"; -import { UPDATE_OWNER } from "../../../../graphql/owners.queries"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, @@ -230,6 +230,7 @@ export function JobChecklistForm({ )), scheduled_delivery: job.scheduled_delivery && moment(job.scheduled_delivery), + production_vars: job.production_vars, }), ...(type === "deliver" && { removeFromProduction: true,