Index: distributor-app-frontend/src/app/components/home/home.component.html
===================================================================
--- distributor-app-frontend/src/app/components/home/home.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/home/home.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,1 @@
+<p>home works!</p>
Index: distributor-app-frontend/src/app/components/home/home.component.spec.ts
===================================================================
--- distributor-app-frontend/src/app/components/home/home.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/home/home.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { HomeComponent } from './home.component';
+
+describe('HomeComponent', () => {
+  let component: HomeComponent;
+  let fixture: ComponentFixture<HomeComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [HomeComponent]
+    })
+    .compileComponents();
+
+    fixture = TestBed.createComponent(HomeComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
Index: distributor-app-frontend/src/app/components/home/home.component.ts
===================================================================
--- distributor-app-frontend/src/app/components/home/home.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/home/home.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-home',
+  imports: [],
+  templateUrl: './home.component.html',
+  styleUrl: './home.component.css'
+})
+export class HomeComponent {
+
+}
Index: distributor-app-frontend/src/app/components/login/login.component.html
===================================================================
--- distributor-app-frontend/src/app/components/login/login.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/login/login.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,1 @@
+<p>login works!</p>
Index: distributor-app-frontend/src/app/components/login/login.component.spec.ts
===================================================================
--- distributor-app-frontend/src/app/components/login/login.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/login/login.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { LoginComponent } from './login.component';
+
+describe('LoginComponent', () => {
+  let component: LoginComponent;
+  let fixture: ComponentFixture<LoginComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [LoginComponent]
+    })
+    .compileComponents();
+
+    fixture = TestBed.createComponent(LoginComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
Index: distributor-app-frontend/src/app/components/login/login.component.ts
===================================================================
--- distributor-app-frontend/src/app/components/login/login.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/login/login.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-login',
+  imports: [],
+  templateUrl: './login.component.html',
+  styleUrl: './login.component.css'
+})
+export class LoginComponent {
+
+}
Index: distributor-app-frontend/src/app/components/navbar/navbar.component.html
===================================================================
--- distributor-app-frontend/src/app/components/navbar/navbar.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/navbar/navbar.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,1 @@
+<p>navbar works!</p>
Index: distributor-app-frontend/src/app/components/navbar/navbar.component.spec.ts
===================================================================
--- distributor-app-frontend/src/app/components/navbar/navbar.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/navbar/navbar.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { NavbarComponent } from './navbar.component';
+
+describe('NavbarComponent', () => {
+  let component: NavbarComponent;
+  let fixture: ComponentFixture<NavbarComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [NavbarComponent]
+    })
+    .compileComponents();
+
+    fixture = TestBed.createComponent(NavbarComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
Index: distributor-app-frontend/src/app/components/navbar/navbar.component.ts
===================================================================
--- distributor-app-frontend/src/app/components/navbar/navbar.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/navbar/navbar.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-navbar',
+  imports: [],
+  templateUrl: './navbar.component.html',
+  styleUrl: './navbar.component.css'
+})
+export class NavbarComponent {
+
+}
Index: distributor-app-frontend/src/app/components/register/register.component.html
===================================================================
--- distributor-app-frontend/src/app/components/register/register.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/register/register.component.html	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,1 @@
+<p>register works!</p>
Index: distributor-app-frontend/src/app/components/register/register.component.spec.ts
===================================================================
--- distributor-app-frontend/src/app/components/register/register.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/register/register.component.spec.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,23 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { RegisterComponent } from './register.component';
+
+describe('RegisterComponent', () => {
+  let component: RegisterComponent;
+  let fixture: ComponentFixture<RegisterComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [RegisterComponent]
+    })
+    .compileComponents();
+
+    fixture = TestBed.createComponent(RegisterComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
Index: distributor-app-frontend/src/app/components/register/register.component.ts
===================================================================
--- distributor-app-frontend/src/app/components/register/register.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/components/register/register.component.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+
+@Component({
+  selector: 'app-register',
+  imports: [],
+  templateUrl: './register.component.html',
+  styleUrl: './register.component.css'
+})
+export class RegisterComponent {
+
+}
Index: distributor-app-frontend/src/app/models/article.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/article.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/article.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,14 @@
+import { ArticleUnitModel } from './articleUnit.model';
+import { CategoryModel } from './category.model';
+import { ManufacturerModel } from './manufacturer.model';
+import { PriceModel } from './price.model';
+
+export interface ArticleModel {
+  articleId: number;
+  articleName: string;
+  articleWeight: number;
+  category?: CategoryModel;
+  manufacturer?: ManufacturerModel;
+  prices?: PriceModel[];
+  articleUnits?: ArticleUnitModel[];
+}
Index: distributor-app-frontend/src/app/models/articleUnit.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/articleUnit.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/articleUnit.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,15 @@
+import { ArticleModel } from './article.model';
+import { OrderModel } from './order.model';
+import { WarehouseModel } from './warehouse.model';
+
+export interface ArticleUnitModel {
+  unitId: number;
+  unitExpirationDate: string;
+  unitSerialNumber: string;
+  unitBatchModel: string;
+  unitManufactureDate: string;
+  unitCostPrice: number;
+  article?: ArticleModel;
+  warehouse?: WarehouseModel;
+  order?: OrderModel;
+}
Index: distributor-app-frontend/src/app/models/category.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/category.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/category.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,7 @@
+import { ArticleModel } from './article.model';
+
+export interface CategoryModel {
+  categoryId: number;
+  categoryName: string;
+  articles?: ArticleModel[];
+}
Index: distributor-app-frontend/src/app/models/city.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/city.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/city.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,9 @@
+import { UserModel } from './user.model';
+import { WarehouseModel } from './warehouse.model';
+
+export interface CityModel {
+  cityId: number;
+  cityName: string;
+  users?: UserModel[];
+  warehouses?: WarehouseModel[];
+}
Index: distributor-app-frontend/src/app/models/customer.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/customer.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/customer.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,12 @@
+import { OrderModel } from './order.model';
+import { UserModel } from './user.model';
+
+export interface CustomerModel extends UserModel {
+  edb: string;
+  companyName: string;
+  address: string;
+  openTime: string;
+  closeTime: string;
+  representativeImage: string;
+  orders?: OrderModel[];
+}
Index: distributor-app-frontend/src/app/models/delivery.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/delivery.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/delivery.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,16 @@
+import { DeliveryStatusModel } from './deliveryStatus.model';
+import { OrderModel } from './order.model';
+import { VehicleModel } from './vehicle.model';
+
+export interface DeliveryModel {
+  deliveryId: number;
+  deliveryDateCreated: string;
+  deliveryDate: string;
+  deliveryStartKm: number;
+  deliveryEndKm: number;
+  deliveryStartTime: number;
+  deliveryEndTime: number;
+  deliveryStatus?: DeliveryStatusModel;
+  vehicle?: VehicleModel;
+  orders?: OrderModel[];
+}
Index: distributor-app-frontend/src/app/models/deliveryStatus.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/deliveryStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/deliveryStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,8 @@
+import { DeliveryModel } from './delivery.model';
+
+export interface DeliveryStatusModel {
+  deliveryStatusId: number;
+  deliveryStatusName: string;
+  deliveryStatusDescription: string;
+  deliveries?: DeliveryModel[];
+}
Index: distributor-app-frontend/src/app/models/driver.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/driver.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/driver.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,3 @@
+import { UserModel } from './user.model';
+
+export interface DriverModel extends UserModel {}
Index: distributor-app-frontend/src/app/models/manager.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/manager.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/manager.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,3 @@
+import { UserModel } from './user.model';
+
+export interface ManagerModel extends UserModel {}
Index: distributor-app-frontend/src/app/models/manufacturer.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/manufacturer.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/manufacturer.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,10 @@
+import { ArticleModel } from './article.model';
+
+export interface ManufacturerModel {
+  manufacturerId: number;
+  manufacturerName: string;
+  manufacturerAddress: string;
+  manufacturerMobile: string;
+  manufacturerEmail: string;
+  articles?: ArticleModel[];
+}
Index: distributor-app-frontend/src/app/models/order.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/order.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/order.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,18 @@
+import { ArticleUnitModel } from './articleUnit.model';
+import { CustomerModel } from './customer.model';
+import { DeliveryModel } from './delivery.model';
+import { OrderStatusModel } from './orderStatus.model';
+import { ProFormaModel } from './proForma.model';
+
+export interface OrderModel {
+  orderId: number;
+  orderDate: string;
+  orderSum: number;
+  orderFulfillmentDate: string;
+  orderComment: string;
+  orderStatus?: OrderStatusModel;
+  customer?: CustomerModel;
+  delivery?: DeliveryModel;
+  proForma?: ProFormaModel;
+  articleUnits?: ArticleUnitModel[];
+}
Index: distributor-app-frontend/src/app/models/orderStatus.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/orderStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/orderStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,8 @@
+import { OrderModel } from './order.model';
+
+export interface OrderStatusModel {
+  orderStatusId: number;
+  orderStatusName: string;
+  orderStatusDescription: string;
+  orders?: OrderModel[];
+}
Index: distributor-app-frontend/src/app/models/price.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/price.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/price.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,8 @@
+import { ArticleModel } from './article.model';
+
+export interface PriceModel {
+  priceId: number;
+  price: number;
+  priceEffectiveDate: string;
+  article?: ArticleModel;
+}
Index: distributor-app-frontend/src/app/models/proForma.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/proForma.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/proForma.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,10 @@
+import { OrderModel } from './order.model';
+import { ProFormaStatusModel } from './proFormaStatus.model';
+
+export interface ProFormaModel {
+  proFormaId: number;
+  proFormaDeadline: string;
+  proFormaDateCreated: string;
+  proFormaStatus?: ProFormaStatusModel;
+  order?: OrderModel;
+}
Index: distributor-app-frontend/src/app/models/proFormaStatus.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/proFormaStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/proFormaStatus.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,8 @@
+import { ProFormaModel } from './proForma.model';
+
+export interface ProFormaStatusModel {
+  proFormaStatusId: number;
+  proFormaStatusName: string;
+  proFormaStatusDescription: string;
+  proFormas?: ProFormaModel[];
+}
Index: distributor-app-frontend/src/app/models/user.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/user.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/user.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,11 @@
+import { CityModel } from './city.model';
+
+export interface UserModel {
+  userId: number;
+  userName: string;
+  userSurname: string;
+  userEmail: string;
+  userMobile: string;
+  userImage: string;
+  userCity?: CityModel;
+}
Index: distributor-app-frontend/src/app/models/vehicle.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/vehicle.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/vehicle.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,19 @@
+import { DeliveryModel } from './delivery.model';
+import { DriverModel } from './driver.model';
+import { WarehouseModel } from './warehouse.model';
+
+export interface VehicleModel {
+  vehicleId: number;
+  vehicleCarryWeight: number;
+  vehicleServiceInterval: number;
+  vehicleKilometers: number;
+  vehicleLastService: string;
+  vehicleLastServiceKm: number;
+  vehiclePlate: string;
+  vehicleVin: string;
+  vehicleRegDate: string;
+
+  warehouse?: WarehouseModel;
+  driver?: DriverModel;
+  deliveries?: DeliveryModel[];
+}
Index: distributor-app-frontend/src/app/models/warehouse.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/warehouse.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/warehouse.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,13 @@
+import { ArticleUnitModel } from './articleUnit.model';
+import { CityModel } from './city.model';
+import { ManagerModel } from './manager.model';
+import { VehicleModel } from './vehicle.model';
+
+export interface WarehouseModel {
+  warehouseId: number;
+  warehosueAddress: string;
+  city?: CityModel;
+  manager?: ManagerModel;
+  vehicles?: VehicleModel[];
+  articleUnits?: ArticleUnitModel;
+}
Index: distributor-app-frontend/src/app/models/weekday.model.ts
===================================================================
--- distributor-app-frontend/src/app/models/weekday.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
+++ distributor-app-frontend/src/app/models/weekday.model.ts	(revision f8ab6e7d5486ca660ab1759b3ee2e16f187fd985)
@@ -0,0 +1,4 @@
+export interface WeekDayModel {
+  weekdayId: number;
+  weekdayName: string;
+}
