Compare commits
5 Commits
revert-pr-
...
pagination
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ee8cbe33c4 | ||
|
|
92c8b54f85 | ||
|
|
d8420f472c | ||
|
|
34d93c4de0 | ||
|
|
1c400cd456 |
@@ -29,7 +29,7 @@ export function JobsList({bodyshop,}) {
|
|||||||
const search = queryString.parse(useLocation().search);
|
const search = queryString.parse(useLocation().search);
|
||||||
const [openSearchResults, setOpenSearchResults] = useState([]);
|
const [openSearchResults, setOpenSearchResults] = useState([]);
|
||||||
const [searchLoading, setSearchLoading] = useState(false);
|
const [searchLoading, setSearchLoading] = useState(false);
|
||||||
const {page, selected, sortorder, sortcolumn} = search;
|
const {page, selected, sortorder, sortcolumn,statusFilters} = search;
|
||||||
|
|
||||||
const selectedBreakpoint = Object.entries(Grid.useBreakpoint())
|
const selectedBreakpoint = Object.entries(Grid.useBreakpoint())
|
||||||
.filter((screen) => !!screen[1])
|
.filter((screen) => !!screen[1])
|
||||||
@@ -39,7 +39,7 @@ export function JobsList({bodyshop,}) {
|
|||||||
variables: {
|
variables: {
|
||||||
offset: page ? (page - 1) * pageLimit : 0,
|
offset: page ? (page - 1) * pageLimit : 0,
|
||||||
limit: pageLimit,
|
limit: pageLimit,
|
||||||
statuses: bodyshop.md_ro_statuses.active_statuses || ["Open", "Open*"],
|
statusFilters: statusFilters ? JSON.parse(statusFilters) : bodyshop.md_ro_statuses.active_statuses || ["Open", "Open*"],
|
||||||
order: [
|
order: [
|
||||||
{
|
{
|
||||||
[sortcolumn || "ro_number"]:
|
[sortcolumn || "ro_number"]:
|
||||||
@@ -67,9 +67,6 @@ export function JobsList({bodyshop,}) {
|
|||||||
const jobs = data?.jobs || [];
|
const jobs = data?.jobs || [];
|
||||||
|
|
||||||
const handleTableChange = (pagination, filters, sorter) => {
|
const handleTableChange = (pagination, filters, sorter) => {
|
||||||
// TODO: Is this needed?
|
|
||||||
setState({...state, filteredInfo: filters});
|
|
||||||
|
|
||||||
search.page = pagination.current;
|
search.page = pagination.current;
|
||||||
search.sortcolumn = sorter.column && sorter.column.key;
|
search.sortcolumn = sorter.column && sorter.column.key;
|
||||||
search.sortorder = sorter.order;
|
search.sortorder = sorter.order;
|
||||||
@@ -205,19 +202,13 @@ export function JobsList({bodyshop,}) {
|
|||||||
sorter: true,
|
sorter: true,
|
||||||
sortOrder:
|
sortOrder:
|
||||||
sortcolumn === "status" && sortorder,
|
sortcolumn === "status" && sortorder,
|
||||||
filters:
|
filters:bodyshop.md_ro_statuses.statuses.map((s) => {
|
||||||
(jobs &&
|
return { text: s, value: [s] };
|
||||||
jobs
|
}),
|
||||||
.map((j) => j.status)
|
|
||||||
.filter(onlyUnique)
|
|
||||||
.map((s) => {
|
|
||||||
return {
|
|
||||||
text: s || "No Status*",
|
|
||||||
value: [s],
|
|
||||||
};
|
|
||||||
})) ||
|
|
||||||
[],
|
|
||||||
onFilter: (value, record) => value.includes(record.status),
|
onFilter: (value, record) => value.includes(record.status),
|
||||||
|
render: (text, record) => {
|
||||||
|
return record.status || t("general.labels.na");
|
||||||
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: t("jobs.fields.vehicle"),
|
title: t("jobs.fields.vehicle"),
|
||||||
@@ -270,19 +261,20 @@ export function JobsList({bodyshop,}) {
|
|||||||
dataIndex: "ins_co_nm",
|
dataIndex: "ins_co_nm",
|
||||||
key: "ins_co_nm",
|
key: "ins_co_nm",
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
filters:
|
// TODO: Restore Filters?
|
||||||
(jobs &&
|
// filters:
|
||||||
jobs
|
// (jobs &&
|
||||||
.map((j) => j.ins_co_nm)
|
// jobs
|
||||||
.filter(onlyUnique)
|
// .map((j) => j.ins_co_nm)
|
||||||
.map((s) => {
|
// .filter(onlyUnique)
|
||||||
return {
|
// .map((s) => {
|
||||||
text: s,
|
// return {
|
||||||
value: [s],
|
// text: s,
|
||||||
};
|
// value: [s],
|
||||||
})) ||
|
// };
|
||||||
[],
|
// })) ||
|
||||||
onFilter: (value, record) => value.includes(record.ins_co_nm),
|
// [],
|
||||||
|
// onFilter: (value, record) => value.includes(record.ins_co_nm),
|
||||||
responsive: ["md"],
|
responsive: ["md"],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -304,23 +296,24 @@ export function JobsList({bodyshop,}) {
|
|||||||
key: "jobs.labels.estimator",
|
key: "jobs.labels.estimator",
|
||||||
ellipsis: true,
|
ellipsis: true,
|
||||||
responsive: ["xl"],
|
responsive: ["xl"],
|
||||||
filterSearch: true,
|
// TODO Restore Filters?
|
||||||
filters:
|
// filterSearch: true,
|
||||||
(jobs &&
|
// filters:
|
||||||
jobs
|
// (jobs &&
|
||||||
.map((j) => `${j.est_ct_fn || ""} ${j.est_ct_ln || ""}`.trim())
|
// jobs
|
||||||
.filter(onlyUnique)
|
// .map((j) => `${j.est_ct_fn || ""} ${j.est_ct_ln || ""}`.trim())
|
||||||
.map((s) => {
|
// .filter(onlyUnique)
|
||||||
return {
|
// .map((s) => {
|
||||||
text: s || "N/A",
|
// return {
|
||||||
value: [s],
|
// text: s || "N/A",
|
||||||
};
|
// value: [s],
|
||||||
})) ||
|
// };
|
||||||
[],
|
// })) ||
|
||||||
onFilter: (value, record) =>
|
// [],
|
||||||
value.includes(
|
// onFilter: (value, record) =>
|
||||||
`${record.est_ct_fn || ""} ${record.est_ct_ln || ""}`.trim()
|
// value.includes(
|
||||||
),
|
// `${record.est_ct_fn || ""} ${record.est_ct_ln || ""}`.trim()
|
||||||
|
// ),
|
||||||
render: (text, record) =>
|
render: (text, record) =>
|
||||||
`${record.est_ct_fn || ""} ${record.est_ct_ln || ""}`.trim(),
|
`${record.est_ct_fn || ""} ${record.est_ct_ln || ""}`.trim(),
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -5,13 +5,13 @@ export const QUERY_ALL_ACTIVE_JOBS_PAGINATED = gql`
|
|||||||
$offset: Int
|
$offset: Int
|
||||||
$limit: Int
|
$limit: Int
|
||||||
$order: [jobs_order_by!]
|
$order: [jobs_order_by!]
|
||||||
$statuses: [String!]!,
|
$statusFilters: [String!]!,
|
||||||
$isConverted: Boolean
|
$isConverted: Boolean
|
||||||
) {
|
) {
|
||||||
jobs(
|
jobs(
|
||||||
offset: $offset
|
offset: $offset
|
||||||
limit: $limit
|
limit: $limit
|
||||||
where: { status: { _in: $statuses }, converted: { _eq: $isConverted } }
|
where: { status: { _in: $statusFilters }, converted: { _eq: $isConverted } }
|
||||||
order_by: $order
|
order_by: $order
|
||||||
) {
|
) {
|
||||||
iouparent
|
iouparent
|
||||||
@@ -52,7 +52,7 @@ export const QUERY_ALL_ACTIVE_JOBS_PAGINATED = gql`
|
|||||||
est_ct_fn
|
est_ct_fn
|
||||||
est_ct_ln
|
est_ct_ln
|
||||||
}
|
}
|
||||||
jobs_aggregate(where: { status: { _in: $statuses } }) {
|
jobs_aggregate(where: { status: { _in: $statusFilters } }) {
|
||||||
aggregate {
|
aggregate {
|
||||||
count(distinct: true)
|
count(distinct: true)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
|
|
||||||
// Sometimes referred to as PageSize, this variable controls the amount of records
|
// Sometimes referred to as PageSize, this variable controls the amount of records
|
||||||
// to show on one page during pagination.
|
// to show on one page during pagination.
|
||||||
export const pageLimit = 50;
|
export const pageLimit = 10;
|
||||||
|
|||||||
Reference in New Issue
Block a user