From acd8984d5b992804c2fffd80dd746cef3ae6af59 Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 23 Jul 2020 14:39:45 -0700 Subject: [PATCH] Minor random fixes --- .../chat-send-message.component.jsx | 7 +- .../contract-status-select.component.jsx | 14 +- .../currency-form-item.component.jsx | 1 + .../email-form-item.component.jsx | 1 + .../phone-form-item.component.jsx | 9 +- .../reset-form-item.component.jsx | 6 +- .../global-search/global-search.component.jsx | 47 +-- .../components/header/header.component.jsx | 161 ++++---- .../jobs-available-new.component.jsx | 52 +-- .../jobs-available-supplement.component.jsx | 27 +- .../shop-info/shop-info.component.jsx | 357 +++++++++--------- .../shop-info/shop-info.container.jsx | 2 + ...p-info.responsibilitycenters.component.jsx | 31 +- client/src/graphql/jobs.queries.js | 4 +- .../courtesy-car-create.page.container.jsx | 2 +- .../pages/manage/manage.page.component.jsx | 11 +- .../src/pages/manage/manage.page.styles.scss | 6 +- client/src/utils/RenderTemplate.js | 4 +- 18 files changed, 389 insertions(+), 353 deletions(-) diff --git a/client/src/components/chat-send-message/chat-send-message.component.jsx b/client/src/components/chat-send-message/chat-send-message.component.jsx index f7c3a9ebd..810777688 100644 --- a/client/src/components/chat-send-message/chat-send-message.component.jsx +++ b/client/src/components/chat-send-message/chat-send-message.component.jsx @@ -1,4 +1,4 @@ -import { LoadingOutlined } from "@ant-design/icons"; +import { LoadingOutlined, SendOutlined } from "@ant-design/icons"; import { Input, Spin } from "antd"; import React, { useEffect, useRef } from "react"; import { useTranslation } from "react-i18next"; @@ -52,12 +52,12 @@ function ChatSendMessageComponent({ }; return ( -
+
a} autoSize={{ minRows: 1, maxRows: 4 }} value={message} disabled={isSending} @@ -68,6 +68,7 @@ function ChatSendMessageComponent({ if (!!!event.shiftKey) handleEnter(); }} /> + { +const ContractStatusComponent = ( + { value = "contracts.status.new", onChange }, + ref +) => { const [option, setOption] = useState(value); const { t } = useTranslation(); @@ -20,7 +20,7 @@ const ContractStatusComponent = ({ ); }; -export default ContractStatusComponent; +export default forwardRef(ContractStatusComponent); diff --git a/client/src/components/form-items-formatted/currency-form-item.component.jsx b/client/src/components/form-items-formatted/currency-form-item.component.jsx index bf301d359..e0edbd355 100644 --- a/client/src/components/form-items-formatted/currency-form-item.component.jsx +++ b/client/src/components/form-items-formatted/currency-form-item.component.jsx @@ -4,6 +4,7 @@ function FormItemCurrency(props, ref) { return ( `$ ${value}`.replace(/\B(?=(\d{3})+(?!\d))/g, ",")} // parser={(value) => value.replace(/\$\s?|(,*)/g, "")} diff --git a/client/src/components/form-items-formatted/email-form-item.component.jsx b/client/src/components/form-items-formatted/email-form-item.component.jsx index 2874245bb..96e091923 100644 --- a/client/src/components/form-items-formatted/email-form-item.component.jsx +++ b/client/src/components/form-items-formatted/email-form-item.component.jsx @@ -5,6 +5,7 @@ function FormItemEmail(props, ref) { return ( diff --git a/client/src/components/form-items-formatted/phone-form-item.component.jsx b/client/src/components/form-items-formatted/phone-form-item.component.jsx index 30638a00c..c25d79e93 100644 --- a/client/src/components/form-items-formatted/phone-form-item.component.jsx +++ b/client/src/components/form-items-formatted/phone-form-item.component.jsx @@ -1,14 +1,7 @@ import React, { forwardRef } from "react"; import NumberFormat from "react-number-format"; function FormItemPhone(props, ref) { - return ( - - ); + return ; } export default forwardRef(FormItemPhone); diff --git a/client/src/components/form-items-formatted/reset-form-item.component.jsx b/client/src/components/form-items-formatted/reset-form-item.component.jsx index 54ef8e357..377be7b0e 100644 --- a/client/src/components/form-items-formatted/reset-form-item.component.jsx +++ b/client/src/components/form-items-formatted/reset-form-item.component.jsx @@ -1,9 +1,9 @@ import { Button } from "antd"; -import React from "react"; +import React, { forwardRef } from "react"; import { useTranslation } from "react-i18next"; import AlertComponent from "../alert/alert.component"; -export default function ResetForm({ resetFields }) { +function ResetForm({ resetFields }) { const { t } = useTranslation(); return ( ); } + +export default forwardRef(ResetForm); diff --git a/client/src/components/global-search/global-search.component.jsx b/client/src/components/global-search/global-search.component.jsx index d0a800728..60b4ec82e 100644 --- a/client/src/components/global-search/global-search.component.jsx +++ b/client/src/components/global-search/global-search.component.jsx @@ -27,9 +27,10 @@ export default function GlobalSearch() { {title} + href="https://www.google.com/search?q=antd" + target="_blank" + rel="noopener noreferrer" + > more @@ -45,8 +46,8 @@ export default function GlobalSearch() { value: job.ro_number, label: ( -
- +
+ {job.ro_number ? `${job.ro_number || ""} / ${job.est_number || ""}` @@ -54,16 +55,16 @@ export default function GlobalSearch() { - {`${ + {`${ job.ownr_fn || "" } ${job.ownr_ln || ""} ${job.ownr_co_nm || ""}`} - {`${ + {`${ job.v_model_yr || "" } ${job.v_make_desc || ""} ${ job.v_model_desc || "" }`} - {`${job.clm_no}`} - + {`${job.clm_no}`} + {`${job.clm_total}`}
@@ -81,8 +82,8 @@ export default function GlobalSearch() { }`, label: ( -
- {`${ +
+ {`${ owner.ownr_fn || "" } ${owner.ownr_ln || ""} ${owner.ownr_co_nm || ""}`}
@@ -100,8 +101,8 @@ export default function GlobalSearch() { } ${vehicle.v_model_desc || ""}`, label: ( -
- {`${ +
+ {`${ vehicle.v_model_yr || "" } ${vehicle.v_make_desc || ""} ${ vehicle.v_model_desc || "" @@ -119,11 +120,11 @@ export default function GlobalSearch() { value: `${payment.job.ro_number} ${payment.payer} ${payment.amount}`, label: ( -
- {`${payment.job.ro_number}`} - {`${payment.job.memo}`} - {`${payment.job.amount}`} - {`${payment.job.transactionid}`} +
+ {`${payment.job.ro_number}`} + {`${payment.job.memo}`} + {`${payment.job.amount}`} + {`${payment.job.transactionid}`}
), @@ -133,16 +134,16 @@ export default function GlobalSearch() { ] : []; - if (error) return ; + if (error) return ; return (
- + style={{ width: 200 }} + options={options} + > +
); diff --git a/client/src/components/header/header.component.jsx b/client/src/components/header/header.component.jsx index 12c3591cf..76258c5d9 100644 --- a/client/src/components/header/header.component.jsx +++ b/client/src/components/header/header.component.jsx @@ -43,8 +43,9 @@ const logoSpan = { xs: { span: 0, }, + sm: { span: 0 }, md: { - span: 1, + span: 0, }, lg: { span: 2, @@ -52,12 +53,9 @@ const logoSpan = { }; const menuSpan = { - xs: { - span: 24, - }, md: { - span: 22, - offset: 1, + span: 24, + //offset: 1, }, lg: { span: 21, @@ -82,7 +80,7 @@ function Header({ {bodyshop - - - - - + onClick={handleMenuClick} + > + + {t("menus.header.home")} @@ -113,50 +109,51 @@ function Header({ {t("menus.header.jobs")} - }> - - + } + > + + {t("menus.header.schedule")} - - + + {t("menus.header.productionlist")} - - + + {t("menus.header.productionboard")} - - + + {t("menus.header.scoreboard")} - - {t("menus.header.activejobs")} + + {t("menus.header.activejobs")} - - {t("menus.header.alljobs")} + + {t("menus.header.alljobs")} - - + + {t("menus.header.availablejobs")} - - + + {t("menus.header.owners")} - - + + {t("menus.header.vehicles")} @@ -168,21 +165,22 @@ function Header({ {t("menus.header.courtesycars")} - }> - - + } + > + + {t("menus.header.courtesycars-all")} - - + + {t("menus.header.courtesycars-contracts")} - - + + {t("menus.header.courtesycars-newcontract")} @@ -194,90 +192,97 @@ function Header({ {t("menus.header.accounting")} - }> + } + > { setPaymentContext({ actions: {}, context: {}, }); - }}> + }} + > {t("menus.header.enterpayment")} { setInvoiceEnterContext({ actions: {}, context: {}, }); - }}> + }} + > {t("menus.header.enterinvoices")} - - {t("menus.header.invoices")} + + {t("menus.header.invoices")} - - + + {t("menus.header.timetickets")} { setTimeTicketContext({ actions: {}, context: {}, }); - }}> + }} + > {t("menus.header.entertimeticket")} - - + + {t("menus.header.accounting-receivables")} - - + + {t("menus.header.accounting-payables")} - - + + {t("menus.header.accounting-payments")} - - + + {t("menus.header.allpayments")} - - {t("menus.header.shop_config")} + + {t("menus.header.shop_config")} - - + + {t("menus.header.shop_templates")} - - + + {t("menus.header.shop_vendors")} - - {t("menus.header.shop_csi")} + + {t("menus.header.shop_csi")} + + + @@ -300,17 +305,18 @@ function Header({ {currentUser.displayName || t("general.labels.unknown")}
- }> + } + > signOutStart()}> {t("user.actions.signout")} - - + + {t("menus.header.shiftclock")} - + {t("menus.currentuser.profile")} @@ -320,14 +326,15 @@ function Header({ {t("menus.currentuser.languageselector")}
- }> - + } + > + {t("general.languages.english")} - + {t("general.languages.french")} - + {t("general.languages.spanish")} diff --git a/client/src/components/jobs-available-new/jobs-available-new.component.jsx b/client/src/components/jobs-available-new/jobs-available-new.component.jsx index 7a91e4555..381866d7c 100644 --- a/client/src/components/jobs-available-new/jobs-available-new.component.jsx +++ b/client/src/components/jobs-available-new/jobs-available-new.component.jsx @@ -1,4 +1,8 @@ -import { DeleteFilled, PlusCircleFilled, SyncOutlined } from "@ant-design/icons"; +import { + DeleteFilled, + PlusCircleFilled, + SyncOutlined, +} from "@ant-design/icons"; import { Button, notification, Table } from "antd"; import React, { useState } from "react"; import { useTranslation } from "react-i18next"; @@ -20,13 +24,13 @@ export default function JobsAvailableComponent({ selectedOwner, setSelectedOwner, loadEstData, - estData + estData, }) { const { t } = useTranslation(); const [state, setState] = useState({ sortedInfo: {}, - filteredInfo: { text: "" } + filteredInfo: { text: "" }, }); const handleTableChange = (pagination, filters, sorter) => { @@ -43,7 +47,7 @@ export default function JobsAvailableComponent({ // filteredValue: state.filteredInfo.text || null, sorter: (a, b) => alphaSort(a, b), sortOrder: - state.sortedInfo.columnKey === "cieca_id" && state.sortedInfo.order + state.sortedInfo.columnKey === "cieca_id" && state.sortedInfo.order, }, { title: t("jobs.fields.owner"), @@ -53,7 +57,7 @@ export default function JobsAvailableComponent({ sorter: (a, b) => alphaSort(a.ownr_ln, b.ownr_ln), //width: "25%", sortOrder: - state.sortedInfo.columnKey === "ownr_name" && state.sortedInfo.order + state.sortedInfo.columnKey === "ownr_name" && state.sortedInfo.order, }, { title: t("jobs.fields.vehicle"), @@ -61,7 +65,7 @@ export default function JobsAvailableComponent({ key: "vehicle_info", sorter: (a, b) => alphaSort(a.vehicle_info, b.vehicle_info), sortOrder: - state.sortedInfo.columnKey === "vehicle_info" && state.sortedInfo.order + state.sortedInfo.columnKey === "vehicle_info" && state.sortedInfo.order, //ellipsis: true }, { @@ -70,7 +74,7 @@ export default function JobsAvailableComponent({ key: "clm_no", sorter: (a, b) => alphaSort(a.clm_no, b.clm_no), sortOrder: - state.sortedInfo.columnKey === "clm_no" && state.sortedInfo.order + state.sortedInfo.columnKey === "clm_no" && state.sortedInfo.order, //width: "12%", //ellipsis: true }, @@ -83,7 +87,7 @@ export default function JobsAvailableComponent({ state.sortedInfo.columnKey === "clm_amt" && state.sortedInfo.order, render: (text, record) => ( {record.clm_amt} - ) + ), //width: "12%", //ellipsis: true }, @@ -93,7 +97,7 @@ export default function JobsAvailableComponent({ key: "uploaded_by", sorter: (a, b) => alphaSort(a.uploaded_by, b.uploaded_by), sortOrder: - state.sortedInfo.columnKey === "uploaded_by" && state.sortedInfo.order + state.sortedInfo.columnKey === "uploaded_by" && state.sortedInfo.order, //width: "12%", //ellipsis: true }, @@ -106,7 +110,7 @@ export default function JobsAvailableComponent({ state.sortedInfo.columnKey === "updated_at" && state.sortedInfo.order, render: (text, record) => ( {record.updated_at} - ) + ), //width: "12%", //ellipsis: true }, @@ -117,9 +121,9 @@ export default function JobsAvailableComponent({ - ) + ), //width: "12%", //ellipsis: true - } + }, ]; const owner = @@ -169,9 +173,12 @@ export default function JobsAvailableComponent({ loading={loading} title={() => { return ( -
- {t("jobs.labels.availablenew")} +
+ + {t("jobs.labels.availablenew")} + @@ -191,22 +193,31 @@ export default function JobsAvailableSupplementComponent({ loading={loading} title={() => { return ( -
- {t("jobs.labels.availablesupplements")} +
+ + {t("jobs.labels.availablesupplements")} + - +
); }} - size='small' + size="small" pagination={{ position: "top" }} columns={columns} - rowKey='id' + rowKey="id" dataSource={data && data.available_jobs} onChange={handleTableChange} /> diff --git a/client/src/components/shop-info/shop-info.component.jsx b/client/src/components/shop-info/shop-info.component.jsx index 8154bd709..1a0f2d1ea 100644 --- a/client/src/components/shop-info/shop-info.component.jsx +++ b/client/src/components/shop-info/shop-info.component.jsx @@ -14,6 +14,7 @@ import ShopInfoROStatusComponent from "./shop-info.rostatus.component"; import ShopInfoOrderStatusComponent from "./shop-info.orderstatus.component"; import ShopInfoResponsibilityCenterComponent from "./shop-info.responsibilitycenters.component"; import ShopInfoSchedulingComponent from "./shop-info.scheduling.component"; +import LayoutFormRow from "../layout-form-row/layout-form-row.component"; export default function ShopInfoComponent({ form }) { const { t } = useTranslation(); @@ -24,171 +25,191 @@ export default function ShopInfoComponent({ form }) { - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + - - - + + + - - - - - - - - - - - - - - - 2 - 3 - - - - {() => { - return ( - - + + + + - diff --git a/client/src/components/shop-info/shop-info.responsibilitycenters.component.jsx b/client/src/components/shop-info/shop-info.responsibilitycenters.component.jsx index 22ba39867..b45fabae6 100644 --- a/client/src/components/shop-info/shop-info.responsibilitycenters.component.jsx +++ b/client/src/components/shop-info/shop-info.responsibilitycenters.component.jsx @@ -3,6 +3,7 @@ import { Button, Form, Input, Select, InputNumber } from "antd"; import React, { useState } from "react"; import { useTranslation } from "react-i18next"; import styled from "styled-components"; +import LayoutFormRow from "../layout-form-row/layout-form-row.component"; //TODO Fix up styles. const SelectorDiv = styled.div` .ant-form-item .ant-select { @@ -53,7 +54,7 @@ export default function ShopInfoResponsibilityCenterComponent({ form }) {
{fields.map((field, index) => ( -
+ -
+
))} @@ -164,7 +165,7 @@ export default function ShopInfoResponsibilityCenterComponent({ form }) {
{fields.map((field, index) => ( -
+ -
+
))} @@ -1066,8 +1067,8 @@ export default function ShopInfoResponsibilityCenterComponent({ form }) { -
-
+
+ -
-
+ + -
-
+ + -
+ -
+ -
-
+ + -
+
diff --git a/client/src/graphql/jobs.queries.js b/client/src/graphql/jobs.queries.js index a911a53c0..0d907347d 100644 --- a/client/src/graphql/jobs.queries.js +++ b/client/src/graphql/jobs.queries.js @@ -887,9 +887,9 @@ export const QUERY_ALL_JOB_FIELDS = gql` status tax_part unq_seq - employee_body - employee_refinish } + employee_body + employee_refinish } } `; diff --git a/client/src/pages/courtesy-car-create/courtesy-car-create.page.container.jsx b/client/src/pages/courtesy-car-create/courtesy-car-create.page.container.jsx index a9bd1bdd7..552c22812 100644 --- a/client/src/pages/courtesy-car-create/courtesy-car-create.page.container.jsx +++ b/client/src/pages/courtesy-car-create/courtesy-car-create.page.container.jsx @@ -47,7 +47,7 @@ export function CourtesyCarCreateContainer({ bodyshop, setBreadcrumbs }) { }, [t, setBreadcrumbs]); return ( -
+ ); diff --git a/client/src/pages/manage/manage.page.component.jsx b/client/src/pages/manage/manage.page.component.jsx index 849a65d70..041984369 100644 --- a/client/src/pages/manage/manage.page.component.jsx +++ b/client/src/pages/manage/manage.page.component.jsx @@ -151,10 +151,10 @@ export function Manage({ match, conflict }) { }, [t]); return ( - + - - + + {conflict ? ( @@ -163,7 +163,9 @@ export function Manage({ match, conflict }) { - }> + } + > + @@ -347,7 +349,6 @@ export function Manage({ match, conflict }) { - Some footer ); diff --git a/client/src/pages/manage/manage.page.styles.scss b/client/src/pages/manage/manage.page.styles.scss index c52165882..3d1c7a378 100644 --- a/client/src/pages/manage/manage.page.styles.scss +++ b/client/src/pages/manage/manage.page.styles.scss @@ -1,8 +1,8 @@ .content-container { overflow-y: auto; - margin: 0rem 1.5rem; - padding: 0.5rem 1.5rem; - border-radius: 12px; + margin: 1rem 1rem 0rem 1rem; + padding: 0.25rem 1rem 0rem 1rem; + border-radius: 4px; background: #fff; } diff --git a/client/src/utils/RenderTemplate.js b/client/src/utils/RenderTemplate.js index 9aa11001f..dcae1d37c 100644 --- a/client/src/utils/RenderTemplate.js +++ b/client/src/utils/RenderTemplate.js @@ -21,8 +21,8 @@ export default async function RenderTemplate(templateObject, bodyshop) { console.log("templateToUse", templateToUse); } else { //No template found.Uh oh. - alert("Template key does not exist."); - throw new Error("Template key does not exist."); + alert("Error: Template key does not exist."); + //throw new Error("Template key does not exist."); } const { data: contextData } = await client.query({