예제 #1
0
        // metoda do sprawdzenia czy można sie zalogowac


        /// <summary>
        /// Metoda statyczna wczytująca bazę danych z pliku
        /// </summary>
        /// <returns>Zwraca bazę wczytaną z plików</returns>
        public static FirmLocalDataBase Initialize()
        {
            FirmLocalDataBase dataBase = (FirmLocalDataBase)BinarySerializerWithCipher.Deserialize <FirmLocalDataBase>("FrimsLocal.dat");

            if (dataBase == null)
            {
                return(new FirmLocalDataBase());
            }
            else
            {
                return(dataBase);
            }
        }
        /// <summary>
        /// Funkcja wykonująca próbę wysłania dla każdego zwolnienia w kolejce
        /// </summary>
        public void TrySending()
        {
            int numberToTry = toResend.Count;

            for (int i = 0; i < numberToTry; i++)
            {
                SickLeave toSend           = toResend.Dequeue();
                string    connectionString = FirmLocalDataBase.Initialize().FindFirmConnectionByNIP(toSend.Patient._NIP.ToString());

                bool outcome = SickLeaveSender.SendToSQLServer(toSend, connectionString);
                if (!outcome)
                {
                    toResend.Enqueue(toSend);
                }

                Reporter.RaportSickLeaveResending(outcome);
            }

            Save();
        }