diff --git a/client/src/components/global-search/global-search.component.jsx b/client/src/components/global-search/global-search.component.jsx index 0e5ddf8c8..ce8e526d7 100644 --- a/client/src/components/global-search/global-search.component.jsx +++ b/client/src/components/global-search/global-search.component.jsx @@ -45,7 +45,7 @@ export default function GlobalSearch() { {`${job.v_model_yr || ""} ${job.v_make_desc || ""} ${ job.v_model_desc || "" }`} - {`${job.clm_no}`} + {`${job.clm_no || ""}`} ), @@ -91,8 +91,8 @@ export default function GlobalSearch() { vehicle.v_make_desc || "" } ${vehicle.v_model_desc || ""}`} - {vehicle.plate_no} - {vehicle.v_vin} + {vehicle.plate_no || ""} + {vehicle.v_vin || ""} ), @@ -108,10 +108,11 @@ export default function GlobalSearch() { label: ( }> + {payment.paymentnum} {payment.job.ro_number} - {payment.job.memo} - {payment.job.amount} - {payment.job.transactionid} + {payment.memo || ""} + {payment.amount || ""} + {payment.transactionid || ""} ), diff --git a/client/src/components/owner-detail-jobs/owner-detail-jobs.component.jsx b/client/src/components/owner-detail-jobs/owner-detail-jobs.component.jsx index d2703b34b..e6553e1ab 100644 --- a/client/src/components/owner-detail-jobs/owner-detail-jobs.component.jsx +++ b/client/src/components/owner-detail-jobs/owner-detail-jobs.component.jsx @@ -31,11 +31,14 @@ function OwnerDetailJobsComponent({ bodyshop, owner }) { title: t("jobs.fields.vehicle"), dataIndex: "vehicleid", key: "vehicleid", - render: (text, record) => ( - - {`${record.v_model_yr} ${record.v_make_desc} ${record.v_model_desc}`} - - ), + render: (text, record) => + record.vehicleid ? ( + + {`${record.v_model_yr} ${record.v_make_desc} ${record.v_model_desc}`} + + ) : ( + t("jobs.errors.novehicle") + ), }, { title: t("jobs.fields.clm_no"), diff --git a/client/src/graphql/search.queries.js b/client/src/graphql/search.queries.js index 472b5df03..1b3cd2914 100644 --- a/client/src/graphql/search.queries.js +++ b/client/src/graphql/search.queries.js @@ -36,6 +36,7 @@ export const GLOBAL_SEARCH_QUERY = gql` search_payments(args: { search: $search }) { id amount + paymentnum job { ro_number id diff --git a/client/src/pages/export-logs/export-logs.page.component.jsx b/client/src/pages/export-logs/export-logs.page.component.jsx index c187302b9..2c8df189b 100644 --- a/client/src/pages/export-logs/export-logs.page.component.jsx +++ b/client/src/pages/export-logs/export-logs.page.component.jsx @@ -84,7 +84,7 @@ export function ExportLogsPageComponent({ bodyshop }) { render: (text, record) => record.job && ( - + {(record.job && record.job.ro_number) || t("general.labels.na")} ), diff --git a/hasura/migrations/1625768789569_run_sql_migration/down.yaml b/hasura/migrations/1625768789569_run_sql_migration/down.yaml new file mode 100644 index 000000000..fe51488c7 --- /dev/null +++ b/hasura/migrations/1625768789569_run_sql_migration/down.yaml @@ -0,0 +1 @@ +[] diff --git a/hasura/migrations/1625768789569_run_sql_migration/up.yaml b/hasura/migrations/1625768789569_run_sql_migration/up.yaml new file mode 100644 index 000000000..f79c5cf37 --- /dev/null +++ b/hasura/migrations/1625768789569_run_sql_migration/up.yaml @@ -0,0 +1,11 @@ +- args: + cascade: false + read_only: false + sql: "CREATE OR REPLACE FUNCTION public.search_payments(search text)\n RETURNS + SETOF payments\n LANGUAGE plpgsql\n STABLE\nAS $function$\n\nBEGIN\n if search + = '' then\n return query select * from payments ;\n else \n return query + SELECT\n p.*\nFROM\n payments p, jobs j\nWHERE\np.jobid = j.id AND\n(\nsearch + <% p.paymentnum OR\nsearch <% j.ownr_fn OR\nsearch <% j.ownr_ln OR\nsearch <% + j.ownr_co_nm OR\nsearch <% j.ro_number OR\n search <% (p.payer) OR\n search + <% (p.transactionid) OR\n search <% (p.memo));\n end if;\n\n\tEND\n$function$;" + type: run_sql