https://github.com/czesctuklap/zarzadzanie-paletami
Zarządzanie Paletami to prosta aplikacja napisana w języku Java, służąca do kalkulacji ilości palet, jaka zmieści się do odpowiednich naczep.
https://github.com/czesctuklap/zarzadzanie-paletami
palettes-ordering palettes-sorting palety trailer-manager zarzadzanie-paletami
Last synced: 2 months ago
JSON representation
Zarządzanie Paletami to prosta aplikacja napisana w języku Java, służąca do kalkulacji ilości palet, jaka zmieści się do odpowiednich naczep.
- Host: GitHub
- URL: https://github.com/czesctuklap/zarzadzanie-paletami
- Owner: czesctuklap
- Created: 2025-01-09T15:26:21.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2025-03-12T10:58:36.000Z (2 months ago)
- Last Synced: 2025-03-12T11:35:32.371Z (2 months ago)
- Topics: palettes-ordering, palettes-sorting, palety, trailer-manager, zarzadzanie-paletami
- Language: Java
- Homepage:
- Size: 9.53 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Zarządzanie Paletami
Zarządzanie Paletami to prosta aplikacja napisana w języku Java, służąca do kalkulacji ilości palet, jaka zmieści się do odpowiednich naczep. Aplikacja jest skierowana do osób oraz firm związanych z branżą logistyczną, transportową i magazynową, które potrzebują prostego narzędzia do optymalizacji załadunku naczep oraz kalkulacji ilości palet.
## Funkcjonalność
### 1. Dodawanie palet
Użytkownik wprowadza wymiary (długość, szerokość, wysokość), wagę oraz ilość palet, a następnie zatwierdza przyciskiem **"dodaj"**. Dane zostają dodane do tabeli, a pola formularza są czyszczone. W przypadku błędnych danych pojawia się komunikat o błędzie.### 2. Wyświetlanie palet w tabeli
Tabela dynamicznie aktualizuje się po dodaniu nowych palet. Kolumny tabeli są powiązane z właściwościami obiektu `Pallet`, dzięki czemu dane są automatycznie wyświetlane.### 3. Analiza załadunku palet
Po dodaniu palet użytkownik może kliknąć **"Oblicz"**, aby sprawdzić, czy naczepy pomieszczą ładunek.### 4. Usuwanie palet z tabeli
Jeśli użytkownik niepoprawnie wprowadzi dane, ma możliwość wybrania konkretnego wiersza w tabeli oraz usunięcia go, za pomocą przycisku **"usuń"**.### 4. Algorytm 3D Bin Packing
Aplikacja implementuje algorytm optymalnego rozmieszczenia palet:
- **Grupuje palety** według wymiarów.
- **Sprawdza**, czy palety nie są za duże.
- **Sortuje grupy** według głębokości.
- **Układa palety** w dwóch rzędach, sprawdzając długość i wysokość.
- **Zwraca `true`**, jeśli wszystkie palety zmieszczą się, inaczej `false`.Dzięki temu użytkownik może szybko sprawdzić, które naczepy są odpowiednie dla danego ładunku.
## Komponenty
- `Pallet` - Zawiera implementację palet o własnościach długość, szerokość, wysokość, waga, ilość oraz funkcję odpowiadającą za poziomą rotację danej palety,
- `Trailer` - Zawiera implementację naczep o własnościach nazwa, długość, szerokość, wysokość, maksymalna ładowność,
- `TrailerManager` - Tworzy listę podstawowych naczep: Furgon, Standard, Mega,
- `MainController` - Odpowiada za połączenie elementów graficznych z ich funkcjonalnościami, implementuje przyciski dodawania palet oraz kalkulacji, zawiera obsługę błędów wprowadzanych danych oraz obliczeń,
- `BinPacking3D` - Zawiera funkcję odpowiadającą za obliczenia,
- `MainApplication` - Tworzy instancje głównego okna programu,
- `style.css` - Odpowiada za wygląd aplikacji.## Instrukcja użytkownika
- Po uruchomieniu aplikacji wprowadź wymiary oraz wagę palet, a następnie zatwierdź, klikając przycisk **"dodaj"**.
- Jeśli dane zostały poprawnie wprowadzone, paleta pojawi się w tabeli.
- Po zarejestrowaniu wszystkich palet należy kliknąć przycisk **"oblicz"**, aby wyświetlić wynik analizy optymalnego rozmieszczenia ładunku.## Interfejs

Widok dodawania oraz wyświetlania palet.

Okno z wynikiem obliczeń.