Refactoring for 3tier setup BOD-83

This commit is contained in:
Patrick Fic
2020-05-29 17:31:28 -07:00
parent e7da6700b7
commit 5564b5dc4a
28 changed files with 742 additions and 140 deletions

View File

@@ -1,5 +1,5 @@
import React from "react";
import { Form, Input, Button, Collapse, InputNumber } from "antd";
import { Form, Input, Button, Collapse, InputNumber, Radio } from "antd";
import { useTranslation } from "react-i18next";
import ShopInfoROStatusComponent from "./shop-info.rostatus.component";
import ShopInfoOrderStatusComponent from "./shop-info.orderstatus.component";
@@ -9,95 +9,126 @@ export default function ShopInfoComponent({ form }) {
const { t } = useTranslation();
return (
<div>
<Button type="primary" htmlType="submit">
<Button type='primary' htmlType='submit'>
{t("general.actions.save")}
</Button>
<Collapse defaultActiveKey="shopinfo">
<Collapse.Panel key="shopinfo" header={t("bodyshop.labels.shopinfo")}>
<Form.Item label={t("bodyshop.fields.shopname")} name="shopname">
<Collapse defaultActiveKey='shopinfo'>
<Collapse.Panel key='shopinfo' header={t("bodyshop.labels.shopinfo")}>
<Form.Item label={t("bodyshop.fields.shopname")} name='shopname'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.address1")} name="address1">
<Form.Item label={t("bodyshop.fields.address1")} name='address1'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.address2")} name="address2">
<Form.Item label={t("bodyshop.fields.address2")} name='address2'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.city")} name="city">
<Form.Item label={t("bodyshop.fields.city")} name='city'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.state")} name="state">
<Form.Item label={t("bodyshop.fields.state")} name='state'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.zip_post")} name="zip_post">
<Form.Item label={t("bodyshop.fields.zip_post")} name='zip_post'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.country")} name="country">
<Form.Item label={t("bodyshop.fields.country")} name='country'>
<Input />
</Form.Item>
<Form.Item label={t("bodyshop.fields.email")} name="email">
<Form.Item label={t("bodyshop.fields.email")} name='email'>
<Input />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.federal_tax_id")}
name="federal_tax_id"
>
name='federal_tax_id'>
<Input />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.insurance_vendor_id")}
name="insurance_vendor_id"
>
name='insurance_vendor_id'>
<Input />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.logo_img_path")}
name="logo_img_path"
>
name='logo_img_path'>
<Input />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.state_tax_id")}
name="state_tax_id"
>
name='state_tax_id'>
<Input />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.invoice_federal_tax_rate")}
name={["invoice_tax_rates", "federal_tax_rate"]}
>
name={["invoice_tax_rates", "federal_tax_rate"]}>
<InputNumber />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.invoice_state_tax_rate")}
name={["invoice_tax_rates", "state_tax_rate"]}
>
name={["invoice_tax_rates", "state_tax_rate"]}>
<InputNumber />
</Form.Item>
<Form.Item
label={t("bodyshop.fields.invoice_local_tax_rate")}
name={["invoice_tax_rates", "local_tax_rate"]}
>
name={["invoice_tax_rates", "local_tax_rate"]}>
<InputNumber />
</Form.Item>
<Form.Item
label={t("bodyshop.labels.accountingtiers")}
rules={[
{
required: true,
message: t("general.validation.required"),
},
]}
name={["accountingconfig", "tiers"]}>
<Radio.Group>
<Radio value={2}>2</Radio>
<Radio value={3}>3</Radio>
</Radio.Group>
</Form.Item>
<Form.Item shouldUpdate>
{() => {
return (
<Form.Item
label={t("bodyshop.labels.2tiersetup")}
shouldUpdate
rules={[
{
required:
form.getFieldValue(["accountingconfig", "tiers"]) === 2,
message: t("general.validation.required"),
},
]}
name={["accountingconfig", "twotierpref"]}>
<Radio.Group
disabled={
form.getFieldValue(["accountingconfig", "tiers"]) === 3
}>
<Radio value='name'>{t("bodyshop.labels.2tiername")}</Radio>
<Radio value='source'>
{t("bodyshop.labels.2tiersource")}
</Radio>
</Radio.Group>
</Form.Item>
);
}}
</Form.Item>
</Collapse.Panel>
<Collapse.Panel
key="roStatus"
header={t("bodyshop.labels.jobstatuses")}
>
key='roStatus'
header={t("bodyshop.labels.jobstatuses")}>
<ShopInfoROStatusComponent form={form} />
</Collapse.Panel>
<Collapse.Panel
key="orderStatus"
header={t("bodyshop.labels.orderstatuses")}
>
key='orderStatus'
header={t("bodyshop.labels.orderstatuses")}>
<ShopInfoOrderStatusComponent form={form} />
</Collapse.Panel>
<Collapse.Panel
key="responsibilityCenters"
header={t("bodyshop.labels.responsibilitycenters.title")}
>
key='responsibilityCenters'
header={t("bodyshop.labels.responsibilitycenters.title")}>
<ShopInfoResponsibilityCenterComponent form={form} />
</Collapse.Panel>
</Collapse>