Added joblines to repair data. Field migrations to conform to cieca standards for joblines

This commit is contained in:
Patrick Fic
2020-01-29 20:15:36 -08:00
parent 7630547c6c
commit 7eedd95403
12 changed files with 230 additions and 14 deletions

View File

@@ -1,33 +1,69 @@
import React, { useState } from "react";
import { Table } from "antd";
import { alphaSort } from "../../utils/sorters";
import { useTranslation } from "react-i18next";
import CurrencyFormatter from "../../utils/CurrencyFormatter";
export default function JobLinesComponent({ loading, joblines }) {
export default function JobLinesComponent({ job }) {
const [state, setState] = useState({
sortedInfo: {},
filteredInfo: { text: "" }
});
const { t } = useTranslation();
const columns = [
{
title: "Line #",
dataIndex: "line_ind",
key: "line_ind",
title: t("joblines.fields.unq_seq"),
dataIndex: "unq_seq",
key: "unq_seq",
// onFilter: (value, record) => record.ro_number.includes(value),
// filteredValue: state.filteredInfo.text || null,
sorter: (a, b) => alphaSort(a, b),
sortOrder:
state.sortedInfo.columnKey === "line_ind" && state.sortedInfo.order,
ellipsis: true
state.sortedInfo.columnKey === "unq_seq" && state.sortedInfo.order
//ellipsis: true
},
{
title: "Description",
title: t("joblines.fields.line_desc"),
dataIndex: "line_desc",
key: "line_desc",
sorter: (a, b) => alphaSort(a, b),
sorter: (a, b) => alphaSort(a.line_desc, b.line_desc),
sortOrder:
state.sortedInfo.columnKey === "line_desc" && state.sortedInfo.order,
ellipsis: true
},
{
title: t("joblines.fields.part_type"),
dataIndex: "part_type",
key: "part_type",
sorter: (a, b) => alphaSort(a.part_type, b.part_type),
sortOrder:
state.sortedInfo.columnKey === "part_type" && state.sortedInfo.order,
ellipsis: true
},
{
title: t("joblines.fields.db_price"),
dataIndex: "db_price",
key: "db_price",
sorter: (a, b) => a.db_price - b.db_price,
sortOrder:
state.sortedInfo.columnKey === "db_price" && state.sortedInfo.order,
ellipsis: true,
render: (text, record) => (
<CurrencyFormatter>{record.db_price}</CurrencyFormatter>
)
},
{
title: t("joblines.fields.act_price"),
dataIndex: "act_price",
key: "act_price",
sorter: (a, b) => a.act_price - b.act_price,
sortOrder:
state.sortedInfo.columnKey === "act_price" && state.sortedInfo.order,
ellipsis: true,
render: (text, record) => (
<CurrencyFormatter>{record.act_price}</CurrencyFormatter>
)
}
];
@@ -39,14 +75,13 @@ export default function JobLinesComponent({ loading, joblines }) {
// const { value } = event.target;
// setState({ ...state, filterinfo: { text: [value] } });
// };
return (
<Table
loading={loading}
size='small'
pagination={{ position: "bottom" }}
columns={columns.map(item => ({ ...item }))}
rowKey='id'
dataSource={joblines}
dataSource={job.joblines}
onChange={handleTableChange}
/>
);

View File

@@ -1,7 +1,7 @@
import React from "react";
import JobLinesComponent from "./job-lines.component";
import { useQuery } from "@apollo/react-hooks";
import AlertComponent from "../../components/alert/alert.component";
import AlertComponent from "../alert/alert.component";
import { GET_JOB_LINES_BY_PK } from "../../graphql/jobs-lines.queries";
@@ -16,3 +16,4 @@ export default function JobLinesContainer({ jobId }) {
<JobLinesComponent loading={loading} joblines={data ? data.joblines : null} />
);
}