Merge branch 'release/AIO/2024-05-10' into test-AIO

This commit is contained in:
Patrick Fic
2024-05-10 08:33:31 -07:00
2 changed files with 334 additions and 346 deletions

View File

@@ -18,8 +18,6 @@ import ChatOpenButton from "../chat-open-button/chat-open-button.component";
import OwnerNameDisplay from "../owner-name-display/owner-name-display.component"; import OwnerNameDisplay from "../owner-name-display/owner-name-display.component";
import { setJoyRideSteps } from "../../redux/application/application.actions"; import { setJoyRideSteps } from "../../redux/application/application.actions";
import { OwnerNameDisplayFunction } from "./../owner-name-display/owner-name-display.component"; import { OwnerNameDisplayFunction } from "./../owner-name-display/owner-name-display.component";
import InstanceRenderManager from "../../utils/instanceRenderMgr";
const mapStateToProps = createStructuredSelector({ const mapStateToProps = createStructuredSelector({
bodyshop: selectBodyshop bodyshop: selectBodyshop
}); });

View File

@@ -30,227 +30,219 @@ export function ShopInfoRbacComponent({ form, bodyshop }) {
return ( return (
<RbacWrapper action="shop:rbac"> <RbacWrapper action="shop:rbac">
<LayoutFormRow> <LayoutFormRow>
{HasFeatureAccess({ featureName: "export", bodyshop }) && ( {...HasFeatureAccess({ featureName: "export", bodyshop }) && [
<> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.accounting.exportlog")}
label={t("bodyshop.fields.rbac.accounting.exportlog")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "accounting:exportlog"]}
name={["md_rbac", "accounting:exportlog"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.accounting.payables")}
label={t("bodyshop.fields.rbac.accounting.payables")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "accounting:payables"]}
name={["md_rbac", "accounting:payables"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.accounting.payments")}
label={t("bodyshop.fields.rbac.accounting.payments")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "accounting:payments"]}
name={["md_rbac", "accounting:payments"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.accounting.receivables")}
label={t("bodyshop.fields.rbac.accounting.receivables")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "accounting:receivables"]}
name={["md_rbac", "accounting:receivables"]} >
> <InputNumber />
<InputNumber /> </Form.Item>
</Form.Item> ]}
</> {...HasFeatureAccess({ featureName: "bills", bodyshop }) && [
)} <Form.Item
{HasFeatureAccess({ featureName: "bills", bodyshop }) && ( label={t("bodyshop.fields.rbac.bills.delete")}
<> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.bills.delete")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "bills:delete"]}
} >
]} <InputNumber />
name={["md_rbac", "bills:delete"]} </Form.Item>,
> <Form.Item
<InputNumber /> label={t("bodyshop.fields.rbac.bills.enter")}
</Form.Item> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.bills.enter")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "bills:enter"]}
} >
]} <InputNumber />
name={["md_rbac", "bills:enter"]} </Form.Item>,
> <Form.Item
<InputNumber /> label={t("bodyshop.fields.rbac.bills.list")}
</Form.Item> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.bills.list")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "bills:list"]}
} >
]} <InputNumber />
name={["md_rbac", "bills:list"]} </Form.Item>,
> <Form.Item
<InputNumber /> label={t("bodyshop.fields.rbac.bills.reexport")}
</Form.Item> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.bills.reexport")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "bills:reexport"]}
} >
]} <InputNumber />
name={["md_rbac", "bills:reexport"]} </Form.Item>,
> <Form.Item
<InputNumber /> label={t("bodyshop.fields.rbac.bills.view")}
</Form.Item> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.bills.view")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "bills:view"]}
} >
]} <InputNumber />
name={["md_rbac", "bills:view"]} </Form.Item>
> ]}
<InputNumber />
</Form.Item>
</>
)}
{HasFeatureAccess({ featureName: "courtesycars", bodyshop }) && ( {...HasFeatureAccess({ featureName: "courtesycars", bodyshop }) && [
<> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.contracts.create")}
label={t("bodyshop.fields.rbac.contracts.create")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "contracts:create"]}
name={["md_rbac", "contracts:create"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.contracts.detail")}
label={t("bodyshop.fields.rbac.contracts.detail")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "contracts:detail"]}
name={["md_rbac", "contracts:detail"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.contracts.list")}
label={t("bodyshop.fields.rbac.contracts.list")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "contracts:list"]}
name={["md_rbac", "contracts:list"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.courtesycar.create")}
label={t("bodyshop.fields.rbac.courtesycar.create")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "courtesycar:create"]}
name={["md_rbac", "courtesycar:create"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.courtesycar.detail")}
label={t("bodyshop.fields.rbac.courtesycar.detail")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "courtesycar:detail"]}
name={["md_rbac", "courtesycar:detail"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.courtesycar.list")}
label={t("bodyshop.fields.rbac.courtesycar.list")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "courtesycar:list"]}
name={["md_rbac", "courtesycar:list"]} >
> <InputNumber />
<InputNumber /> </Form.Item>
</Form.Item> ]}
</> {...HasFeatureAccess({ featureName: "csi", bodyshop }) && [
)} <Form.Item
{HasFeatureAccess({ featureName: "csi", bodyshop }) && ( label={t("bodyshop.fields.rbac.csi.export")}
<> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.csi.export")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "csi:export"]}
} >
]} <InputNumber />
name={["md_rbac", "csi:export"]} </Form.Item>,
> <Form.Item
<InputNumber /> label={t("bodyshop.fields.rbac.csi.page")}
</Form.Item> rules={[
<Form.Item {
label={t("bodyshop.fields.rbac.csi.page")} required: true
rules={[ //message: t("general.validation.required"),
{ }
required: true ]}
//message: t("general.validation.required"), name={["md_rbac", "csi:page"]}
} >
]} <InputNumber />
name={["md_rbac", "csi:page"]} </Form.Item>
> ]}
<InputNumber />
</Form.Item>
</>
)}
<Form.Item <Form.Item
label={t("bodyshop.fields.rbac.employees.page")} label={t("bodyshop.fields.rbac.employees.page")}
rules={[ rules={[
@@ -569,130 +561,128 @@ export function ShopInfoRbacComponent({ form, bodyshop }) {
<InputNumber /> <InputNumber />
</Form.Item> </Form.Item>
)} )}
{HasFeatureAccess({ featureName: "timetickets", bodyshop }) && ( {...HasFeatureAccess({ featureName: "timetickets", bodyshop }) && [
<> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.shiftclock.view")}
label={t("bodyshop.fields.rbac.shiftclock.view")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "shiftclock:view"]}
name={["md_rbac", "shiftclock:view"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.shop.config")}
label={t("bodyshop.fields.rbac.shop.config")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "shop:config"]}
name={["md_rbac", "shop:config"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.edit")}
label={t("bodyshop.fields.rbac.timetickets.edit")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:edit"]}
name={["md_rbac", "timetickets:edit"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.shiftedit")}
label={t("bodyshop.fields.rbac.timetickets.shiftedit")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:shiftedit"]}
name={["md_rbac", "timetickets:shiftedit"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.editcommitted")}
label={t("bodyshop.fields.rbac.timetickets.editcommitted")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:editcommitted"]}
name={["md_rbac", "timetickets:editcommitted"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.ttapprovals.view")}
label={t("bodyshop.fields.rbac.ttapprovals.view")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "ttapprovals:view"]}
name={["md_rbac", "ttapprovals:view"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.ttapprovals.approve")}
label={t("bodyshop.fields.rbac.ttapprovals.approve")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "ttapprovals:approve"]}
name={["md_rbac", "ttapprovals:approve"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.enter")}
label={t("bodyshop.fields.rbac.timetickets.enter")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:enter"]}
name={["md_rbac", "timetickets:enter"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.list")}
label={t("bodyshop.fields.rbac.timetickets.list")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:list"]}
name={["md_rbac", "timetickets:list"]} >
> <InputNumber />
<InputNumber /> </Form.Item>,
</Form.Item> <Form.Item
<Form.Item label={t("bodyshop.fields.rbac.timetickets.shiftedit")}
label={t("bodyshop.fields.rbac.timetickets.shiftedit")} rules={[
rules={[ {
{ required: true
required: true //message: t("general.validation.required"),
//message: t("general.validation.required"), }
} ]}
]} name={["md_rbac", "timetickets:shiftedit"]}
name={["md_rbac", "timetickets:shiftedit"]} >
> <InputNumber />
<InputNumber /> </Form.Item>
</Form.Item> ]}
</>
)}
<Form.Item <Form.Item
label={t("bodyshop.fields.rbac.shop.vendors")} label={t("bodyshop.fields.rbac.shop.vendors")}
rules={[ rules={[