@if (isLoading)
{
Lade Lagerplätze...
}
else
{
@foreach (var area in new[] { AreaType.Werkstatt, AreaType.Lager })
{
@area.GetBuildingLabel()
@for (int row = StorageLocation.MinRow; row <= area.GetMaxRow(); row++)
{
var currentRow = row;
Reihe @currentRow
@foreach (var side in new[] { "Links", "Rechts" })
{
@side
@foreach (var pos in ShelfPositionExtensions.All.Where(p => p.IsLeft() == (side == "Links")).OrderByDescending(p => p.IsTop()))
{
@(pos.IsTop() ? "Oben" : "Unten")
@for (int slot = StorageLocation.MinSlot; slot <= StorageLocation.MaxSlot; slot++)
{
var loc = GetLocation(area, currentRow, pos, slot);
var isHighlighted = loc != null && HighlightLocationId == loc.Id;
var isSelectable = loc != null && (isHighlighted || (loc.IsAvailable && !loc.IsOccupied));
var cellClass = loc == null ? "missing" : isHighlighted ? "freeing" : !loc.IsAvailable ? "blocked" : loc.IsOccupied ? "occupied" : "free";
}
}
}
}
}
Frei
@if (HighlightLocationId.HasValue)
{
Wird frei
}
Belegt
Gesperrt
}