Files
bodyshop/client/src/components/jobs-detail-pli/jobs-detail-pli.component.jsx

54 lines
2.1 KiB
JavaScript

import { Col, Row } from "antd";
import React from "react";
import AlertComponent from "../alert/alert.component";
import BillDetailEditcontainer from "../bill-detail-edit/bill-detail-edit.container";
import BillsListTable from "../bills-list-table/bills-list-table.component";
import JobBillsTotal from "../job-bills-total/job-bills-total.component";
import PartsOrderListTableComponent from "../parts-order-list-table/parts-order-list-table.component";
import PartsOrderModal from "../parts-order-modal/parts-order-modal.container";
import PartsDispatchTable from "../parts-dispatch-table/parts-dispatch-table.component";
import FeatureWrapperComponent from "../feature-wrapper/feature-wrapper.component";
export default function JobsDetailPliComponent({
job,
billsQuery,
handleBillOnRowClick,
handlePartsOrderOnRowClick,
handlePartsDispatchOnRowClick
}) {
return (
<div>
<PartsOrderModal />
{billsQuery.error ? <AlertComponent message={billsQuery.error.message} type="error" /> : null}
<BillDetailEditcontainer />
<Row gutter={[16, 16]}>
<FeatureWrapperComponent featureName="bills" noauth={() => null}>
<Col span={24}>
<JobBillsTotal
bills={billsQuery.data ? billsQuery.data.bills : []}
partsOrders={billsQuery.data ? billsQuery.data.parts_orders : []}
loading={billsQuery.loading}
jobTotals={job.job_totals}
/>
</Col>
</FeatureWrapperComponent>
<Col span={24}>
<PartsOrderListTableComponent
job={job}
handleOnRowClick={handlePartsOrderOnRowClick}
billsQuery={billsQuery}
/>
</Col>
<FeatureWrapperComponent featureName="bills" noauth={() => null}>
<Col span={24}>
<BillsListTable job={job} handleOnRowClick={handleBillOnRowClick} billsQuery={billsQuery} />
</Col>
</FeatureWrapperComponent>
<Col span={24}>
<PartsDispatchTable job={job} handleOnRowClick={handlePartsDispatchOnRowClick} billsQuery={billsQuery} />
</Col>
</Row>
</div>
);
}