internal static void CheckPossibilityToSaveIllness(Illness illness, int dayCounter) { //sprawdza, czy był już wpis o podanej dacie w tabeli chobora if (illness.IsAlreadyInDataBase()) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był na zasiłku.\nProszę sprawdzić datę i spróbować ponownie.", illness.Date.ToShortDateString())); } else if (DayOff.IsAlreadyInDataBase(illness.IdEmployee, illness.Date)) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był na urlopie.\nCzy napewno dodać zasiłek do bazy danych?", illness.Date.ToShortDateString())); } else if (Work.IsAlreadyInDataBase(illness.IdEmployee, illness.Date)) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był w pracy.\nCzy napewno dodać zasiłek do bazy danych?", illness.Date.ToShortDateString())); } }
internal static void CheckPossibilityToSaveDayOff(DayOff dayOff, int dayCounter) { string holidayDescription = ""; if (dayOff.IsAlreadyInDataBase()) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był na urlopie.\nProszę sprawdzić datę i spróbować ponownie.", dayOff.Date.ToShortDateString())); } else if (Illness.IsAlreadyInDataBase(dayOff.IdEmployee, dayOff.Date)) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był na zwolnieniu lekarskim.\nProszę sprawdzić datę i spróbować ponownie.", dayOff.Date.ToShortDateString())); } else if (Work.IsAlreadyInDataBase(dayOff.IdEmployee, dayOff.Date)) { string temp = string.Format("W dniu {0} pracownik był w pracy.\nCzy napewno dodać urlop do bazy danych?", dayOff.Date.ToShortDateString()); DialogResult result = MessageBox.Show(temp, "Pytanie", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { throw new CancelException("Anulowano"); } } if (dayCounter > 1)//jeżeli wpisywanie wielu dni to exit { return; } if (dayOff.Date.DayOfWeek == DayOfWeek.Sunday) { throw new WrongDateTimeException(string.Format("Podawany dzień {0} jest dniem wolnym od pracy - NIEDZIELA", dayOff.Date.ToShortDateString())); } else if (dayOff.Date.DayOfWeek == DayOfWeek.Saturday) { throw new WrongDateTimeException(string.Format("Podawany dzień {0} jest dniem wolnym od pracy - SOBOTA", dayOff.Date.ToShortDateString())); } else if (Holidays.IsHoliday(dayOff.Date, out holidayDescription)) { throw new WrongDateTimeException(string.Format("W dniu {0} przypada {1}.", dayOff.Date.ToShortDateString(), holidayDescription)); } }
internal static void CheckPossibilityToSaveWork(Work work) { string holidayDescription = ""; //sprawdza, czy był już wpis o podanej dacie w tabeli praca if (work.IsAlreadyInDataBase()) { throw new AlreadyExistsException(string.Format("W dniu {0} pracownik był w pracy.\nProszę sprawdzić datę i spróbować ponownie.", work.Date.ToShortDateString())); }//sprawdza, czy był już wpis o podanej dacie w tabeli choroba else if (Illness.IsAlreadyInDataBase(work.IdEmployee, work.Date)) { string temp = string.Format("W dniu {0} pracownik był na zwolnieniu lekarskim.\nCzy napewno dodać godziny do bazy danych?", work.Date.ToShortDateString()); DialogResult result = MessageBox.Show(temp, "Pytanie", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { throw new CancelException("Anulowano"); } } //jeżeli nie było wpisu to sprawdza następnie tabele urlop else if (DayOff.IsAlreadyInDataBase(work.IdEmployee, work.Date)) { string temp = string.Format("W dniu {0} pracownik był na urlopie.\nCzy napewno dodać godziny do bazy danych?", work.Date.ToShortDateString()); DialogResult result = MessageBox.Show(temp, "Pytanie", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { throw new CancelException("Anulowano"); } } else if (Holidays.IsHoliday(work.Date, out holidayDescription)) { string temp = string.Format("W dniu {0} przypada {1}.\nCzy napewno dodać godziny do bazy danych?", work.Date.ToShortDateString(), holidayDescription); DialogResult result = MessageBox.Show(temp, "Pytanie", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (result == DialogResult.No) { throw new CancelException("Anulowano"); } } }