Eskulap
System – dokumentacja
Spis treści
Analiza biznesowa
Diagram Przypadków Użycia
Wymagania użytkownika
Opis
Zadowolenie Niezadowolenie
Podgląd stanu magazynu
3
5
Podgląd zysków/strat
3
5
Wysyłka zamówień
3
4
Panel sprzedaży leków
2
5
Generowanie raportów
2
5
Zarządzenie fakturami
4
3
Podgląd ostatniej sprzedaży
4
2
Administracja użytkownikami
5
2
Korzystanie z bieżącego cennika
5
3
Predykcja zamówień leków
5
2
Wymagania funkcjonalne
Nazwa funkcji
Zaloguj
Opis
Po starcie aplikacji pojawia się okienko logowania, w którym należy
wpisać login i hasło użytkownika. Pod oknem znajduje się przycisk
logowania, który należy wcisnąć po wypełnieniu danych, a także
odnośnik „Zapomniałem hasła”. Wszystkie elementy znajdują się w
centralnym miejscu okna aplikacji. Po naciśnięciu przycisku zostaje
wyświetlony komunikat „Niepoprawny login lub hasło”, „Brak
połączenia z bazą danych” lub przejście do następnego okna aplikacji
– w zależności od sytuacji.
Dane wejściowe
Login i hasło
Źródło danych wejściowych
Wprowadzone z klawiatury
Dane wyjściowe
Komunikat o istnieniu danych w bazie lub ich brak
Baza
AspNetUsers:: UserName, AspNetUsers:: PasswordHash
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Otwarcie aplikacji
Warunek końcowy
Naciśnięcie przycisku logowania
Uwagi
Nazwa funkcji
Zapomniałem hasła
Opis
Przejście do funkcjonalności następuje po naciśnięciu przycisku
„Zapomniałem hasła” na stronie startowej aplikacji. Również w
centralnym miejscu strony znajduje się komunikat proszący o
podanie adresu mailowego. Pod nim znajduje się okienko typu text
field, z przeznaczeniem na wpisanie adresu. Pod nim znajduje się
przycisk „Wyślij link”. Po jego wciśnięciu na podany adres mailowy
zostanie wysłany e-mail zmieniający hasło. Na samym dole znajduje
się przycisk „Powrót do strony logowania”.
Dane wejściowe
Źródło danych wejściowych
Dane wyjściowe
Adres e-mail
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Kliknięcie przycisku „Zapomniałem hasła”
Warunek końcowy
Naciśnięcie przycisku „Wyślij link” lub wyjście ze strony
Uwagi
Nazwa funkcji
Wyślij link
Opis
Przejście do funkcjonalności następuje po naciśnięciu przycisku
„Wyślij link”. Po naciśnięciu przycisku, na podany adres mailowy
zostaje wysłana wiadomość prowadząca do panelu zmiany hasła.
Dane wejściowe
Adres e-mail
Źródło danych wejściowych
Okno aplikacji
Dane wyjściowe
Adres e-mail
Baza
AspNetUsers:: Email
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Kliknięcie przycisku „Wyślij link”
Warunek końcowy
Komunikat o wysłaniu wiadomości
Uwagi
Funkcjonalność zostaje zakończona jedynie po wprowadzeniu
adresu mailowego, który znajduje się w bazie danych.
Nazwa funkcji
Wyloguj
Opis
Przejście do funkcjonalności następuje po naciśnięciu przycisku
„Wyloguj”, który znajduje się w liście rozwijanej po naciśnięciu nazwy
użytkownika, która znajduje się w prawym górnym rogu głównego
okna aplikacji. Po naciśnięciu przycisku następuje wylogowanie z
systemu i powrót do strony logowania.
Dane wejściowe
Źródło danych wejściowych
Dane wyjściowe
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Kliknięcie przycisku „Wyloguj”
Warunek końcowy
Otwarcie strony logowania.
Uwagi
Nazwa funkcji
Zmień hasło
Opis
Przejście do funkcjonalności następuje po naciśnięciu przycisku
„Zmień hasło”, który znajduje się w liście rozwijanej po naciśnięciu
nazwy użytkownika, która znajduje się w prawym górnym rogu
głównego okna aplikacji. Po naciśnięciu przycisku następuje przejście
do panelu zmiany hasła. Formularz składa się z trzech pól typu text
field oznaczonych jako: „Aktualne Hasło”, „Nowe Hasło”, „Potwierdź
Hasło”. Pod spodem znajduje się przycisk „Zmień hasło”.
Dane wejściowe
Źródło danych wejściowych
Dane wyjściowe
Nowe hasło, Aktualne hasło
Baza
klawiatura
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Kliknięcie przycisku „Zmień hasło” w ikonie użytkownika w prawym
górnym rogu aplikacji
Warunek końcowy
Naciśnięcie przycisku „Zmień hasło” pod formularzem zmiany hasła
lub wyjście ze strony
Uwagi
Nazwa funkcji
Zapisz hasło
Opis
Przejście do funkcjonalności następuje po naciśnięciu przycisku
„Zmień hasło”, który znajduje się pod formularzem zmiany hasła.
Funkcjonalność
Dane wejściowe
Nowe hasło, Aktualne hasło
Źródło danych wejściowych
klawiatura
Dane wyjściowe
Nowe hasło
Baza
AspNetUsers: PasswordHash
Przeznaczenie
Baza danych
Warunek początkowy
Kliknięcie przycisku „Zmień hasło” w formularzu zmiany hasła
Warunek końcowy
Komunikat o poprawności lub niepoprawności zmiany hasła
Uwagi
Nazwa funkcji
Panel główny
Opis
Przejście do funkcjonalności następuje po poprawnym zalogowaniu
się. Otwarte zostaje okno z paskiem bocznym menu oraz stroną
główną, na której są przedstawione 4 wykresy. Strona zostaje
podzielona na 4 nierówne części: w pionie na dwie równe części, w
poziomie górna część zostaje podzielona w proporcji ¾ do ¼. W
górnym lewym obszarze znajduje się wykres „Dzisiejsza sprzedaż”, w
górnym prawym obszarze znajdują się dwa małe wykresy oznaczone
jako „Zobacz także”. Na dole strony znajduje się wykres „Zyski
miesięczne”.
Dane wejściowe
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Poprawne zalogowanie się lub naciśnięcie przycisku „Panel główny”
w pasku bocznym menu
Warunek końcowy
Wywołanie dowolnej innej funkcjonalności
Uwagi
Nazwa funkcji
Sprzedaj lek
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Sprzedaj
lek” w bocznym pasku menu. W rezultacie otwiera się nowa
podstrona o nagłówku „Panel sprzedaży”. Pod spodem znajduje się
okno z datą i godziną. Pod spodem, od nowej linii, znajduje się
okienko typu text filed na około 250 znaków. Obok znajdują się
okienka typu text field w ilości 7. Drugie z kolei pole jest o wiele
dłuższe od pozostałych – razem wypełniają całą szerokość
formularza. Podpisy znajdują się nad okienkami i brzmią
odpowiednio: „Lp.”, „Nazwa towaru”, „Ilość”, „Cena netto”,
„Wartość netto”, „VAT”, „Wartość brutto”. Pola 1, 5 i 7 są
wypełniane automatycznie. Linia kończy się przyciskiem z
czerwonym krzyżykiem, który spowoduje wykasowanie pozycji.
Pod spodem, od nowej linii, na wysokości czerwonego krzyżyka,
znajduje się przycisk z zielonym plusem, którego wciśnięcie
spowoduje dodanie nowej linii z polami text field. Strona kończy się
przyciskiem „Zapisz”. Po wprowadzeniu pierwszych trzech znaków
leku do dłuższego textfielda pojawiają się podpowiedzi w postaci
listy rozwijanej. W podpowiedzi znajduje się nazwa leku, dawka,
postać oraz ilość. Wybór należy zatwierdzić klikając na odpowiednią
pozycję z listy podpowiedzi. Obok należy wprowadzić cenę
jednostkową oraz ilość towaru, który zostaje sprzedawany, a także
VAT. Po wprowadzeniu danych można kliknąć „Plus”, by pojawiła się
kolejna, zdublowana linia do wprowadzenia danych. Nad przyciskiem
zapisz znajduje się pole wypełnianie automatycznie, które sumuje
wartości cen wprowadzonych leków (netto). Obok podawana jest
również cena brutto. Po zakończeniu wprowadzania można kliknąć
na „Zapisz”. UWAGA: Nie powinno się móc zatwierdzić pozycji, jeśli
pozycja została wprowadzona ręcznie i nie ma swojego
odpowiednika w bazie danych.
Dane wejściowe
Nazwa leku, Ilość sprzedanego leku, Cena leku
Źródło danych wejściowych
Klawiatura
Dane wyjściowe
Nazwa leku
Baza
Lek::Nazwa, Lek::Postac, Lek::Dawka, Lek::Opakowanie,
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku „Zapisz” na dole formularza
Uwagi
Nazwa funkcji
Zapisz lek
Opis
Funkcjonalność zostaje wywołana w momencie kliknięcia przycisku
„Zapisz” w funkcjonalności „Sprzedaj lek”. Przyjmuje się, że
sprawdzenie poprawności danych zostało już wykonane na poziomie
tworzenia formularza. Jest to PU rozszerzające. Po naciśnięciu
„Zapisz” wszystkie informacje z formularza zostają przesłane do Bazy
danych, do tabeli głównej Operacja + odpowiednie tabele z gwiazdy.
Dane wejściowe
data, ID_lek, Cena netto, Cena brutto, rodzaj operacji
Źródło danych wejściowych
Formularz
Dane wyjściowe
Komunikat o poprawności zapisu z bazy danych
Baza
Lek::ID_lek, Faktura::Netto, Operacja::Brutto, Operacja: Netto
Operacja::Rozchod, Operacja::Data, Operacja::ID_user
Przeznaczenie
Komunikacja aplikacji webowej z bazą danych
Warunek początkowy
Naciśnięcie przycisku „Zapisz”
Warunek końcowy
Otrzymanie komunikatu z bazy danych o poprawności lub braku
poprawności
Uwagi
Nazwa funkcji
Magazyn
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Magazyn” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera tabelę z dostępnymi Lekami
w aptece. Tabela składa się z kolumn: Nazwa Leku, Ilość, Dawka i
Opakowanie, a także z ilością dostępnego leku na magazynie.
Funkcjonalność działa poprzez wyświetlenie kompletnego widoku
„Stan_magazynu”, dostępnego w bazie SQL. Cała zawartość widoku
powinna być importowana do odpowiedniego kontenera asp w
momencie wywołania funkcjonalności. Tabela powinna umożliwić
sortowanie pozycji po wybranej wartości, najlepiej za pomocą
zwykłej strzałki umieszczonej obok etykiety kolumny. Nad tabelą
powinno znajdować się okno typu text field, które umożliwi
wyszukiwanie leków po nazwie. Wyszukiwanie powinno odbywać się
dynamicznie i zawężać listę pozycji w tabeli po wpisaniu każdego
znaku ascii. Na stronie domyślnie wyświetlane jest 10 pierwszych
pozycji. Można zmienić ten widok poprzez zmianę liczby w panelu
„Pokaż XXX pozycji”. Między poszczególnymi stronami można
przechodzić klikając numer strony na dole aplikacji. Z funkcjonalności
wychodzi się poprzez kliknięcie innej funkcjonalności w pasku
bocznym menu.
Dane wejściowe
View: Stan_magazynu
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Tabela z zawartością widoku
Baza
View: Stan_magazynu
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Podsumowanie sprzedaży
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Podsumowanie sprzedaży” w głównym oknie aplikacji. W rezultacie
zostaje wyświetlona podstrona, która zawiera tabelę z ostatnimi
operacjami sprzedaży wykonanymi w aptece. Tabela powinna
zawierać pozycje: data, lek, rozchód, netto, brutto, sprzedawca. Nad
tabelą powinno znajdować się okno typu text field, które umożliwi
wyszukiwanie leków po nazwie. Wyszukiwanie powinno odbywać się
dynamicznie i zawężać listę pozycji w tabeli po wpisaniu każdego
znaku ascii. Na stronie domyślnie wyświetlane jest 10 pierwszych
pozycji. Można zmienić ten widok poprzez zmianę liczby w panelu
„Pokaż XXX pozycji”. Między poszczególnymi stronami można
przechodzić klikając numer strony na dole aplikacji.
Dane wejściowe
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Tabela z zawartością widoku
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Baza leków
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Baza
leków” w głównym oknie aplikacji. W rezultacie zostaje wyświetlona
podstrona, która zawiera tabelę z bazą danych wszystkich
dostępnych do obrotu leków. Tabela powinna zawierać pozycje:
nazwa, postać, dawka, opakowanie. Obok każdej pozycji powinny
znajdować się 2 przyciski: „Zmień” i „Szczegóły”. Nad tabelą powinno
znajdować się okno typu text field, które umożliwi wyszukiwanie
leków po nazwie. Wyszukiwanie powinno odbywać się dynamicznie
i zawężać listę pozycji w tabeli po wpisaniu każdego znaku ascii. Na
stronie domyślnie wyświetlane jest 10 pierwszych pozycji. Można
zmienić ten widok poprzez zmianę liczby w panelu „Pokaż XXX
pozycji”. Między poszczególnymi stronami można przechodzić
klikając numer strony na dole aplikacji.
Dane wejściowe
View: Lista leków
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Tabela z zawartością widoku
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Szczegóły leku
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Szczegóły” znajdującego się obok każdego leku wymienionego w
funkcjonalności „Baza leków”. W nowo otwartym oknie zostaje
wyświetlone: Nazwa, Postać, Opakowanie i Dawka. Pod spodem
znajduje się przycisk „Edytuj”.
Dane wejściowe
View: Lista leków
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Strona z danymi widoku
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności „Szczegóły”
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności
Uwagi
Nazwa funkcji
Edytuj lek
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Edytuj”
znajdującego
się
obok
każdego
leku wymienionego w
funkcjonalności „Baza leków” lub przycisku „Edytuj” znajdującego się
w funkcjonalności „Szczegóły leku”. W nowo otwartym oknie zostaje
wyświetlony formularz z uzupełnionymi polami: Nazwa, Postać,
Opakowanie i Dawka. Podane pola można edytować. Pod spodem
znajduje się przycisk „Zapisz”. Po jego naciśnięciu dane zostają
zmodyfikowane w bazie danych.
Dane wejściowe
View: Lista leków
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Dane z formularza funkcjonalności
Baza
Lek:: Nazwa, Lek::Postac, Lek::Dawka, Lek::Opakowanie
Przeznaczenie
Baza danych
Warunek początkowy
Naciśnięcie przycisku funkcjonalności „Edytuj lek”
Warunek końcowy
Komunikat o poprawności zapisu lub jego braku
Uwagi
Nazwa funkcji
Dodaj lek
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Dodaj
lek” w głównym oknie aplikacji. W rezultacie zostaje wyświetlona
podstrona, która zawiera formularz z 4 polami typu text field do
wypełnienia: Nazwa, Postać, Dawka, Opakowanie. Pod spodem
znajduje się przycisk „Dodaj”, którego naciśnięcie spowoduje
dodanie danych z formularza do bazy danych.
Dane wejściowe
Nazwa leku, Postać, Dawka, Opakowanie
Źródło danych wejściowych
Formularz
Dane wyjściowe
Nazwa leku, Postać, Dawka, Opakowanie
Baza
Lek:: Nazwa, Lek::Postac, Lek::Dawka, Lek::Opakowanie
Przeznaczenie
Baza danych
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Zamówienia
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Zamówienia” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera tabelę z lekami o niskim stanie
magazynowym. Tabela powinna zawierać pozycje: nazwa, postać,
dawka,
opakowanie,
stan
magazynowy,
zapotrzebowanie,
hurtownia, cena. Obok każdej pozycji powinien znajdować się
przycisk „Zmień” oraz „Usuń”. Nad tabelą powinno znajdować się
okno typu text field, które umożliwi wyszukiwanie leków po nazwie.
Wyszukiwanie powinno odbywać się dynamicznie i zawężać listę
pozycji w tabeli po wpisaniu każdego znaku ascii. Pod spodem
powinien znajdować się przycisk „Importer” oraz „Ekportuj”. Na
stronie domyślnie wyświetlane jest 10 pierwszych pozycji. Można
zmienić ten widok poprzez zmianę liczby w panelu „Pokaż XXX
pozycji”. Między poszczególnymi stronami można przechodzić
klikając numer strony na dole aplikacji. Kliknięcie przycisku „Usuń”
usunie pozycję z tablicy.
Dane wejściowe
Nazwa leku, Postać, Dawka, Opakowanie, Hurtownia, Cena
Źródło danych wejściowych
Baza danych, Plik xls
Dane wyjściowe
Nazwa leku, Postać, Dawka, Opakowanie, Hurtownia, Cena
Baza
Lek:: Nazwa, Lek::Postac, Lek::Dawka, Lek::Opakowanie
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Importer
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Importer” w funkcjonalności „Zamówienia”. Po jego wciśnięciu
pokazuje się okno z wyborem pliku, gdzie należy wgrać cennik. Po
zatwierdzeniu, cennik zostaje wgrany, a informacje z niego
przekazane do funkcjonalności „Zamówienia”.
Dane wejściowe
Nazwa leku, Postać, Dawka, Opakowanie, Hurtownia, Cena
Źródło danych wejściowych
Plik xls
Dane wyjściowe
Nazwa leku, Postać, Dawka, Opakowanie, Hurtownia, Cena
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie
przycisku
funkcjonalności
w
funkcjonalności
„Zamówienia”
Warunek końcowy
Zatwierdzenie wgrania pliku i zamknięcie okna wgrywania pliku
Uwagi
Nazwa funkcji
Lista faktur
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Lista
faktur” w głównym oknie aplikacji. W rezultacie zostaje wyświetlona
podstrona, która zawiera tabelę z wszystkimi fakturami
zaksięgowanymi przez aptekę. Tabela powinna zawierać pozycje:
data, numer, hurtownia, netto i brutto. Nad tabelą powinno
znajdować się okno typu text field, które umożliwi wyszukiwanie
leków po nazwie. Wyszukiwanie powinno odbywać się dynamicznie
i zawężać listę pozycji w tabeli po wpisaniu każdego znaku ascii. Na
stronie domyślnie wyświetlane jest 10 pierwszych pozycji. Można
zmienić ten widok poprzez zmianę liczby w panelu „Pokaż XXX
pozycji”. Między poszczególnymi stronami można przechodzić
klikając numer strony na dole aplikacji.
Dane wejściowe
View: Lista_faktur
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Tabela z zawartością widoku
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Wprowadź fakturę
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku
„Wprowadź fakturę” w bocznym pasku menu. W rezultacie otwiera
się nowa podstrona o nagłówku „Wprowadź nową fakturę”. Pod
spodem znajduje się okno z datą i godziną. Niżej znajdują się dwa
pola text field oznaczone jako „Wybierz hurtownię” i „Wprowadź
numer faktury”. Pod spodem, od nowej linii, znajduje się okienko
typu text filed na około 250 znaków. Obok znajdują się okienka typu
text field w ilości 7. Drugie z kolei pole jest o wiele dłuższe od
pozostałych – razem wypełniają całą szerokość formularza. Podpisy
znajdują się nad okienkami i brzmią odpowiednio: „Lp.”, „Nazwa
towaru”, „Ilość”, „Cena netto”, „Wartość netto”, „VAT”, „Wartość
brutto”. Pola 1, 5 i 7 są wypełniane automatycznie. Linia kończy się
przyciskiem
z
czerwonym
krzyżykiem,
który
spowoduje
wykasowanie pozycji.
Pod spodem, od nowej linii, na wysokości czerwonego krzyżyka,
znajduje się przycisk z zielonym plusem, którego wciśnięcie
spowoduje dodanie nowej linii z polami text field. Strona kończy się
przyciskiem „Zapisz”. Po wprowadzeniu pierwszych trzech znaków
leku do dłuższego textfielda pojawiają się podpowiedzi w postaci
listy rozwijanej. W podpowiedzi znajduje się nazwa leku, dawka,
postać oraz ilość. Wybór należy zatwierdzić klikając na odpowiednią
pozycję z listy podpowiedzi. Obok należy wprowadzić cenę
jednostkową oraz ilość towaru, który zostaje sprzedawany, a także
VAT. Po wprowadzeniu danych można kliknąć „Plus”, by pojawiła się
kolejna, zdublowana linia do wprowadzenia danych. Nad przyciskiem
zapisz znajduje się pole wypełnianie automatycznie, które sumuje
wartości cen wprowadzonych leków (netto). Obok podawana jest
również cena brutto. Po zakończeniu wprowadzania można kliknąć
na „Zapisz”. UWAGA: Nie powinno się móc zatwierdzić pozycji, jeśli
pozycja została wprowadzona ręcznie i nie ma swojego
odpowiednika w bazie danych.
Dane wejściowe
Nazwa leku, Ilość kupionego leku, Cena leku , Hurtownia, Data,
Netto, Brutto
Źródło danych wejściowych
Klawiatura
Dane wyjściowe
Hurtownia, Data, Przychód, User, Netto, Brutto
Baza
Lek::Nazwa, Lek::Postac, Lek::Dawka, Lek::Opakowanie,
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku „Zapisz” na dole formularza
Uwagi
Nazwa funkcji
Zapisz fakturę
Opis
Funkcjonalność zostaje wywołana w momencie kliknięcia przycisku
„Zapisz” w funkcjonalności „Wprowadź fakturę”. Przyjmuje się, że
sprawdzenie poprawności danych zostało już wykonane na poziomie
tworzenia formularza. Jest to PU rozszerzające. Po naciśnięciu
„Zapisz” wszystkie informacje z formularza zostają przesłane do Bazy
danych, do tabeli głównej Operacja + odpowiednie tabele z gwiazdy.
Dane wejściowe
Nazwa leku, Ilość kupionego leku, Cena leku , Hurtownia, Data,
Netto, Brutto
Źródło danych wejściowych
Formularz
Dane wyjściowe
Komunikat o poprawności zapisu z bazy danych
Baza
Lek::ID_lek, Operacja::Brutto, Operacja: Netto Operacja::Rozchod,
Operacja::Data, Operacja::ID_user, Hurtownia:: ID_hurtownia
Przeznaczenie
Komunikacja aplikacji webowej z bazą danych
Warunek początkowy
Naciśnięcie przycisku „Zapisz”
Warunek końcowy
Otrzymanie komunikatu z bazy danych o poprawności lub braku
poprawności
Uwagi
Nazwa funkcji
Raporty
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Raporty”
w głównym oknie aplikacji. W rezultacie zostaje wyświetlona
podstrona podzielona na dwie części. Pierwsza część nazwana jest
„Magazyn”. Poniżej znajdują się dwa przyciski: „Stan magazynu” i
„Dostępne leki”. Po ich naciśnięciu zostaną wygenerowane pliki xls z
raportami. Druga część strony nazwa jest „Operacje”. Pod spodem
znajdują się dwa pola tekstowe typu text field z datami i
oznaczeniami: „Sprzedaż od” i „Sprzedaż do”. Poniżej znajdują się
cztery przyciski: „Historia sprzedaży”, „Podsumowanie sprzedaży”,
„Historia kupna” i „Podsumowanie kupna”.
Dane wejściowe
Źródło danych wejściowych
Dane wyjściowe
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Lista hurtowni
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Lista
hurtowni” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera tabelę z bazą danych
wszystkich znanych hurtowni współpracujących. Tabela powinna
zawierać pozycje: Nazwa i NIP. Obok każdej pozycji powinny
znajdować się 2 przyciski: „Zmień” i „Szczegóły”. Nad tabelą powinno
znajdować się okno typu text field, które umożliwi wyszukiwanie
leków po nazwie. Wyszukiwanie powinno odbywać się dynamicznie
i zawężać listę pozycji w tabeli po wpisaniu każdego znaku ascii. Na
stronie domyślnie wyświetlane jest 10 pierwszych pozycji. Można
zmienić ten widok poprzez zmianę liczby w panelu „Pokaż XXX
pozycji”. Między poszczególnymi stronami można przechodzić
klikając numer strony na dole aplikacji.
Dane wejściowe
View: Lista hurtowni
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Tabela z zawartością widoku
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Dodaj hurtownię
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Nowa
hurtownia” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera formularz z 2 polami typu text
field do wypełnienia: Nazwa, NIP. Pod spodem znajduje się przycisk
„Utwórz”, którego naciśnięcie spowoduje dodanie danych z
formularza do bazy danych.
Dane wejściowe
Nazwa hurtowni, NIP
Źródło danych wejściowych
Formularz
Dane wyjściowe
Nazwa hurtowni, NIP
Baza
Hurtownia::Nazwa, Hurtownia::NIP
Przeznaczenie
Baza danych
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięciu przycisku „Utwórz”
Uwagi
Nazwa funkcji
Lista użytkowników
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Lista
użytkowników” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera tabelę z bazą danych
wszystkich zarejestrowanych użytkowników. Tabela zawiera tylko
loginy.
Dane wejściowe
AspNetUsers:: UserName
Źródło danych wejściowych
Baza danych
Dane wyjściowe
Baza
Przeznaczenie
Okno aplikacji webowej
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku innej funkcjonalności w pasku bocznym menu
Uwagi
Nazwa funkcji
Dodaj użytkownika
Opis
Funkcjonalność zostaje wywołana po naciśnięciu przycisku „Dodaj
użytkownika” w głównym oknie aplikacji. W rezultacie zostaje
wyświetlona podstrona, która zawiera formularz z 6 polami typu text
field do wypełnienia: „Login”, „Imię”, „Nazwisko”, „E-mail”, „Hasło”,
„Powtórz Hasło”. Pod spodem znajduje się przycisk „Dodaj”, którego
naciśnięcie spowoduje dodanie danych z formularza do bazy danych.
Dane wejściowe
Login, Imię, Nazwisko, E-mail, Hasło,
Źródło danych wejściowych
Klawiatura
Dane wyjściowe
Login, Imię, Nazwisko, E-mail, Hasło,
Baza
AspNetUsers::UserName, AspNetUsers::Email
Przeznaczenie
Baza danych
Warunek początkowy
Naciśnięcie przycisku funkcjonalności w pasku bocznym menu
Warunek końcowy
Naciśnięcie przycisku „Dodaj”
Uwagi
Użytkownicy
Zdecydowano się na dwa rodzaje użytkowników: administrator i pracownik. Administrator ma dostęp
do wszystkich funkcji wymienionych wyżej. Pracownik nie posiada możliwości edytowania danych
oraz listowania oraz dodawania użytkowników.
Interfejs
Zmienne użyte do sterowania layoutem:
Technologie
Do interfejsu użyto szablonu Bootstrap – SB Admin2.
Wykresy zostały stworzone za pomocą szablonu Highcharts.
Baza danych i system zostały postawione na platformie Azure.
Oprogramowanie zostało napisane za pomocą asp.NET.
Raporty są generowane w plikach Microsoft Excel.
Predykcja została wykonana za pomocą platformy Knime.
@gray-darker:
lighten
(
#000
,
13.5
%
);
@gray:
lighten
(
#000
,
33.5
%
);
@gray-light:
lighten
(
#000
,
60
%
);
@gray-lighter:
lighten
(
#000
,
93.5
%
);
@gray-lightest:
lighten
(
#000
,
97.25
%
);
@brand-primary:
#428bca
;
@brand-success:
#5cb85c
;
@brand-info:
#5bc0de
;
@brand-warning:
#f0ad4e
;
@brand-danger:
#d9534f
;