513 lines
10 KiB
TypeScript
513 lines
10 KiB
TypeScript
/* eslint-disable canonical/sort-keys */
|
||
import type { CalculationOptions } from '@/stores/calculation/options/types';
|
||
import { alphabetical } from 'radash';
|
||
|
||
export const selectSeasonType = [
|
||
{
|
||
label: '6/6',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: '8/4',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: '4/4/4',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'Гибкая дегрессия',
|
||
value: 100_000_007,
|
||
},
|
||
{
|
||
label: '100.50.25',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: '100.30.10',
|
||
value: 100_000_004,
|
||
},
|
||
{
|
||
label: '100.70.40',
|
||
value: 100_000_005,
|
||
},
|
||
{
|
||
label: '100.7.3',
|
||
value: 100_000_006,
|
||
},
|
||
];
|
||
|
||
export const selectHighSeasonStart = Array.from(
|
||
{
|
||
length: 12,
|
||
},
|
||
(_, i) => ({
|
||
label: `${i + 2}`,
|
||
value: 100_000_000 + i,
|
||
})
|
||
);
|
||
|
||
export const radioGraphType = [
|
||
{
|
||
label: 'аннуитет',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'дегрессия (ступенчатая)',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'равноубывающий',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'сезонный',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'легкий старт',
|
||
value: 100_000_004,
|
||
},
|
||
{
|
||
label: 'индивидуальный график',
|
||
value: 100_000_005,
|
||
},
|
||
];
|
||
|
||
export const selectObjectCategoryTax = [
|
||
'M1',
|
||
'M2',
|
||
'M3',
|
||
'M1G',
|
||
'M2G',
|
||
'M3G',
|
||
'N1',
|
||
'N2',
|
||
'N3',
|
||
'N1G',
|
||
'N2G',
|
||
'N3G',
|
||
'O1',
|
||
'O2',
|
||
'O3',
|
||
'O4',
|
||
'L1',
|
||
'L2',
|
||
'L3',
|
||
'L4',
|
||
'L5',
|
||
].map((label, i) => ({
|
||
label,
|
||
value: 100_000_000 + i,
|
||
}));
|
||
|
||
export const selectLeaseObjectUseFor = alphabetical(
|
||
[
|
||
{
|
||
label: 'Для представительских целей',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Для использования в качестве «такси»',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'Для передачи третьим лицам (прокат; аренда)',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'Каршеринг',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'Тест-драйв',
|
||
value: 100_000_004,
|
||
},
|
||
{
|
||
label: 'Для доставки продуктов конечному потребителю',
|
||
value: 100_000_005,
|
||
},
|
||
{
|
||
label: 'Для обучения вождению',
|
||
value: 100_000_006,
|
||
},
|
||
{
|
||
label: 'Маршрутные такси / Рейсовые автобусы',
|
||
value: 100_000_007,
|
||
},
|
||
{
|
||
label: 'Междугородние перевозки',
|
||
value: 100_000_008,
|
||
},
|
||
{
|
||
label: 'Для перевозки крупногабаритных грузов',
|
||
value: 100_000_009,
|
||
},
|
||
{
|
||
label: 'Для перевозки малогабаритных грузов',
|
||
value: 100_000_010,
|
||
},
|
||
{
|
||
label: 'Для перевозки сотрудников других организаций (водитель ЛП)',
|
||
value: 100_000_011,
|
||
},
|
||
{
|
||
label: 'Для перевозки сотрудников ЛП',
|
||
value: 100_000_012,
|
||
},
|
||
{
|
||
label: 'Для экскурсионных перевозок в т.ч. на торжества; трансфер в аэропорт и пр.',
|
||
value: 100_000_013,
|
||
},
|
||
{
|
||
label: 'Дорожно-строительная техника',
|
||
value: 100_000_014,
|
||
},
|
||
{
|
||
label: 'Жилищно-коммунальное хозяйство',
|
||
value: 100_000_015,
|
||
},
|
||
{
|
||
label: 'Лесное хозяйство',
|
||
value: 100_000_016,
|
||
},
|
||
{
|
||
label: 'Подъёмно-транспортная отрасль',
|
||
value: 100_000_017,
|
||
},
|
||
{
|
||
label: 'Сельское хозяйство',
|
||
value: 100_000_018,
|
||
},
|
||
{
|
||
label: 'Строительство',
|
||
value: 100_000_019,
|
||
},
|
||
],
|
||
(objectUseFor) => objectUseFor.label.toLowerCase(),
|
||
'asc'
|
||
);
|
||
|
||
export const radioCalcType = [
|
||
{
|
||
label: 'IRR',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'PI',
|
||
value: 100_000_099,
|
||
},
|
||
{
|
||
label: 'Суммы',
|
||
value: 100_000_001,
|
||
},
|
||
];
|
||
|
||
export const selectRequirementTelematic = [
|
||
{
|
||
label: 'Не требуется',
|
||
value: 100_000_004,
|
||
},
|
||
{
|
||
label: 'START',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'START+',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'COMFORT',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'COMFORT+',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'Omnicomm_1',
|
||
value: 100_000_005,
|
||
},
|
||
{
|
||
label: 'Omnicomm_2',
|
||
value: 100_000_006,
|
||
},
|
||
{
|
||
label: 'Omnicomm_3',
|
||
value: 100_000_007,
|
||
},
|
||
];
|
||
|
||
const defaultOptions: CalculationOptions = {
|
||
radioLastPaymentRule: [
|
||
{
|
||
label: 'в процентах',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'в рублях',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'равен платежу',
|
||
value: 100_000_002,
|
||
},
|
||
],
|
||
|
||
radioBalanceHolder: [
|
||
{
|
||
label: 'Лизингополучатель',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Лизингодатель',
|
||
value: 100_000_001,
|
||
},
|
||
],
|
||
|
||
radioGraphType,
|
||
|
||
selectSeasonType,
|
||
|
||
selectHighSeasonStart,
|
||
|
||
radioDeliveryTime: [
|
||
{
|
||
label: 'В наличии',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'В поставке',
|
||
value: 100_000_001,
|
||
},
|
||
],
|
||
|
||
selectEngineType: [
|
||
{
|
||
label: 'Бензин',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Дизель',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'Газ',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'Электрический',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'Гибрид',
|
||
value: 100_000_004,
|
||
},
|
||
],
|
||
|
||
selectLeaseObjectCategory: [
|
||
{
|
||
label: 'A',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'B',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'C',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'D',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'Прицеп',
|
||
value: 100_000_004,
|
||
},
|
||
],
|
||
|
||
selectLeaseObjectUseFor,
|
||
|
||
radioQuoteContactGender: [
|
||
{
|
||
label: 'Мужской',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Женский',
|
||
value: 100_000_001,
|
||
},
|
||
],
|
||
|
||
selectRequirementTelematic,
|
||
radioCalcType,
|
||
radioObjectRegistration: [
|
||
{
|
||
label: 'Лизингополучатель',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Лизингодатель',
|
||
value: 100_000_001,
|
||
},
|
||
],
|
||
radioTypePTS: [
|
||
{
|
||
label: 'Бумажный',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Электронный',
|
||
value: 100_000_001,
|
||
},
|
||
],
|
||
selectObjectCategoryTax,
|
||
selectObjectTypeTax: [
|
||
{
|
||
label: 'Автобус',
|
||
value: 100_000_000,
|
||
},
|
||
{
|
||
label: 'Легковой',
|
||
value: 100_000_001,
|
||
},
|
||
{
|
||
label: 'Грузовой',
|
||
value: 100_000_002,
|
||
},
|
||
{
|
||
label: 'Спецтехника',
|
||
value: 100_000_003,
|
||
},
|
||
{
|
||
label: 'Мотоцикл',
|
||
value: 100_000_004,
|
||
},
|
||
],
|
||
selectLead: [],
|
||
selectOpportunity: [],
|
||
selectQuote: [],
|
||
cbxRecalcWithRevision: [],
|
||
selectProduct: [],
|
||
selectClientRisk: [],
|
||
selectClientType: [],
|
||
tbxLeaseObjectPrice: [],
|
||
tbxLeaseObjectPriceWthtVAT: [],
|
||
tbxVATInLeaseObjectPrice: [],
|
||
tbxEngineHours: [],
|
||
selectSupplierCurrency: [],
|
||
tbxSupplierDiscountRub: [],
|
||
tbxSupplierDiscountPerc: [],
|
||
tbxLeasingPeriod: [],
|
||
tbxFirstPaymentPerc: [],
|
||
tbxFirstPaymentRub: [],
|
||
tbxLastPaymentPerc: [],
|
||
tbxLastPaymentRub: [],
|
||
tbxRedemptionPaymentSum: [],
|
||
tbxParmentsDecreasePercent: [],
|
||
tbxComissionPerc: [],
|
||
tbxComissionRub: [],
|
||
tbxSaleBonus: [],
|
||
tbxIRR_Perc: [],
|
||
selectLeaseObjectType: [],
|
||
labelDepreciationGroup: [],
|
||
tbxLeaseObjectCount: [],
|
||
cbxWithTrailer: [],
|
||
cbxLeaseObjectUsed: [],
|
||
tbxMaxMass: [],
|
||
tbxCountSeats: [],
|
||
tbxMaxSpeed: [],
|
||
selectBrand: [],
|
||
selectModel: [],
|
||
selectConfiguration: [],
|
||
tbxLeaseObjectYear: [],
|
||
tbxLeaseObjectMotorPower: [],
|
||
tbxEngineVolume: [],
|
||
selectDealer: [],
|
||
selectDealerPerson: [],
|
||
selectDealerRewardCondition: [],
|
||
tbxDealerRewardSumm: [],
|
||
selectDealerBroker: [],
|
||
selectDealerBrokerRewardCondition: [],
|
||
tbxDealerBrokerRewardSumm: [],
|
||
selectIndAgent: [],
|
||
selectIndAgentRewardCondition: [],
|
||
tbxIndAgentRewardSumm: [],
|
||
selectCalcDoubleAgent: [],
|
||
selectCalcDoubleAgentRewardCondition: [],
|
||
tbxCalcDoubleAgentRewardSumm: [],
|
||
selectCalcBroker: [],
|
||
selectCalcBrokerRewardCondition: [],
|
||
tbxCalcBrokerRewardSum: [],
|
||
selectCalcFinDepartment: [],
|
||
selectFinDepartmentRewardCondtion: [],
|
||
tbxFinDepartmentRewardSumm: [],
|
||
selectGPSBrand: [],
|
||
selectGPSModel: [],
|
||
selectRegionRegistration: [],
|
||
selectTownRegistration: [],
|
||
cbxInsDecentral: [],
|
||
tbxInsFranchise: [],
|
||
cbxInsUnlimitDrivers: [],
|
||
tbxInsAgeDrivers: [],
|
||
tbxInsExpDrivers: [],
|
||
cbxLastPaymentRedemption: [],
|
||
cbxPriceWithDiscount: [],
|
||
cbxFullPriceWithDiscount: [],
|
||
cbxCostIncrease: [],
|
||
cbxInsurance: [],
|
||
cbxRegistrationQuote: [],
|
||
cbxTechnicalCardQuote: [],
|
||
cbxNSIB: [],
|
||
tbxQuoteName: [],
|
||
cbxQuoteRedemptionGraph: [],
|
||
cbxShowFinGAP: [],
|
||
selectTarif: [],
|
||
tbxCreditRate: [],
|
||
selectRate: [],
|
||
tbxMaxPriceChange: [],
|
||
tbxImporterRewardPerc: [],
|
||
tbxImporterRewardRub: [],
|
||
cbxDisableChecks: [],
|
||
selectRegistration: [],
|
||
selectInsNSIB: [],
|
||
selectTechnicalCard: [],
|
||
selectTelematic: [],
|
||
selectTracker: [],
|
||
tbxMileage: [],
|
||
tbxTotalPayments: [],
|
||
selectObjectRegionRegistration: [],
|
||
tbxVehicleTaxInYear: [],
|
||
tbxVehicleTaxInLeasingPeriod: [],
|
||
selectLegalClientRegion: [],
|
||
selectLegalClientTown: [],
|
||
selectSubsidy: [],
|
||
tbxSubsidySum: [],
|
||
selectFuelCard: [],
|
||
tbxMinPriceChange: [],
|
||
linkDownloadKp: [],
|
||
selectImportProgram: [],
|
||
tbxImportProgramSum: [],
|
||
tbxAddEquipmentPrice: [],
|
||
labelLeaseObjectRisk: [],
|
||
tbxInsKaskoPriceLeasePeriod: [],
|
||
labelIrrInfo: [],
|
||
labelRegistrationDescription: [],
|
||
linkLeadUrl: [],
|
||
linkOpportunityUrl: [],
|
||
linkQuoteUrl: [],
|
||
tbxBonusCoefficient: [],
|
||
selectLeasingWithoutKasko: [],
|
||
tbxVIN: [],
|
||
selectUser: [],
|
||
cbxSupplierFinancing: [],
|
||
tbxPi: [],
|
||
cbxPartialVAT: [],
|
||
cbxFloatingRate: [],
|
||
cbxQuotePriceWithFullVAT: [],
|
||
};
|
||
|
||
export default defaultOptions;
|