This repository has been archived on 2025-05-09. You can view files and clone it, but cannot push or open issues or pull requests.
2021-09-09 11:23:47 +03:00

186 lines
5.8 KiB
TypeScript

import ELT from 'client/Components/Calculation/ELT';
import Button from 'client/Elements/Button';
import Checkbox from 'client/Elements/Checkbox';
import Input from 'client/Elements/Input';
import InputNumber from 'client/Elements/InputNumber';
import Label from 'client/Elements/Label';
import Link from 'client/Elements/Link';
import Radio from 'client/Elements/Radio';
import Select from 'client/Elements/Select';
import Switch from 'client/Elements/Switch';
import Table from 'client/Elements/Table';
import TextArea from 'client/Elements/TextArea';
import { Component } from 'core/types/Calculation/components';
import { TElements } from 'core/types/Calculation/Store/elements';
import { StoreTables } from 'core/types/Calculation/Store/tables';
const elementsComponents: TElements<Component> = {
selectChannel: Select,
tbxNewClient: Input,
selectAccount: Select,
tbxINN: Input,
tbxKPP: Input,
selectContactClient: Select,
tbxContact: Input,
radioContactGender: Radio,
tbxPhoneNumber: Input,
tbxEmailAddress: Input,
selectSupplier: Select,
selectFinDepartment: Select,
selectBroker: Select,
selectAgent: Select,
selectDoubleAgent: Select,
tbxCommentLead: TextArea,
btnCreateLead: Button,
selectProduct: Select,
selectClientRisk: Select,
selectClientType: Select,
selectSupplierCurrency: Select,
tbxLeaseObjectPrice: InputNumber,
tbxSupplierDiscountRub: InputNumber,
tbxSupplierDiscountPerc: InputNumber,
radioBalanceHolder: Radio,
tbxSaleBonus: InputNumber,
tbxFirstPaymentPerc: InputNumber,
tbxFirstPaymentRub: InputNumber,
radioLastPaymentRule: Radio,
tbxLastPaymentPerc: InputNumber,
tbxLastPaymentRub: InputNumber,
tbxLeasingPeriod: InputNumber,
radioGraphType: Radio,
tbxParmentsDecreasePercent: InputNumber,
selectSeasonType: Select,
selectHighSeasonStart: Select,
tbxComissionPerc: InputNumber,
tbxComissionRub: InputNumber,
selectLeaseObjectType: Select,
selectBrand: Select,
selectModel: Select,
selectConfiguration: Select,
labelLeaseObjectRisk: Label,
labelDepreciationGroup: Label,
cbxLeaseObjectUsed: Checkbox,
radioDeliveryTime: Radio,
tbxLeaseObjectCount: InputNumber,
selectLeaseObjectUseFor: Select,
tbxLeaseObjectYear: InputNumber,
selectLeaseObjectCategory: Select,
selectEngineType: Select,
tbxLeaseObjectMotorPower: InputNumber,
tbxEngineVolume: InputNumber,
tbxMaxMass: InputNumber,
tbxCountSeats: InputNumber,
tbxMaxSpeed: InputNumber,
cbxWithTrailer: Checkbox,
selectDealer: Select,
selectDealerPerson: Select,
selectDealerRewardCondition: Select,
tbxDealerRewardSumm: InputNumber,
selectDealerBroker: Select,
selectDealerBrokerRewardCondition: Select,
tbxDealerBrokerRewardSumm: InputNumber,
selectIndAgent: Select,
selectIndAgentRewardCondition: Select,
tbxIndAgentRewardSumm: InputNumber,
selectCalcDoubleAgent: Select,
selectCalcDoubleAgentRewardCondition: Select,
tbxCalcDoubleAgentRewardSumm: InputNumber,
selectCalcBroker: Select,
selectCalcBrokerRewardCondition: Select,
tbxCalcBrokerRewardSum: InputNumber,
selectCalcFinDepartment: Select,
selectFinDepartmentRewardCondtion: Select,
tbxFinDepartmentRewardSumm: InputNumber,
cbxInsDecentral: Switch,
radioInsKaskoType: Radio,
tbxInsFranchise: InputNumber,
selectInsPeriod: Select,
btnFranschise: Button,
cbxInsUnlimitDrivers: Switch,
tbxInsAgeDrivers: InputNumber,
tbxInsExpDrivers: InputNumber,
tbxINNForCalc: InputNumber,
btnDriversApplication: Button,
selectGPSBrand: Select,
selectGPSModel: Select,
selectRegionRegistration: Select,
selectTownRegistration: Select,
radioInfuranceOPF: Radio,
tbxInsKaskoPriceLeasePeriod: InputNumber,
selectRegistration: Select,
selectInsNSIB: Select,
radioRequirementTelematic: Radio,
selectTracker: Select,
selectTelematic: Select,
selectTechnicalCard: Select,
cbxLastPaymentRedemption: Switch,
cbxPriceWithDiscount: Switch,
cbxFullPriceWithDiscount: Switch,
cbxCostIncrease: Switch,
cbxInsurance: Switch,
cbxRegistrationQuote: Switch,
cbxTechnicalCardQuote: Switch,
cbxNSIB: Switch,
cbxQuoteRedemptionGraph: Switch,
tbxQuoteName: Input,
radioQuoteContactGender: Radio,
btnCreateKP: Button,
selectUserSession: Select,
cbxDisableChecks: Switch,
selectTarif: Select,
tbxCreditRate: InputNumber,
selectRate: Select,
tbxMaxPriceChange: InputNumber,
tbxImporterRewardPerc: InputNumber,
tbxImporterRewardRub: InputNumber,
selectLead: Select,
selectOpportunity: Select,
selectQuote: Select,
cbxRecalcWithRevision: Checkbox,
btnCalculate: Button,
tbxIRR_Perc: InputNumber,
labelIrrInfo: Label,
labelResultTotalGraphwithNDS: Label,
labelResultPlPrice: Label,
labelResultPriceUpPr: Label,
labelResultIRRGraphPerc: Label,
labelResultIRRNominalPerc: Label,
labelResultInsKasko: Label,
labelResultInsOsago: Label,
labelResultDopProdSum: Label,
labelResultFirstPayment: Label,
labelResultLastPayment: Label,
labelResultTerm: Label,
labelResultAB_FL: Label,
labelResultAB_UL: Label,
labelResultBonusMPL: Label,
labelResultDopMPLLeasing: Label,
labelResultBonusDopProd: Label,
linkDownloadKp: Link,
tbxMileage: InputNumber,
radioCalcType: Radio,
tbxTotalPayments: InputNumber,
componentElt: ELT,
radioObjectRegistration: Radio,
selectObjectRegionRegistration: Select,
tbxVehicleTaxInYear: InputNumber,
tbxVehicleTaxInLeasingPeriod: InputNumber,
selectObjectCategoryTax: Select,
selectObjectTypeTax: Select,
radioTypePTS: Radio,
labelRegistrationDescription: Label,
selectLegalClientRegion: Select,
selectLegalClientTown: Select,
selectSubsidy: Select,
selectFuelCard: Select,
labelSubsidySum: Label,
};
const tablesComponents: StoreTables<Component> = {
tableInsurance: Table,
tablePayments: Table,
tableResults: Table,
};
export default Object.assign(elementsComponents, tablesComponents);