Simulator 1.0.0

dotnet add package Simulator --version 1.0.0
NuGet\Install-Package Simulator -Version 1.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Simulator" Version="1.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Simulator --version 1.0.0
#r "nuget: Simulator, 1.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Simulator as a Cake Addin
#addin nuget:?package=Simulator&version=1.0.0

// Install Simulator as a Cake Tool
#tool nuget:?package=Simulator&version=1.0.0

API dokumentasjon - WarehouseSimulation

Konfigurering av varehuset

- Det er mulig å bestemme om et varehus er egnet for varer som krever en kald omgivelse, tørr omgivelse, og om et varehus er egnet for varer som er farlig gods. I tillegg er det mulig å bestemme kapasiteten til terminalen i varehuset (stedet for varer som ikke er i en hylle)

- For å konfigurere varehuset, lag en instans av WarehouseConfiguration objektet, og bruk det til å konfigurere varehuset:

a. Kald varehus bruker IsCoolStorage (boolean) b. Tørr varehus bruker IsDryStorage (boolean)

c. Varehus for farlig gods bruker IsHazardous (boolean)

d. Kapasiteten til terminalen i varehuset bruker TerminalCapacity (int)

Oppretting av varehus

- Et varehus opprettes ved å lage en instans av Warehouse objektet med en instans av WarehouseConfiguration objektet som parameter, for eksempel:

Warehouse WarehouseA = new Warehouse(WarehouseConfigurationA)

- For å fylle varehuset med hyller, bruk AddShelf metoden som er definert i Warehouse objektet. AddShelf metoden tar følgende parametere:

a. Navn på hyllen (string)

b. Kapasiteten på hyllen (int)

c. Type som GoodsType.DryGoods/GoodsType.Refrigerated/GoodsType.Hazardous d. Tiden det tar å flytte varer fra terminal til hylle målt i dager (int)

e. Tiden det tar å flytte varer fra hylle til terminal målt i dager (int)

- For å legge til et vare, bruk AddItem metoden som er definert i Warehouse objektet. AddItem metoden tar følgende parametere:

a. Navn på vare (string)

b. Type som GoodsType.DryGoods/GoodsType.Refrigerated/GoodsType.Hazardous

Leveranse og henting av vare

- Når en vare er laget og det skal legges til en leveranse av en vare til terminalen, bruk AddDelivery metoden som er definert i Warehouse objektet. AddDelivery metoden tar følgende parametere:

a. Hvilken dag i simuleringen varen skal ankomme terminalen (int)

b. Type som GoodsType.DryGoods/GoodsType.Refrigerated/GoodsType.Hazardous c. Antall varer (int)

d. Navn på varen som tidligere ble laget med AddItem metoden (string)

- For å legge til en henting av en vare fra terminalen, bruk AddPickup metoden som er definert i Warehouse objektet. AddPickup metoden tar de samme parametere som i AddDelivery metoden

- For å legge til leveranse til terminalen eller henting fra terminalen med intervall, bruk AddWeeklyDelivery eller AddWeeklyPickup metoden som er definert i Warehouse objektet. AddWeeklyDelivery og AddWeeklyPickup metoden tar følgende parametere:

a. Dager mellom hver leveranse av vare eller hver henting av vare (int)

b. Hvilken dag i simuleringen leveransen eller hentingen skal begynne (int)

c. Type som GoodsType.DryGoods/GoodsType.Refrigerated/GoodsType.Hazardous d. Antall varer som skal leveres eller hentes (int)

e. Navn på varen som tidligere ble laget med AddItem metoden (string)

Hvordan starte simulasjonen

- Når alt er konfigurert så startes simulasjonen ved bruk av SimulationRun metoden som er definert i Warehouse objektet, og antall dager simulasjonen skal kjøre er parameter (int) i SimulationRun metoden

- Det er mulig å skrive ut informasjon om en vare ved å bruke PrintItemHistory metoden som er definert i Warehouse objektet og som tar navn på vare og nummer som parameter i en og samme string i formen "Varenavn_100"

Et eksempel med kode

- Varehuset tar imot alle typer varer, og har et terminal som har plass til 1000 varer. Det er 5 hyller for kjølevarer i varehuset, og hver av dem med en kapasitet på 100 varer. Det tar 1 dag å flytte varer fra terminalen til hyllene, og det tar 1 dag å flytte varene fra hyllene til terminalen. En dag kommer det inn 500 bananer fra en produsent og disse skal sendes ut 10 dager senere.

WarehouseConfiguration warehouseConfig = new WarehouseConfiguration {

IsCoolStorage = true,

<img src="./jkpik0ju.png" style="width:5.77083in;height:2.625in" />

IsDryStorage = true, IsHazardous = true, TerminalCapacity = 1000

};

Warehouse myWarehouse = new Warehouse(warehouseConfig);

myWarehouse.AddShelf("H1", 100, GoodsType.Refrigerated, 1, 1); myWarehouse.AddShelf("H2", 100, GoodsType.Refrigerated, 1, 1); myWarehouse.AddShelf("H3", 100, GoodsType.Refrigerated, 1, 1); myWarehouse.AddShelf("H4", 100, GoodsType.Refrigerated, 1, 1); myWarehouse.AddShelf("H5", 100, GoodsType.Refrigerated, 1, 1);

myWarehouse.AddItem("Banan", GoodsType.Refrigerated);

myWarehouse.AddDelivery(1, GoodsType.Refrigerated, 500, "Banan"); myWarehouse.AddPickup(10, GoodsType.Refrigerated, 500, "Banan");

myWarehouse.SimulationRun(10); myWarehouse.PrintItemHistory("Banan_345");

Det er også daglige oppdateringer som viser status for hver av hyllene, men det vises ikke i dette bildet fordi det ville tatt for stor plass.

Product Compatible and additional computed target framework versions.
.NET net8.0-windows7.0 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.0.0 70 3/26/2024