Checklisty: kontrola jakości i protokoły wydania przesyłek
Moduł checklist w systemie Pakowanie Kablowo. Szablony kontroli jakości, protokoły wydania przewoźnikom, upload zdjęć i video, historia wykonania.
LiveSales
Kierowca przyjechał po paczki. Skąd wiesz, że wszystko jest sprawdzone i kompletne?
“Reklamacja od klienta: ‘brakuje jednego kabla w paczce.’ Wcześniej — słowo przeciw słowu. Teraz mam checklistę z datą, godziną, zdjęciem spakowanego zamówienia i podpisem pracownika. Koniec dyskusji.”
— Właściciel Kablowo
Kontrola jakości pakowania i protokoły wydania przesyłek przewoźnikom — to dwa procesy, które łatwo pominąć w codziennym pośpiechu. Moduł checklist systematyzuje te procesy, wymusza dokumentację zdjęciową i buduje historię każdego wydania.
Szablony dzienne
Admin tworzy szablony. System codziennie generuje instancje do wykonania.
Upload mediów
Zdjęcia (10MB) i video (50MB) per krok. Dowody wykonania.
Pełna historia
Kto, kiedy, co sprawdził. Audit trail na wypadek reklamacji.
Dlaczego checklisty w magazynie kablowym
Trzy problemy bez checklist
Brak kontroli jakości
Kabel źle nawinięty, etykieta nie do tego zamówienia, brak taśmy zabezpieczającej. Nikt nie sprawdza — klient reklamuje.
Zgubione wydania
Kierowca DPD zabrał 47 paczek. Klient twierdzi, że nie dostał swojej. Nie masz protokołu wydania — nie udowodnisz, że paczka wyjechała.
Brak audytu
Kto pakował zamówienie #12345? Kiedy? Czy sprawdził metraż? Nie wiesz — bo nikt nie dokumentuje procesu.
Co dają checklisty
Kontrola jakości kabli to nie jest “sprawdź czy OK”. To konkretne kroki:
- Czy metraż zgadza się z zamówieniem (pomiar kontrolny)?
- Czy kabel jest poprawnie nawinięty (nie poplątany)?
- Czy etykieta jest na właściwym zamówieniu?
- Czy opakowanie jest zabezpieczone taśmą?
- Czy gabaryt paczki jest prawidłowy (A/B/C)?
Protokoły wydania przesyłek dokumentują moment przekazania paczek przewoźnikowi:
- Ile paczek wydano (count per carrier)?
- Kto wydał (pracownik magazynu)?
- Kto odebrał (kierowca — podpis/zdjęcie)?
- O której godzinie (timestamp)?
- Zdjęcie załadowanego samochodu
Szablony checklist — admin tworzy, system wykonuje
Tworzenie szablonu
Admin definiuje szablon checklisty z listą kroków:
Parametry szablonu
| Parametr | Opis |
|---|---|
| name | Nazwa szablonu (np. “Kontrola jakości DPD”) |
| checklist_type | Typ: quality_control lub shipment_handover |
| scheduled_time | Godzina codziennego uruchomienia (np. “08:00”) |
| carrier_group | Filtr po grupie przewoźnika (DPD, InPost, DHL) — opcjonalny |
| steps | Lista kroków z opisem, wymaganiami medialnymi i szacowanym czasem |
Parametry kroku
Każdy krok szablonu ma:
- description — opis czynności do wykonania
- media_description — co dokładnie sfotografować/nagrać (np. “zdjęcie taśmy zabezpieczającej”)
- media_required — czy zdjęcie/video jest obowiązkowe
- estimated_minutes — szacowany czas na krok
- requires_package_count — czy krok wymaga wpisania liczby paczek
Instancje i wykonanie krok po kroku
Codzienne instancje
System automatycznie tworzy instancje checklist na podstawie szablonów. Pracownik otwiera “Checklisty” i widzi dzisiejsze zadania:
Wykonanie kroku
Pracownik klika na checklist, widzi listę kroków i realizuje je po kolei:
POST /api/checklists/instances/{id}/complete-step
{
"step_id": 3,
"notes": "Wszystkie paczki zabezpieczone taśmą",
"package_count": 47,
"completed_by": "worker1"
}
Po wykonaniu kroku, można uploadować media (zdjęcie/video) jako dowód.
Zakończenie checklisty
Gdy wszystkie kroki wykonane:
POST /api/checklists/instances/{id}/complete
{
"notes": "Wydanie DPD kompletne, 47 paczek",
"completed_by": "worker1"
}
System zapisuje timestamp zakończenia i notuje kto wykonał. WebSocket broadcast informuje panel admina.
Force-create (ad-hoc)
Czasem potrzebna jest checklist poza planem — np. kontrola po reklamacji klienta lub niespodziewana wizyta audytora:
POST /api/checklists/force-create
{
"template_id": 5,
"reason": "Reklamacja klienta #12345 — kontrola serii"
}
System tworzy instancję natychmiast, niezależnie od harmonogramu.
Upload zdjęć i video — dokumentacja wizualna
System mediów
Każdy krok checklisty może mieć załączone media:
Zdjęcia
- Max rozmiar: 10 MB per zdjęcie
- Formaty: JPEG, PNG, WebP
- Automatyczna kompresja na telefonie
- Robione bezpośrednio z aplikacji (kamera urządzenia)
Video
- Max rozmiar: 50 MB per video
- Formaty: MP4, MOV, WebM
- Użycie: nagranie procesu pakowania, odbioru
- Przydatne przy reklamacjach typu “brakuje produktu”
Organizacja plików
Media organizowane automatycznie w strukturze katalogowej:
uploads/
checklists/
2026/
04/
03/
a1b2c3d4-kontrola-dpd-taśma.jpg
e5f6g7h8-wydanie-inpost-załadunek.mp4
transport/
2026/
04/
03/
i9j0k1l2-trip-dpd-załadunek.jpg
UUID prefix zapewnia unikalność nazw (brak kolizji). Oryginalna nazwa na końcu pozwala na identyfikację zawartości bez otwierania pliku.
Metadane pliku
Każdy upload zapisuje:
- uploaded_by — kto uploadował (user ID + nazwa)
- uploaded_at — timestamp
- mime_type — typ pliku (image/jpeg, video/mp4)
- file_size — rozmiar w bajtach
- original_filename — oryginalna nazwa pliku
Pobieranie mediów
GET /api/checklists/media/{media_id}
→ FileResponse (bezpośredni download pliku)
Admin może przeglądać media z panelu — klikając w krok checklisty widzi wszystkie załączone zdjęcia i video.
Protokoły wydania przesyłek (shipment handover)
Specjalny typ checklisty: shipment_handover — dedykowany do dokumentowania przekazania paczek przewoźnikowi.
Flow wydania
Carrier countdown
System pokazuje countdown do cutoff time każdego przewoźnika. DPD: 14:30, InPost: 16:00, DHL: 15:00. Pracownik wie, ile czasu zostało.
Start checklisty wydania
Pracownik startuje checklistę “Wydanie DPD”. System tworzy instancję z krokami: policz paczki, sprawdź etykiety, zrób zdjęcie załadunku.
Liczenie paczek + zdjęcie
Pracownik liczy paczki (np. 47), wpisuje liczbę w krok checklisty, robi zdjęcie stosu paczek przygotowanych do wydania.
Potwierdzenie wydania
Kierowca zabiera paczki. Pracownik kończy checklistę. System zapisuje: 47 paczek DPD, wydane 14:25 przez worker1, zdjęcie załadunku.
Carrier group filtering
Szablony checklisty mogą być filtrowane po grupie przewoźnika. Szablon “Wydanie DPD” pojawia się tylko gdy są paczki DPD do wydania. Nie zaśmieca listy, gdy dany przewoźnik danego dnia nie jest obsługiwany.
Powiązanie z transportem
Zakończenie checklisty wydania automatycznie tworzy wpis w module transportowym:
POST /api/orders/transport/{group}/depart
→ VehicleTrip created (departure_at, group, package_count)
Historia kursów jest dostępna w panelu admin: kto, kiedy, ile paczek, jakim przewoźnikiem.
Mini-inwentaryzacja powiązana z checklistami
Kontrola strefowa
Checklisty mogą zawierać kroki inwentaryzacyjne: pracownik liczy produkty na wybranych regałach i porównuje z stanem w systemie.
InventoryCountUpdate
Pracownik liczy fizyczne sztuki na regale i wpisuje w system. System porównuje z BaseLinker stock i flaguje rozbieżności.
Batch review
Inwentaryzacja wielu pozycji jednocześnie (InventoryBatchReviewRequest). Przydatne przy kontroli całego regału.
API inwentaryzacji
| Endpoint | Metoda | Opis |
|---|---|---|
| /api/checklists/inventory-items | GET | Lista produktów do inwentaryzacji (per strefa/regał) |
| /api/checklists/inventory-count | POST | Zapisz policzony stan (product_id, counted_quantity) |
| /api/checklists/inventory-batch-review | POST | Batch review wielu produktów jednocześnie |
Rozbieżności powyżej progu (np. >5%) generują alert na dashboardzie admina.
Zapytania BaseLinker API używane przez moduł checklist
Checklisty (szczególnie inwentaryzacja i wydanie przesyłek) korzystają z metod BaseLinker API:
| Metoda BaseLinker | Kontekst użycia w checklistach |
|---|---|
| getInventoryProductsStock | Porównanie fizycznego stanu na regale (policzony przez pracownika) vs stan w BaseLinker. Flagowanie rozbieżności przy mini-inwentaryzacji. |
| addInventoryDocument | Tworzenie dokumentu korekty magazynowej po inwentaryzacji (draft). Używane gdy policzony stan != stan systemowy. |
| addInventoryDocumentItems | Dodanie pozycji do dokumentu korekty (product_id, quantity, price). Batch dla wielu produktów z jednego regału. |
| setInventoryDocumentStatusConfirmed | Zatwierdzenie dokumentu korekty — dopiero wtedy zmiana stanu w BaseLinker. Wymaga akceptacji admina dla dużych rozbieżności. |
| runOrderMacroTrigger | Po zakończeniu checklisty wydania: trigger makra “etykieta” lub “spis” na zamówieniach z grupy przewoźnika. |
| getInventoryProductsData | Pobieranie szczegółów produktu (nazwa, strefa, waga) do wyświetlenia w krokach inwentaryzacyjnych checklisty. |
Szczegółowa tabela wszystkich metod BaseLinker (priorytety, częstotliwość, rate limiting) jest w głównym artykule.
Pełne API modułu checklist
| Metoda | Endpoint | Auth | Opis |
|---|---|---|---|
| GET | /api/checklists/templates | Admin | Lista aktywnych szablonów |
| POST | /api/checklists/templates | Admin | Utwórz nowy szablon z krokami |
| PUT | /api/checklists/templates/{id} | Admin | Edytuj szablon (kroki, harmonogram) |
| DELETE | /api/checklists/templates/{id} | Admin | Dezaktywuj szablon (soft delete) |
| GET | /api/checklists/today | Auth | Dzisiejsze checklisty do wykonania |
| POST | /api/checklists/instances/{id}/start | Auth | Rozpocznij wykonywanie checklisty |
| POST | /api/checklists/instances/{id}/complete-step | Auth | Ukończ krok (notatki, liczba paczek) |
| POST | /api/checklists/instances/{id}/complete | Auth | Zakończ checklistę (wszystkie kroki done) |
| POST | /api/checklists/force-create | Auth | Utwórz ad-hoc checklistę poza harmonogramem |
| GET | /api/checklists/history | Auth | Historia wykonanych checklist (paginacja) |
| POST | /api/checklists/instances/{id}/media | Auth | Upload zdjęcia/video do kroku |
| GET | /api/checklists/media/{media_id} | Auth | Pobierz plik media (FileResponse) |
WebSocket events
Każda zmiana checklisty generuje broadcast:
{"type": "checklist_updated", "instance_id": 789}
Panel admina i ekrany pracowników odświeżają się automatycznie.
Podsumowanie
Checklisty to element systemu Pakowanie Kablowo. Sprawdź też: moduł resztek kablowych i konfiguracja magazynu.
Najprostsza forma dokumentacji pakowania to checklist z wymogiem zdjęcia per krok. Daje ci dowód w sporze z klientem — co, kiedy, kto sprawdził.
Zainteresowany automatyzacją danych?
LiveSales pomoże Ci zaoszczędzić czas i podejmować lepsze decyzje biznesowe dzięki automatycznym raportom i dashboardom.
Skontaktuj się z namiPodobał Ci się ten artykuł?
Subskrybuj, aby dostawać powiadomienia o nowych artykułach.
Bez spamu. Możesz się wypisać w każdej chwili.
Przeczytaj również
Pakowanie Kablowo: system magazynowy zbudowany z Claude Code
Case study budowy systemu pakowania dla firmy kablowej. FastAPI + Next.js, integracja BaseLinker, maszyna ESP8266 do kabli, drukarka Zebra. 30% oszczędności czasu.
Resztki kablowe: moduł automatycznego dopasowania do zamówień
Jak zarządzać resztkami kabli w magazynie e-commerce. Auto-matching do zamówień, rezerwacja, zużycie częściowe. Moduł resztek w systemie Pakowanie Kablowo.
Ekosystem narzędzi: gdy sprzedaż, magazyn i Allegro Ads rozmawiają
Jak połączyliśmy narzędzie Allegro Ads z magazynem i działem sprzedaży. Magazyn wie co się sprzedaje, sprzedaż wie co na stanie — lepsze decyzje.