import { WarningFilled } from "@ant-design/icons"; import { Form, Input, InputNumber, Space } from "antd"; import { useTranslation } from "react-i18next"; import { DateFormatter } from "../../utils/DateFormatter"; import dayjs from "../../utils/day"; //import ContractLicenseDecodeButton from "../contract-license-decode-button/contract-license-decode-button.component"; import ContractStatusSelector from "../contract-status-select/contract-status-select.component"; import ContractsRatesChangeButton from "../contracts-rates-change-button/contracts-rates-change-button.component"; import CourtesyCarFuelSlider from "../courtesy-car-fuel-select/courtesy-car-fuel-select.component"; import { default as DateTimePicker, default as FormDateTimePicker } from "../form-date-time-picker/form-date-time-picker.component"; import FormFieldsChanged from "../form-fields-changed-alert/form-fields-changed-alert.component"; import InputPhone, { PhoneItemFormatterValidation } from "../form-items-formatted/phone-form-item.component"; import LayoutFormRow from "../layout-form-row/layout-form-row.component"; import ContractFormJobPrefill from "./contract-form-job-prefill.component"; export default function ContractFormComponent({ form, create = false, selectedJobState, selectedCar }) { const { t } = useTranslation(); return ( <> {!create && } {!create && ( )} {!create && ( )} {create && ( p.scheduledreturn !== c.scheduledreturn}> {() => { const insuranceOver = selectedCar && selectedCar.insuranceexpires && dayjs(selectedCar.insuranceexpires) .endOf("day") .isBefore(dayjs(form.getFieldValue("scheduledreturn"))); if (insuranceOver) return ( {t("contracts.labels.insuranceexpired")} ); return <>; }} )} {create && ( p.kmstart !== c.kmstart || p.scheduledreturn !== c.scheduledreturn}> {() => { const mileageOver = selectedCar && selectedCar.nextservicekm ? selectedCar.nextservicekm <= form.getFieldValue("kmstart") : false; const dueForService = selectedCar && selectedCar.nextservicedate && dayjs(selectedCar.nextservicedate) .endOf("day") .isSameOrBefore(dayjs(form.getFieldValue("scheduledreturn"))); if (mileageOver || dueForService) return ( {t("contracts.labels.cardueforservice")} {`${selectedCar && selectedCar.nextservicekm} km`} {selectedCar && selectedCar.nextservicedate} ); return <>; }} )} {!create && ( )} {!create && ( )} {create && selectedJobState && ( )} {/* {} */} p.driver_dlexpiry !== c.driver_dlexpiry || p.scheduledreturn !== c.scheduledreturn} > {() => { const dlExpiresBeforeReturn = dayjs(form.getFieldValue("driver_dlexpiry")).isBefore( dayjs(form.getFieldValue("scheduledreturn")) ); return ( <> {dlExpiresBeforeReturn && ( {t("contracts.labels.dlexpirebeforereturn")} )} ); }} PhoneItemFormatterValidation(getFieldValue, "driver_ph1") ]} > ); }