<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="KafeDBModel" Alias="Self" annotation:UseStrongSpatialTypes="false" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation" xmlns:customannotation="http://schemas.microsoft.com/ado/2013/11/edm/customannotation" xmlns="http://schemas.microsoft.com/ado/2009/11/edm">
  <EntityType Name="CookStatus">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="Title" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <NavigationProperty Name="Order" Relationship="Self.FK_Order_CookStatus" FromRole="CookStatus" ToRole="Order" />
  </EntityType>
  <EntityType Name="Dishes">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="Title" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <Property Name="Cost" Type="Double" Nullable="false" />
    <Property Name="CookTime" Type="Int32" Nullable="false" />
    <NavigationProperty Name="OrderDishes" Relationship="Self.FK_OrderDishes_Dishes" FromRole="Dishes" ToRole="OrderDishes" />
  </EntityType>
  <EntityType Name="Employee">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="LastName" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <Property Name="FirstName" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <Property Name="MiddleName" Type="String" MaxLength="50" FixedLength="false" Unicode="true" />
    <Property Name="PositionID" Type="Int32" Nullable="false" />
    <Property Name="Login" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <Property Name="Password" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <Property Name="StatusID" Type="Int32" Nullable="false" />
    <NavigationProperty Name="Position" Relationship="Self.FK_Employee_Position" FromRole="Employee" ToRole="Position" />
    <NavigationProperty Name="Status" Relationship="Self.FK_Employee_Status" FromRole="Employee" ToRole="Status" />
    <NavigationProperty Name="Order" Relationship="Self.FK_Order_Employee" FromRole="Employee" ToRole="Order" />
    <NavigationProperty Name="Shift" Relationship="Self.FK_Shift_Employee" FromRole="Employee" ToRole="Shift" />
  </EntityType>
  <EntityType Name="Order">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="TableNumber" Type="Int32" Nullable="false" />
    <Property Name="ClientCount" Type="Int32" Nullable="false" />
    <Property Name="EmployeeID" Type="Int32" Nullable="false" />
    <Property Name="PayStatusID" Type="Int32" Nullable="false" />
    <Property Name="CookStatusID" Type="Int32" Nullable="false" />
    <NavigationProperty Name="CookStatus" Relationship="Self.FK_Order_CookStatus" FromRole="Order" ToRole="CookStatus" />
    <NavigationProperty Name="Employee" Relationship="Self.FK_Order_Employee" FromRole="Order" ToRole="Employee" />
    <NavigationProperty Name="PayStatus" Relationship="Self.FK_Order_PayStatus" FromRole="Order" ToRole="PayStatus" />
    <NavigationProperty Name="OrderDishes" Relationship="Self.FK_OrderDishes_Order" FromRole="Order" ToRole="OrderDishes" />
  </EntityType>
  <EntityType Name="OrderDishes">
    <Key>
      <PropertyRef Name="OrderID" />
      <PropertyRef Name="DishID" />
    </Key>
    <Property Name="OrderID" Type="Int32" Nullable="false" />
    <Property Name="DishID" Type="Int32" Nullable="false" />
    <Property Name="Count" Type="Int32" />
    <NavigationProperty Name="Dishes" Relationship="Self.FK_OrderDishes_Dishes" FromRole="OrderDishes" ToRole="Dishes" />
    <NavigationProperty Name="Order" Relationship="Self.FK_OrderDishes_Order" FromRole="OrderDishes" ToRole="Order" />
  </EntityType>
  <EntityType Name="PayStatus">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="Title" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <NavigationProperty Name="Order" Relationship="Self.FK_Order_PayStatus" FromRole="PayStatus" ToRole="Order" />
  </EntityType>
  <EntityType Name="Position">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="Title" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <NavigationProperty Name="Employee" Relationship="Self.FK_Employee_Position" FromRole="Position" ToRole="Employee" />
  </EntityType>
  <EntityType Name="Shift">
    <Key>
      <PropertyRef Name="EmployeeID" />
      <PropertyRef Name="DateShift" />
    </Key>
    <Property Name="EmployeeID" Type="Int32" Nullable="false" />
    <Property Name="DateShift" Type="DateTime" Nullable="false" Precision="0" />
    <NavigationProperty Name="Employee" Relationship="Self.FK_Shift_Employee" FromRole="Shift" ToRole="Employee" />
  </EntityType>
  <EntityType Name="Status">
    <Key>
      <PropertyRef Name="ID" />
    </Key>
    <Property Name="ID" Type="Int32" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
    <Property Name="Title" Type="String" MaxLength="50" FixedLength="false" Unicode="true" Nullable="false" />
    <NavigationProperty Name="Employee" Relationship="Self.FK_Employee_Status" FromRole="Status" ToRole="Employee" />
  </EntityType>
  <Association Name="FK_Order_CookStatus">
    <End Role="CookStatus" Type="Self.CookStatus" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="Order" Type="Self.Order" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="CookStatus">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Order">
        <PropertyRef Name="CookStatusID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_OrderDishes_Dishes">
    <End Role="Dishes" Type="Self.Dishes" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="OrderDishes" Type="Self.OrderDishes" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Dishes">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="OrderDishes">
        <PropertyRef Name="DishID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_Employee_Position">
    <End Role="Position" Type="Self.Position" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="Employee" Type="Self.Employee" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Position">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Employee">
        <PropertyRef Name="PositionID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_Employee_Status">
    <End Role="Status" Type="Self.Status" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="Employee" Type="Self.Employee" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Status">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Employee">
        <PropertyRef Name="StatusID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_Order_Employee">
    <End Role="Employee" Type="Self.Employee" Multiplicity="1" />
    <End Role="Order" Type="Self.Order" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Employee">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Order">
        <PropertyRef Name="EmployeeID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_Shift_Employee">
    <End Role="Employee" Type="Self.Employee" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="Shift" Type="Self.Shift" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Employee">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Shift">
        <PropertyRef Name="EmployeeID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_Order_PayStatus">
    <End Role="PayStatus" Type="Self.PayStatus" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="Order" Type="Self.Order" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="PayStatus">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="Order">
        <PropertyRef Name="PayStatusID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <Association Name="FK_OrderDishes_Order">
    <End Role="Order" Type="Self.Order" Multiplicity="1">
      <OnDelete Action="Cascade" />
    </End>
    <End Role="OrderDishes" Type="Self.OrderDishes" Multiplicity="*" />
    <ReferentialConstraint>
      <Principal Role="Order">
        <PropertyRef Name="ID" />
      </Principal>
      <Dependent Role="OrderDishes">
        <PropertyRef Name="OrderID" />
      </Dependent>
    </ReferentialConstraint>
  </Association>
  <EntityContainer Name="KafeDBEntities" annotation:LazyLoadingEnabled="true">
    <EntitySet Name="CookStatus" EntityType="Self.CookStatus" />
    <EntitySet Name="Dishes" EntityType="Self.Dishes" />
    <EntitySet Name="Employee" EntityType="Self.Employee" />
    <EntitySet Name="Order" EntityType="Self.Order" />
    <EntitySet Name="OrderDishes" EntityType="Self.OrderDishes" />
    <EntitySet Name="PayStatus" EntityType="Self.PayStatus" />
    <EntitySet Name="Position" EntityType="Self.Position" />
    <EntitySet Name="Shift" EntityType="Self.Shift" />
    <EntitySet Name="Status" EntityType="Self.Status" />
    <AssociationSet Name="FK_Order_CookStatus" Association="Self.FK_Order_CookStatus">
      <End Role="CookStatus" EntitySet="CookStatus" />
      <End Role="Order" EntitySet="Order" />
    </AssociationSet>
    <AssociationSet Name="FK_OrderDishes_Dishes" Association="Self.FK_OrderDishes_Dishes">
      <End Role="Dishes" EntitySet="Dishes" />
      <End Role="OrderDishes" EntitySet="OrderDishes" />
    </AssociationSet>
    <AssociationSet Name="FK_Employee_Position" Association="Self.FK_Employee_Position">
      <End Role="Position" EntitySet="Position" />
      <End Role="Employee" EntitySet="Employee" />
    </AssociationSet>
    <AssociationSet Name="FK_Employee_Status" Association="Self.FK_Employee_Status">
      <End Role="Status" EntitySet="Status" />
      <End Role="Employee" EntitySet="Employee" />
    </AssociationSet>
    <AssociationSet Name="FK_Order_Employee" Association="Self.FK_Order_Employee">
      <End Role="Employee" EntitySet="Employee" />
      <End Role="Order" EntitySet="Order" />
    </AssociationSet>
    <AssociationSet Name="FK_Shift_Employee" Association="Self.FK_Shift_Employee">
      <End Role="Employee" EntitySet="Employee" />
      <End Role="Shift" EntitySet="Shift" />
    </AssociationSet>
    <AssociationSet Name="FK_Order_PayStatus" Association="Self.FK_Order_PayStatus">
      <End Role="PayStatus" EntitySet="PayStatus" />
      <End Role="Order" EntitySet="Order" />
    </AssociationSet>
    <AssociationSet Name="FK_OrderDishes_Order" Association="Self.FK_OrderDishes_Order">
      <End Role="Order" EntitySet="Order" />
      <End Role="OrderDishes" EntitySet="OrderDishes" />
    </AssociationSet>
  </EntityContainer>
</Schema>