import { CostTypeVariant } from '@prisma/client';
import { startOfDay, endOfDay } from 'date-fns';

export const TSW_AOK_TARIFFS = [
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2021-01-01')),
    validTo: endOfDay(new Date('2021-06-30')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS,
        costAmount: 5000,
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 170,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag 19:00-07:00',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 2445,
        timeRange: '19:00-07:00',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 2445,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 2445,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2021-07-01')),
    validTo: endOfDay(new Date('2022-08-31')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS,
        costAmount: 5100,
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 170,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag s19:00-07:00',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 2445,
        timeRange: '19:00-07:00',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 2445,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 2445,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2022-09-01')),
    validTo: endOfDay(new Date('2023-04-30')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS,
        costAmount: 5450,
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 180,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag 18:00-07:30',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 2600,
        timeRange: '18:00-07:30',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 2600,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 2600,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2023-05-01')),
    validTo: endOfDay(new Date('2024-06-30')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS,
        costAmount: 5800,
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 190,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag 18:00-07:30',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 2700,
        timeRange: '18:00-07:30',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 2700,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 2700,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2024-07-01')),
    validTo: endOfDay(new Date('2024-12-31')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6000,
        timeRange: '00:00-14:29',
      },
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6000,
        timeRange: '18:01-23:59',
      },
      {
        description: 'Nachmittagspauschale 14:30-18:00',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 7000,
        timeRange: '14:30-18:00',
      },
      {
        description: 'Nachtzuschlag 18:00-07:30',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 5000,
        timeRange: '18:00-07:30',
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 200,
        kmInclusive: 20,
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 5000,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 5000,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2025-01-01')),
    validTo: endOfDay(new Date('2025-12-31')),
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6250,
        timeRange: '00:00-14:29',
      },
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6250,
        timeRange: '18:01-23:59',
      },
      {
        description: 'Nachmittagspauschale 14:30-18:00',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 7500,
        timeRange: '14:30-18:00',
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 200,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag 18:00-07:30',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 6000,
        timeRange: '18:00-07:30',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 6000,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 6000,
      },
    ],
  },
  {
    description: 'AOK/BKK/IKK/Knappschaft TSW',
    validFrom: startOfDay(new Date('2026-01-01')),
    validTo: null,
    costTypes: [
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6500,
        timeRange: '00:00-14:29',
      },
      {
        description: 'Nachmittagspauschale 14:30-18:00',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 7500,
        timeRange: '14:30-18:00',
      },
      {
        description: 'Grundpauschale je Fahrt',
        variant: CostTypeVariant.GRUNDPREIS_ZEIT,
        costAmount: 6500,
        timeRange: '18:01-23:59',
      },
      {
        description: 'ab dem 21. km',
        variant: CostTypeVariant.KILOMETERZUSCHLAG,
        costAmount: 200,
        kmInclusive: 20,
      },
      {
        description: 'Nachtzuschlag 18:00-07:30',
        variant: CostTypeVariant.NACHTZUSCHLAG,
        costAmount: 6000,
        timeRange: '18:00-07:30',
      },
      {
        description: 'Wochenendzuschlag',
        variant: CostTypeVariant.WOCHENENDZUSCHLAG,
        costAmount: 6000,
      },
      {
        description: 'Feiertagszuschlag',
        variant: CostTypeVariant.FEIERTAGSZUSCHLAG,
        costAmount: 6000,
      },
    ],
  },
];
