Witaj!
Obecnie mam prostą stronę bez CMS, ale pojawiła się potrzeba skalowania.
Poniżej - zadanie techniczne:
Zadanie techniczne dotyczące opracowania strony internetowej z CRM dla biznesu PDR
1. Informacje ogólne
Projekt: CRM i strona dla serwisu PDR z modelem franczyzowym.
Cel: Automatyzacja pracy z klientami, zamówieniami, harmonogramem, zarządzaniem finansami, interakcją z franczyzobiorcami i zgłoszeniami online.
Grupa docelowa:
- Właściciele franczyz
- Centralny administrator (właściciel)
- Klienci (odwiedzający stronę)
2. Główna technologia (do wyboru)
Next.js / Nest.js / Laravel / PHP (rozważamy alternatywy)
Baza danych: PostgreSQL lub MySQL
Integracje: Google Calendar API
3. Główne moduły systemu
3.1. Strona internetowa (część publiczna)
- Strona główna (informacje o firmie, zalety, formularz zgłoszeniowy, lista zgłoszeń (np. ostatnie 20), magnesy uwagi i zatrzymania)
- Strona zgłoszenia:
- Formularz zgłoszeniowy (automatycznie po wysłaniu tworzy profil użytkownika, aby była możliwość zatwierdzenia wykonawcy. Po wysłaniu formularza, na e-mail przychodzi powiadomienie o pomyślnym złożeniu i możliwości zarządzania zgłoszeniem)
- Po wysłaniu zgłoszenie natychmiast publikowane jest na stronie (bez kontaktów) i wyświetla się w CRM (postmoderacja)
- Giełda zamówień:
- Przegląd zgłoszeń z filtracją (miasto, typ pracy, data itd.)
- Strona rejestracji franczyzobiorcy (bez automatycznej aktywacji)
- Strony franczyzobiorców (z kontaktami, informacjami, zdjęciami itd.) – każdy franczyzobiorca będzie miał swoją osobistą stronę. Możliwe – landing z domeną trzeciego poziomu.
- Strony z usługami
- Strona z reklamą franczyzy
- Blog / Kontakty (opcjonalnie)
3.2. System CRM (część prywatna)
3.2.1. Zarządzanie użytkownikami
- Role: Administrator, Franczyzobiorca
- Moderacja rejestracji franczyzobiorców
- Możliwość blokowania/usuwania kont
3.2.2. Zamówienia
- Tworzenie i edytowanie zamówień
- Statusy zamówienia: Nowe → Na giełdzie → Przypisane do franczyzobiorcy → Zakończone
- Możliwość dodawania zdjęć, opisu, geolokalizacji, ceny
- Komentarze, historia działań
3.2.3. Planowanie prac
- Kalendarz zadań dla każdego franczyzobiorcy
- Synchronizacja z Google Calendar (dwustronna)
3.2.4. Moduł finansowy
- Zarządzanie przychodami z każdego zamówienia
- Statystyki finansowe franczyzobiorcy i administratora
- Zarządzanie prowizjami (jeśli dotyczy)
- Możliwość eksportu do CSV/Excel
3.2.5. Giełda zamówień (wewnątrz CRM)
- Po wysłaniu zgłoszenia przez użytkownika, natychmiast pojawia się ono na publicznej części strony (bez kontaktów) i w CRM.
- Franczyzobiorcy widzą zgłoszenia i mogą odpowiedzieć, proponując:
- cenę,
- terminy realizacji,
- format realizacji (na miejscu lub w garażu).
- Zgłoszenie otrzymuje listę wykonawców, którzy odpowiedzieli z ich ofertami.
- Klient otrzymuje powiadomienie z ofertami. Wybiera wykonawcę samodzielnie.
- Dane kontaktowe klienta są udostępniane tylko wybranemu wykonawcy.
- Jeśli klient nie wybierze wykonawcy w ciągu 24 godzin, administrator może:
- ręcznie przypisać wykonawcę,
- przedłużyć czas oczekiwania,
- odrzucić zgłoszenie.
- Opcja: "Niech system wybierze wykonawcę za mnie" — wybór dokonuje administrator lub algorytm.
- Po wykonaniu klient może zostawić opinię. Tworzy się ranking wykonawcy.
4. Uprawnienia dostępu
Funkcja | Administrator | Franczyzobiorca
Przegląd wszystkich zamówień Tak | Nie
Przegląd swoich zamówień | Tak | Tak
Dodawanie zamówień | Tak | Nie
Praca z kalendarzem | Tak | Tak (tylko swoje)
Zarządzanie finansami | Tak | Tylko swoje
Przegląd giełdy | Tak | Tak
Wybór wykonawcy | Tak* | Nie
Zarządzanie użytkownikami | Tak | Nie
* Domyślnie wybór dokonuje klient. Administrator interweniuje w razie potrzeby.
5. Panel administracyjny
- Panel zarządzania użytkownikami
- Panel zgłoszeń (nowe, aktywne, zakończone)
- Statystyki dotyczące zamówień, przychodów, efektywności franczyzobiorców
- Powiadomienia i logi systemu
- Kalendarz wydarzeń
6. Integracje
- Google Calendar API – dwustronna synchronizacja wydarzeń (harmonogram)
- Powiadomienia e-mailowe
7. Wymagania techniczne
- Responsywny interfejs (desktop/mobilny)
- Łatwość skalowania systemu
- Udokumentowane API (jeśli dotyczy)
8. Życzenia
- Możliwość późniejszego dodania aplikacji mobilnej (na podstawie API)
- Możliwość korzystania z modeli wielodomenowych lub subdomenowych