import {
Alert,
Col,
Form,
Radio,
Row,
Skeleton,
Space,
Spin,
Typography,
} from "antd";
import React from "react";
import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
import { selectBodyshop } from "../../redux/user/user.selectors";
import ReadOnlyFormItemComponent from "../form-items-formatted/read-only-form-item.component";
import JobSearchSelectComponent from "../job-search-select/job-search-select.component";
const mapStateToProps = createStructuredSelector({
//currentUser: selectCurrentUser
bodyshop: selectBodyshop,
});
const mapDispatchToProps = (dispatch) => ({
//setUserLanguage: language => dispatch(setUserLanguage(language))
});
export default connect(
mapStateToProps,
mapDispatchToProps
)(TimeTicketTaskModalComponent);
export function TimeTicketTaskModalComponent({
bodyshop,
form,
loading,
completedTasks,
unassignedHours,
}) {
const { t } = useTranslation();
return (
{loading ? (
) : (
({
value: preset.name,
label: preset.name,
disabled: completedTasks
.map((task) => task.name)
.includes(preset.name),
}))}
/>
)}
{() => {
const { task } = form.getFieldsValue();
const theTaskPreset = bodyshop.md_tasks_presets?.presets?.find(
(tp) => tp.name === task
);
if (!task) return null;
return (
| {t("bodyshop.fields.md_tasks_presets.percent")} |
{`${theTaskPreset.percent || 0}%`} |
|
{t("bodyshop.fields.md_tasks_presets.hourstype")}
|
{theTaskPreset.hourstype.join(", ")} |
|
{t("bodyshop.fields.md_tasks_presets.nextstatus")}
|
{theTaskPreset.nextstatus} |
);
}}
{loading ? (
) : (
{(fields, { add, remove, move }) => {
return (
<>
{t("timetickets.labels.claimtaskpreview")}
| {t("timetickets.fields.employee")} |
{t("timetickets.fields.cost_center")} |
{t("timetickets.fields.ciecacode")} |
{t("timetickets.fields.productivehrs")} |
{fields.map((field, index) => (
|
|
|
|
|
))}
>
);
}}
)}
{unassignedHours > 0 && (
)}
{bodyshop?.md_tasks_presets?.use_approvals && (
)}
);
}