Skip to content

sharpgienek/Leave-Manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ver. 0.1 
	- Utworzono większość formatek
ver. 0.11 
	- Zmieniono nazwy części klas, dodano plik .gitignore który powoduje ignorowanie 
	plików generownych przy kompilacji podczas aktualizacji repozytorium.
ver. 0.12 
	- Dodano do projektu bazę danych w formie pliku.
	- Dodano plik Readme.txt
	- Stworzono formatkę wyboru rodzaju połączenia do bazy (plik lub serwer).
	- Poprawiono nazwy elementów w formatkach.
	- Dodano diagramy.
ver. 0.13
	- Zaktualizowano diagram ERD
	- Dodano FormAdmin
	- Stworzono prowizoryczne logowanie
ver. 0.14 
	- Zmodyfikowano ERD
	- Dodano formularz dodawania pracownika
	- Dodano możliwość informowania nowego pracownika o loginie i haśle przez administratora
	- Dodano klasę StringSha posiadającą statyczną metodę do wyznaczenia skrótu sha256managed
	- Hasła są zapisywane w bazie poprzezz skrót sha256managed
	- Dodano formularz zmiany hasła i loginu
	- Dodano klasę Dictionary pozwalającą pobrać z bazy zawartości tabel słownikowych
	- Dodano klasę LeaveType
	- Dodano klasę TimeTools rozszerzającą strukturę DateTime o dodatkowe funkcje:
		=> Trim pozwalającą 'obciąć' datę do okrągłej liczby dni, minut itp. poprzez podanie np. TimeSpan.TicksPerDay
		=> GetNumberOfWorkDays
		=> IsDateFromPeriodUsed informującą, czy jakaś data z przedziału czasu jest już zarezerwowana w jakimś zgłoszeniu urlopowym.
	- Dodano możliwość zgłoszenia chęci odbycia urlopu

ver. 0.15
	- Naprawiono zgłaszanie chęci urlopu	
	- Dodano możliwość zatwierdzania/odrzucania urlopu przez asystentke	
	- Dodano możliwość zatwierdzania/odrzucania urlopu przez kierownika
	- Dodano możliwość dodawania/usuwania nowych wpisów do słowników pozycji i typów urlopów przez administratora
	- Dodano możliwość edycji wpisów urlopowych przez asystentke
	- Dodano możliwość dodawania chorobowego

ver 0.16
	- przeniesiono większość zapytań do jednej klasy DatabaseOperator. Obiekt tej klasy jest przekazywany do formularzy.

ver. 0.17
	- Poprawiono kilka błędów.
	- Skomentowano większość kodu (klasa DatabaseOperator wymaga dokomentowania).
	- Program wymaga gruntownego testowania po przebudowie.

ver. 0.18
	- Poprawiono kilka błędów.
	- Skończono komentować klasę DatabaseOperator.
	- Program wymaga gruntownego testowania po przebudowie.

ver. 0.19
	- Uzupełniono listę todo w pliku Readme.txt.
	- Przeprowadzono powierzchowne testy wszystkich funkcji.
	- Naprawiono dodawanie zgłoszenia urlopowego przez pracownika.
	- Skomentowano LeaveManagerForm.

ver. 0.2
	- Dodano pole Leave_ID w tabeli urlopów.
	- Zmieniono nazwy metod na z dużej litery.
	- Naprawiono kilka błędów.
	- Dodano pole Used_days w tabeli urlopów. Przechowuje ono liczbę dni zużytych przez urlop.
	- Skomentowano rodzaje wyjątków rzucanych przez metody zdefiniowane w klasie DataOperator.

ver. 0.21
	- Dodano stały typ urlopu na żądanie.
	- Naprawiono bład związany z dodawaniem urlopów w miejsce urlopów odrzuconych/anulowanych.
	- Zabroniono zastępować usuwany typ urlopu typem, który ma inną wartość parametru określającego
		czy dany typ konsumuje dni, czy nie.
	- Dodano możliwość usuwania typu urlopu bez zastępowania go innym. W takim wypadku wszystkie
		wpisy urlopowe danego typu zostają usunięte, a dni za nie zostają zwrócone.
	- Zabrano rejestratorce możliwość edycji wpisu urlopowego za wyjątkiem uwag.
	- Naprawiono kilka błędów.


ver. 0.22
	- Edycja danych pracowników.
	- Wyszukiwanie pracowników.
	- Stworzono prototyp formatki ustalania godzin pracy pracownika.

ver. 0.225
	- FormLeaveApplication > po zmianie typu urlopu na extraordinary blokuje się możliwość wyboru stanu urlopu.
	- Dodano kierownikowi dostęp do formularza danych urlopowych pracownika.
	- Dodano obsługę guzika Reject without consideration w formularzach rejestratorki i kierownika.
	- Zmieniono argument przyjmowany przez metodę deleteLeave z obiektu urlopu na numer id urlopu.
	- Dodano możliwość usuwania urlopów z poziomu formularza danych urlopowych pracownika.
	- Coroczna aktualizacja liczby dostępnych dni urlopowych.

ver. 0.23
	- Dodano możliwość edycji godzin pracy przez kierownika.

ver. 0.24
	- Usprawniono możliwość edycji godzin pracy.
	- Sprawdzanie ilości dni urlopu na podstawie rozpiski godzin pracy.

ver. 0.25
	- Dodano wypisywanie liczby dostępnych pracowników w formularzu LeaveConsideretion
	- Podczas dodawania pracownika dodawany jest również odpowiedni wiersz do tabeli Work_hours

ver. 0.26
	- Dodano obsługę wyjątków (w wszystkich znalezionych miejscach, może wymagać poprawy)
	- Poprawiono kilka błędów.
	- Dodano dni wolne od pracy.

INFO
StringSha.GetSha256Managed("admin") == 8C6976E5B5410415BDE908BD4DEE15DFB167A9C873FC4BB8A81F6F2AB448A918
manager == 6EE4A469CD4E91053847F5D3FCB61DBCC91E8F0EF10BE7748DA4C4A1BA382D17
assistant == A39A7FFAD4A3013F29DA97B84F264337F234C1CF9B3C40C7C30C677A8A18609A
employee == 2FDC0177057D3A5C6C2C0821E01F4FA8D90F9A3BB7AFD82B0DB526AF98D68DE8

Pytania:

Wymagania do danych:
W tabeli Permission id musi być od 0 do max bez wartości pustych (nie może być np. takiej sytuacji {0,1,3})
W tabeli Status_type typ Pending validation musi mieć index 0, żeby był domyślnym statusem wpisywanym przy braniu urlopu przez pracownika.

Do zrobienia na końcu:
Obsługa błędów przy wszystkich transakcjach, lub wykonaniach zapytań.
Przemyślenie wszystich transakcji.


 todo list:
- Zamienić wszystkie DateTime.Now na pobieranie czasu z bazy danych.

- Obsługa błędów przy wszystkich odowłaniach do metod z DatabaseOperator.

- w metodzie private static void addLeave(LeaveManagerForm form, Leave leave)
nie zawsze jest konieczna transakcja. Możnaby nie zawsze jej wymagać.
 
- w metodzie private static void DeleteLeave(LeaveManagerForm form, Leave leave)
nie zawsze jest konieczna transakcja. Możnaby nie zawsze jej wymagać

- Przetestować gruntownie edycję urlopu przez managera (np. zmiana typu na nie konsumujący dni itp. itd.)

Nie zaiplementowane:

- Zastępstwa
- Manager>Raportowanie
- Liczby wymaganych pracowników na danej pozycji

Opcjonalnie:
- Usuwanie pracownika.
- Dodanie stanu urlop w trakcie i urlop zakończony.
- Auto logout
- Usunąć konstruktory bezargumentowe > nie używać .GetType do porównania typów a słowa kluczowego "is"

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages