52 lines
1.0 KiB
JavaScript
52 lines
1.0 KiB
JavaScript
import { Button, Dropdown } from "antd";
|
|
import React from "react";
|
|
|
|
export default function TimeTicketsTasksPresets({
|
|
form,
|
|
calculateTimeTickets,
|
|
}) {
|
|
const handleClick = (props) => {
|
|
const preset = samplePresets.find((p) => {
|
|
return p.name === props.key;
|
|
});
|
|
|
|
if (preset) {
|
|
form.setFieldsValue({
|
|
percent: preset.percent,
|
|
hourstype: preset.hourstype,
|
|
});
|
|
|
|
calculateTimeTickets(preset.memo);
|
|
}
|
|
};
|
|
|
|
return (
|
|
<Dropdown
|
|
trigger="click"
|
|
menu={{
|
|
items: samplePresets.map((p) => ({ label: p.name, key: p.name })),
|
|
onClick: handleClick,
|
|
}}
|
|
>
|
|
<Button>Presets</Button>
|
|
</Dropdown>
|
|
);
|
|
}
|
|
|
|
const samplePresets = [
|
|
{
|
|
name: "Teardown",
|
|
hourstype: ["LAB", "LAM"],
|
|
percent: 10,
|
|
memo: "Teardown Preset Task",
|
|
},
|
|
{
|
|
name: "Disassembly",
|
|
hourstype: ["LAB", "LAD"],
|
|
percent: 20,
|
|
memo: "Disassy Preset Claim",
|
|
},
|
|
{ name: "Body", hourstype: ["LAB", "LAD"], percent: 20 },
|
|
{ name: "Prep", hourstype: ["LAR"], percent: 20 },
|
|
];
|