Migration now orders pages correctly, adds demo floorplan. Some small fixes on order screen.
This commit is contained in:
@@ -6,13 +6,24 @@ open System.IO
|
||||
|
||||
let spaceButton () = (Entity.GetFirstByColumn<button> "primary_action" "spacer").id
|
||||
|
||||
let getPageOrder pageName =
|
||||
match pageName with
|
||||
| "entrees" -> 1
|
||||
| "mains" -> 2
|
||||
| "dessert" -> 3
|
||||
| "beer" -> 4
|
||||
| "wine" -> 5
|
||||
| _ -> 0
|
||||
|
||||
let CreatePageFromDirectory index (dir: string) =
|
||||
let dirName = DirectoryInfo(dir).Name
|
||||
|
||||
let printGroup =
|
||||
match dirName.ToLower() with
|
||||
| "beer" | "wine" -> (Entity.GetFirstByColumn<print_group> "name" "Beverage").id
|
||||
| _ -> (Entity.GetFirstByColumn<print_group> "name" "Food").id
|
||||
| "beer" | "wine" -> (Entity.GetFirstByColumn<print_group> "name" "Drinks").id
|
||||
| "entrees" | "dips" -> (Entity.GetFirstByColumn<print_group> "name" "Entrees").id
|
||||
| "dessert" -> (Entity.GetFirstByColumn<print_group> "name" "Desserts").id
|
||||
| _ -> (Entity.GetFirstByColumn<print_group> "name" "Mains").id
|
||||
|
||||
let parentName =
|
||||
match dirName.ToLower() with
|
||||
@@ -20,7 +31,7 @@ let CreatePageFromDirectory index (dir: string) =
|
||||
| _ -> "Food"
|
||||
let parentCategory = Entity.GetFirstByColumn<sales_category> "name" parentName
|
||||
|
||||
if dirName.ToLower() <> "dips" && dirName.ToLower() <> "Steak Temperatures" then
|
||||
if dirName.ToLower() <> "dips" && dirName.ToLower() <> "steak temperatures" then
|
||||
let NewGrid = Entity.Create {
|
||||
id=0
|
||||
name=dirName
|
||||
@@ -31,11 +42,19 @@ let CreatePageFromDirectory index (dir: string) =
|
||||
|
||||
Entity.Create {
|
||||
id=0
|
||||
order=index
|
||||
order= getPageOrder (dirName.ToLower())
|
||||
venue_id=1
|
||||
label=dirName
|
||||
grid_id=NewGrid.id
|
||||
} |> ignore
|
||||
elif dirName.ToLower() = "steak temperatures" then
|
||||
Entity.Create {
|
||||
id=0
|
||||
name=dirName
|
||||
rows=4
|
||||
cols=6
|
||||
data=""
|
||||
} |> ignore
|
||||
else ()
|
||||
|
||||
Entity.Create {
|
||||
@@ -51,38 +70,52 @@ let CreatePageFromDirectory index (dir: string) =
|
||||
let CreateDefaultPrintGroups (path: string) =
|
||||
Entity.Create {
|
||||
id=0
|
||||
name="Food"
|
||||
name="Entrees"
|
||||
printer_id=1
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
Entity.Create {
|
||||
id=0
|
||||
name="Beverage"
|
||||
name="Mains"
|
||||
printer_id=1
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
Entity.Create {
|
||||
id=0
|
||||
name="Desserts"
|
||||
printer_id=1
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
Entity.Create {
|
||||
id=0
|
||||
name="Drinks"
|
||||
printer_id=2
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
|
||||
path
|
||||
|
||||
let CreateDefaultVenue (path: string) =
|
||||
let venue: venue = {
|
||||
{
|
||||
id=0
|
||||
name="Megalomania"
|
||||
}
|
||||
Entity.Create venue
|
||||
|> Entity.Create
|
||||
|>ignore
|
||||
path
|
||||
|
||||
let CreateDefaultClerk (path: string) =
|
||||
let venue: clerk = {
|
||||
{
|
||||
id=0
|
||||
name="Josh"
|
||||
login_code=1408
|
||||
user_group_id=1
|
||||
}
|
||||
Entity.Create venue
|
||||
|> Entity.Create
|
||||
|>ignore
|
||||
path
|
||||
|
||||
@@ -91,7 +124,7 @@ let CreateDefaultSalesCategories (path: string) =
|
||||
id=0
|
||||
parent=0
|
||||
name="Food"
|
||||
print_group_id=(Entity.GetFirstByColumn<print_group> "name" "Food").id
|
||||
print_group_id=(Entity.GetFirstByColumn<print_group> "name" "Mains").id
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
@@ -99,7 +132,7 @@ let CreateDefaultSalesCategories (path: string) =
|
||||
id=0
|
||||
parent=0
|
||||
name="Beverage"
|
||||
print_group_id=(Entity.GetFirstByColumn<print_group> "name" "Beverage").id
|
||||
print_group_id=(Entity.GetFirstByColumn<print_group> "name" "Drinks").id
|
||||
venue_id=1
|
||||
} |> ignore
|
||||
|
||||
@@ -228,7 +261,7 @@ let populateDessertGrid () =
|
||||
[|
|
||||
getId 0; space; getId 1; space; space ; space;
|
||||
space; space; space; space; space; space;
|
||||
space; getId 2; space; getId 4; space; space;
|
||||
space; getId 2; space; getId 3; space; space;
|
||||
space; space; space; space; space; space;
|
||||
space; space; space; space; space; space;
|
||||
space; space; space; space; space; space;
|
||||
@@ -283,9 +316,7 @@ let populateSteakTemperaturesGrid () =
|
||||
let space = spaceButton()
|
||||
let SalesCategory = Entity.GetFirstByColumn<sales_category> "name" "Steak Temperatures"
|
||||
let Temps = Entity.GetAllByColumn<item> "sales_category_id" SalesCategory.id
|
||||
let grid =
|
||||
Entity.GetFirstByColumn<order_screen_page_group> "label" "Steak Temperatures"
|
||||
|> Entity.GetRelated<grid, order_screen_page_group>
|
||||
let grid = Entity.GetFirstByColumn<grid> "name" "Steak Temperatures"
|
||||
|
||||
let getId index =
|
||||
match Temps |> Array.tryItem index with
|
||||
@@ -320,14 +351,13 @@ let CreateItemFromFileName (index: int) (dirName: string) (file: string) =
|
||||
let fileName = Path.GetFileNameWithoutExtension file
|
||||
let itemType =
|
||||
match dirName.ToLower() with
|
||||
| "dips" -> "instruction"
|
||||
| "steak temperatures" -> "instruction"
|
||||
| "dips" | "steak temperatures" -> "instruction"
|
||||
| _ -> "item"
|
||||
|
||||
let categories = (Entity.GetAllByColumn<sales_category> "name" dirName)
|
||||
let categoryID =
|
||||
if categories.Length > 0 then categories[0].id
|
||||
else 1
|
||||
else (Entity.GetFirstByColumn<sales_category> "name" "Mains").id
|
||||
|
||||
let newItem = Entity.Create {
|
||||
id = 0
|
||||
@@ -335,7 +365,7 @@ let CreateItemFromFileName (index: int) (dirName: string) (file: string) =
|
||||
sales_category_id=categoryID
|
||||
name=fileName
|
||||
item_type=itemType
|
||||
price1=10
|
||||
price1=1000
|
||||
}
|
||||
|
||||
let classes =
|
||||
@@ -365,6 +395,80 @@ let CreateItemsAndButtons (dir: string) =
|
||||
|> Array.filter (fun file -> Path.GetExtension file = ".png" || Path.GetExtension file = ".jpg")
|
||||
|> Array.iteri (fun index -> CreateItemFromFileName index dirName)
|
||||
|
||||
let addFloorplanTable tableNumber x y shape width height rotation (room:room) =
|
||||
Entity.Create {
|
||||
id=0
|
||||
table_number=tableNumber
|
||||
pos_x=x
|
||||
pos_y=y
|
||||
shape=shape
|
||||
width=width
|
||||
height=height
|
||||
rotation=rotation
|
||||
room_id=room.id
|
||||
venue_id=1
|
||||
default_covers=2
|
||||
merged_children=""
|
||||
previous_state=""
|
||||
status=0
|
||||
} |> ignore
|
||||
room
|
||||
|
||||
|
||||
let PopulateRooms () =
|
||||
Entity.GetFirstByColumn<room> "name" "Deck & Courtyard"
|
||||
|> addFloorplanTable 1 1151 1145 "square" 115 115 45
|
||||
|> addFloorplanTable 2 827 1152 "square" 115 115 0
|
||||
|> addFloorplanTable 3 836 922 "square" 115 115 0
|
||||
|> addFloorplanTable 4 956 712 "square" 115 115 0
|
||||
|> addFloorplanTable 5 535 704 "square" 115 115 0
|
||||
|> addFloorplanTable 6 265 861 "square" 115 115 0
|
||||
|> addFloorplanTable 7 265 1031 "square" 115 115 0
|
||||
|> addFloorplanTable 8 265 1197 "square" 115 115 0
|
||||
|> addFloorplanTable 19 90 533 "square" 115 115 0
|
||||
|> addFloorplanTable 20 90 378 "square" 115 115 0
|
||||
|> addFloorplanTable 21 90 233 "square" 115 115 0
|
||||
|> addFloorplanTable 22 90 77 "square" 115 115 0
|
||||
|> addFloorplanTable 23 622 80 "square" 115 115 0
|
||||
|> addFloorplanTable 24 613 296 "square" 115 115 -45
|
||||
|> addFloorplanTable 25 498 539 "square" 115 115 0
|
||||
|> addFloorplanTable 26 854 546 "square" 115 115 0
|
||||
|> addFloorplanTable 27 932 191 "square" 115 115 45
|
||||
|> addFloorplanTable 28 1136 79 "square" 115 115 0
|
||||
|> addFloorplanTable 29 1145 317 "square" 115 115 0
|
||||
|> addFloorplanTable 30 1145 522 "square" 115 115 0
|
||||
|> ignore
|
||||
|
||||
Entity.GetFirstByColumn<room> "name" "Inside"
|
||||
|> addFloorplanTable 31 943 1196 "square" 215 90 0
|
||||
|> addFloorplanTable 32 943 952 "square" 215 90 0
|
||||
|> addFloorplanTable 33 927 565 "circle" 150 150 0
|
||||
|> addFloorplanTable 39 725 67 "square" 115 115 0
|
||||
|> addFloorplanTable 40 685 222 "square" 115 115 0
|
||||
|> addFloorplanTable 41 685 357 "square" 115 115 0
|
||||
|> addFloorplanTable 42 725 531 "square" 115 115 0
|
||||
|> addFloorplanTable 43 185 452 "square" 100 100 0
|
||||
|> addFloorplanTable 44 185 326 "square" 100 100 0
|
||||
|> addFloorplanTable 45 185 199 "square" 100 100 0
|
||||
|> addFloorplanTable 46 185 69 "square" 100 100 0
|
||||
|> addFloorplanTable 51 685 948 "square" 200 100 0
|
||||
|> addFloorplanTable 52 685 1198 "square" 200 100 0
|
||||
|> addFloorplanTable 61 415 762 "circle" 100 100 0
|
||||
|> addFloorplanTable 62 415 901 "circle" 100 100 0
|
||||
|> addFloorplanTable 63 415 1039 "circle" 100 100 0
|
||||
|> addFloorplanTable 64 415 1176 "circle" 100 100 0
|
||||
|> ignore
|
||||
|
||||
Entity.GetFirstByColumn<room> "name" "Function Room"
|
||||
|> addFloorplanTable 71 1039 361 "square" 110 110 0
|
||||
|> addFloorplanTable 72 1000 652 "square" 200 100 0
|
||||
|> addFloorplanTable 73 976 966 "square" 130 130 0
|
||||
|> addFloorplanTable 74 658 962 "square" 120 115 0
|
||||
|> addFloorplanTable 75 567 629 "square" 110 200 0
|
||||
|> addFloorplanTable 76 120 511 "square" 230 100 0
|
||||
|> addFloorplanTable 77 120 847 "square" 230 100 0
|
||||
|
||||
|
||||
let run () =
|
||||
"wwwroot/images/items"
|
||||
|> CreateDefaultVenue
|
||||
@@ -377,4 +481,5 @@ let run () =
|
||||
|> Array.mapi CreatePageFromDirectory
|
||||
|> Array.iter CreateItemsAndButtons
|
||||
|> CreateRooms
|
||||
|> PopulateGrids
|
||||
|> PopulateGrids
|
||||
|> PopulateRooms
|
||||
Reference in New Issue
Block a user