diff --git a/client/src/components/jobs-list/jobs-list.component.jsx b/client/src/components/jobs-list/jobs-list.component.jsx index 68b3f3425..94024bccc 100644 --- a/client/src/components/jobs-list/jobs-list.component.jsx +++ b/client/src/components/jobs-list/jobs-list.component.jsx @@ -21,6 +21,7 @@ import useLocalStorage from "../../utils/useLocalStorage"; import AlertComponent from "../alert/alert.component"; import ChatOpenButton from "../chat-open-button/chat-open-button.component"; import OwnerNameDisplay from "../owner-name-display/owner-name-display.component"; +import { OwnerNameDisplayFunction } from "./../owner-name-display/owner-name-display.component"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, @@ -145,7 +146,8 @@ export function JobsList({ bodyshop }) { key: "owner", ellipsis: true, responsive: ["md"], - sorter: (a, b) => alphaSort(a.ownr_ln, b.ownr_ln), + sorter: (a, b) => + alphaSort(OwnerNameDisplayFunction(a), OwnerNameDisplayFunction(b)), sortOrder: state.sortedInfo.columnKey === "owner" && state.sortedInfo.order, render: (text, record) => { @@ -188,7 +190,8 @@ export function JobsList({ bodyshop }) { dataIndex: "status", key: "status", ellipsis: true, - sorter: (a, b) => alphaSort(a.status, b.status), + sorter: (a, b) => + statusSort(a.status, b.status, bodyshop.md_ro_statuses.active_statuses), sortOrder: state.sortedInfo.columnKey === "status" && state.sortedInfo.order, filteredValue: filter?.status || null, @@ -219,6 +222,15 @@ export function JobsList({ bodyshop }) { dataIndex: "vehicle", key: "vehicle", ellipsis: true, + sorter: (a, b) => + alphaSort( + `${a.v_model_yr || ""} ${a.v_make_desc || ""} ${ + a.v_model_desc || "" + }`, + `${b.v_model_yr || ""} ${b.v_make_desc || ""} ${b.v_model_desc || ""}` + ), + sortOrder: + state.sortedInfo.columnKey === "vehicle" && state.sortedInfo.order, render: (text, record) => { return record.vehicleid ? ( alphaSort(a.ins_co_nm, b.ins_co_nm), + sortOrder: + state.sortedInfo.columnKey === "ins_co_nm" && state.sortedInfo.order, filteredValue: filter?.ins_co_nm || null, filters: (jobs && @@ -302,6 +317,13 @@ export function JobsList({ bodyshop }) { key: "estimator", ellipsis: true, responsive: ["xl"], + sorter: (a, b) => + alphaSort( + `${a.est_ct_fn || ""} ${a.est_ct_ln || ""}`.trim(), + `${b.est_ct_fn || ""} ${b.est_ct_ln || ""}`.trim() + ), + sortOrder: + state.sortedInfo.columnKey === "estimator" && state.sortedInfo.order, filterSearch: true, filteredValue: filter?.estimator || null, filters: diff --git a/client/src/graphql/jobs.queries.js b/client/src/graphql/jobs.queries.js index 650abc302..1379535e1 100644 --- a/client/src/graphql/jobs.queries.js +++ b/client/src/graphql/jobs.queries.js @@ -1862,6 +1862,7 @@ export const QUERY_ALL_JOBS_PAGINATED_STATUS_FILTERED = gql` ownr_co_nm ownr_ph1 ownr_ph2 + ownerid plate_no plate_st v_vin