Page 1 of 15 Aplikacja do zarządzania kontami bankowymi Wykonana przez: E-mail: pawel.klos@hotmail.com Więcej informacji na: Data zakończenia projektu 18.05.16
Page 2 of 15 O aplikacji Użyta technologia: WCF, Konsola, C#, Baza danych(t-sql), entity framework. Aplikacja umożliwia: Założenie nowego konta (imię, nazwisko, adres). System sam tworzy numer konta Podgląd danych konta Wpłacenie określonej kwoty pieniędzy na konto Wypłacenie określonej kwoty z konta Podgląd listy transakcji Link do github-a: https://github.com/artekat/aplikacja-klient-serwer Filmik Youtube: https://youtu.be/t2tdp2kfe7w Spis tres ci 1. Punkt widzenia użytkownika...3 2. Przegląd aplikacji z strony kodu...9 3. Dodatkowe ciekawe informacje...14
Page 3 of 15 Punkt widzenia uz ytkownika 1. Wygląd klienta serwera zaraz po uruchomieniu 2. Po wyborze 2 (założenie nowego konta). 3. Logowanie 4. Podgląd danych 5. Wpłata 6. Wypłata 7. Lista transakcji 8. Wylogowanie 1. Wygląd klienta serwera zaraz po uruchomieniu Wybory 1 Możliwosć zalogowania się (gdy mamy już konto). 2 Stworzenie nowego konta. 3 Wyjście z programu tranzakczynego 2. Po wyborze 2 (założenie nowego konta). Podanie loginu pole nie podlega walidacji (przyjmowane są wszystkie znaki oraz cyfry).
Page 4 of 15 Podanie hasla pole nie podlega walidacji (przyjmowane są wszystkie znaki oraz cyfry). Gdy podamy hasło jest one szyfrowane metodą MD5 i w takiej postaci trafia do bazy danych. Podanie imienia pole nie podlega walidacji (przyjmowane są wszystkie znaki oraz cyfry). Podanie nazwiska pole nie podlega walidacji (przyjmowane są wszystkie znaki oraz cyfry). Podanie adresu pole nie podlega walidacji (przyjmowane są wszystkie znaki oraz cyfry).
Page 5 of 15 Po dokonaniu wszystkich danych program powrócił do Menu wyboru. Wygląd bazy danych po wykonaniu polecenia, select * from Pracownicy; Id Pole autoinkrementowane. Imię, nazwisko, adres, login Pola dodane z formularza. Nr. Rach Wygenerowany losowo numer konta. Haslo Zaszyfrowane metodą MD5 hasło użytkownika. Stan konta Saldo użytkownika, początkowo jego stan to zero. 3. Logowanie Użytkownik proszony jest o podanie loginu. Użytkownik proszony jest o podanie hasła.
Page 6 of 15 Login i hasło zostało znalezione poprawnie w bazie danych (scenariusz optymistyczny). Login i hasło nie zostało odnalezione w bazie danych (scenariusz pesymistyczny). 4. Podgląd danych
Page 7 of 15 5. Wpłata Wygląd po wyborze opcji wpłaty. Użytkownik musi podać kwotę do wpłaty. Potwierdzenie wpłaty. 6. Wypłata Wygląd po wybraniu opcji wypłaty. Okno wypłaty, oraz potwierdzenie.
Page 8 of 15 7. Lista transakcji Ekran po wyborze opcji Lista transakcji. 8. Wylogowanie Okno po wyborze opcji wylogowania.
Page 9 of 15 Przegląd aplikacji z strony kodu 1. Schemat ideowy działania aplikacji. 2. Solution Explorer omówienie składowych projektu. 3. Baza danych. 1. Schemat ideowy działania aplikacji 2. Solution Explorer omówienie składowych projektu
Page 10 of 15 ProductInterfaces Projekt interfejsu. Zawiera jedną klasę IWCFProductService, jest to interfejs zawierający metody które może wywołać klient by skonsultować się z serwerem. create_account Jako parametry przyjmuję wszystkie obiekty które użytkownik podał w formularzu logowania. Hasło szyfruje klient, dzięki czemu niemożliwe jest wykradzenie hasła podczas przesyłania. Zwraca wartość true, gdy użytkownik się zaloguję oraz false jeżeli podany login i hasło jest błędne. depositing Wpłata środków na konto. Oprócz wartości jaką chcemy dodać do konta mamy również login i hasło. Oba parametry są potrzebne do weryfikacji użytkownika, oraz ze względów bezpieczeństwa. Zwraca wiadomości na temat transakcji. payment Wypłata środków z konta. Działa podobnie jak wypłata. Zwraca wiadomości na temat transakcji. transaction_history Pobiera login i hasło(bezpieczeństwo oraz wygoda), zwraca tekstem wyniki transakcji. podglad_danych Działa dokładnie jak Transaction_history, tylko ze zwraca inne dane. login Zalogowanie użytkownika do systemu. ProductsClient Projekt klienta aplikacji. Zawiera jedną klasę Program gdzie widzimy komunikację z użytkownikiem przez konsole oraz zapytania do serwera.
Page 11 of 15 ProductService Projekt serwera aplikacji Zawiera dwie metody Program Gdzie sterujemy startem serwera. WCFProductService W którym znajdują się metody interfejsu. Wygląd projektu Klasa ProductService 3. Baza danych Baza oparta jest na lokalnym systemie Visual Studio. Zapytania oraz bazę tworzymy w T-sql. Odwzorowanie bazy danych Następnie za pomocą entity framework dodajemy bazę do projektu, następnym krokiem będzie stworzenie obiektów C#, z obiektów bazodanowych.
Page 12 of 15 Wygląd bazy danych niestety nie posiadają one relacji jeden do wielu. Jest ona symulowana za pomocą pola id_user, które przetrzymuje id Pracownika. Obiekty Pracownicy.cs oraz Transakcje.cs są obiektami stworzonymi z bazy danych.
Page 13 of 15 Klasa Pracownicy.cs Klasa Transakcje.cs
Page 14 of 15 Dodatkowe ciekawe informacje Sposób zabezpieczenia każdego wyboru użytkownika. Dzięki temu pole do wpisania wyboru poasiada walidację. Szyfrowanie hasła przez klienta.
Page 15 of 15 Metoda wpłaty środków na konta. Po stronie serwera.