Esempio n. 1
0
        private void SetPushpins()
        {
            StringBuilder senderBuilder      = new StringBuilder("http://dev.virtualearth.net/REST/v1/Locations?o=xml");
            StringBuilder receiverBuilder    = new StringBuilder("http://dev.virtualearth.net/REST/v1/Locations?o=xml");
            var           parcelAddViewModel = (ParcelAddViewModel)DataContext;

            senderBuilder.Append($"&countryRegion={parcelAddViewModel.SenderCountry}");
            senderBuilder.Append($"&locality={parcelAddViewModel.SenderCity}");
            senderBuilder.Append($"&postalCode={parcelAddViewModel.SenderPostalCode}");
            senderBuilder.Append($"&addressLine={parcelAddViewModel.SenderStreet} {parcelAddViewModel.SenderNumberOfHouse}");
            senderBuilder.Append($"&key={MAP_KEY}");
            From = PinIt(senderBuilder.ToString(), "Nadawca");
            receiverBuilder.Append($"&countryRegion={parcelAddViewModel.ReceiverCountry}");
            receiverBuilder.Append($"&locality={parcelAddViewModel.ReceiverCity}");
            receiverBuilder.Append($"&postalCode={parcelAddViewModel.ReceiverPostalCode}");
            receiverBuilder.Append($"&addressLine={parcelAddViewModel.ReceiverStreet} {parcelAddViewModel.ReceiverNumberOfHouse}");
            receiverBuilder.Append($"&key={MAP_KEY}");
            To = PinIt(receiverBuilder.ToString(), "Odbiorca");
            string uri = $"http://dev.virtualearth.net/REST/V1/Routes/Driving?wp.0=" +
                         $"{From.Latitude},{From.Longitude}&wp.1={To.Latitude},{To.Longitude}&rpo=Points&key={MAP_KEY}";
            var response = DriveRoute(uri);

            if (response != null)
            {
                Route(response);
                SetDistanceAndDuration();
            }
            else
            {
                InfoWindow info = new InfoWindow();
                info.ShowInfo("Nie można wyznaczyć trasy. Proszę spróbować jeszcze raz.", "Błąd wyznaczania trasy", "Ok");
                info.Close();
            }
        }
Esempio n. 2
0
        private void BtnChangeStatus_Click(object sender, RoutedEventArgs e)
        {
            var        parcelDetailsViewModel = (ParcelDetailsViewModel)DataContext;
            InfoWindow info = new InfoWindow();

            Parcel = CompanyEntities.Parcel
                     .Include(p => p.Status)
                     .Include(p => p.Region)
                     .Include(p => p.Region1)
                     .FirstOrDefault(p => p.id == parcelDetailsViewModel.Parcel.id);
            if (Parcel.idStatus >= parcelDetailsViewModel.StatusSelected.id)
            {
                info.ShowInfo("Wybrany status nie może być niższy niż aktualny", "", "Ok");
                info.Close();
                return;
            }
            HistoryOfParcel history = new HistoryOfParcel()
            {
                idParcel = Parcel.id,
                idStatus = Parcel.idStatus,
                date     = DateTime.Now
            };

            if (parcelDetailsViewModel.StatusSelected.id > (int)EnumParcelStatus.beetwen)
            {
                history.idWarehouse = Parcel.Region.idWarehouse;
            }
            else if (Parcel.Region1 != null)
            {
                history.idWarehouse = Parcel.Region1.idWarehouse;
            }
            else
            {
                history.idWarehouse = Properties.Settings.Default.Warehouse;
            }
            CompanyEntities.HistoryOfParcel.Add(history);
            Parcel.idStatus = parcelDetailsViewModel.StatusSelected.id;
            if (Parcel.idStatus == (int)EnumParcelStatus.delivered)
            {
                Parcel.dateOfDelivery = DateTime.Now;
            }
            CompanyEntities.SaveChanges();
            Counter = 0;
            AddDoc(Parcel);
            info.ShowInfo("Status został zmieniony pomyślnie", "", "Ok");
            info.Close();
        }
Esempio n. 3
0
        private void Btn_PutOut_Click(object sender, RoutedEventArgs e)
        {
            var addViewModel = (WarehouseAddViewModel)DataContext;
            var doc          = UpdateBuffer();
            var info         = new InfoWindow();

            if (doc == null)
            {
                info.ShowInfo($"Nie można wystawić dokumentu bez pozycji!", $"{documentType}", "Ok");
                info.Close();
                return;
            }
            doc = companyEntities.Document.FirstOrDefault(d => d.id == doc.id);
            double summary = 0.0;
            var    temp    = companyEntities.ParcelMoving.Include(p => p.Parcel).Where(p => documentType == EnumTypeOfDocument.PZ ? p.idDocPZ == doc.id : p.idDocWZ == doc.id).ToList();

            if (temp.Count == 0)
            {
                info.ShowInfo($"Nie można wystawić dokumentu bez pozycji!", $"{documentType}", "Ok");
                info.Close();
                return;
            }
            foreach (var d in temp)
            {
                changeStatus(d.idParcel);
                if (documentType == EnumTypeOfDocument.PZ)
                {
                    d.readingPZ = true;
                }
                else if (documentType == EnumTypeOfDocument.WZ)
                {
                    d.readingWZ = true;
                }
                summary += (double)d.Parcel.amount;
            }
            doc.summary    = (decimal)summary;
            doc.exposure   = true;
            doc.idEmployee = Properties.Settings.Default.IdUser;
            companyEntities.SaveChanges();

            info.ShowInfo($"Dokument {doc.code} został wystawiony pomyślnie!", $"{documentType}", "Ok");
            info.Close();
            Close();
        }
Esempio n. 4
0
        private void BtnChangePassSettings_Click(object sender, RoutedEventArgs e)
        {
            ChangePasswordWindow change = new ChangePasswordWindow();

            if (change.Answer)
            {
                InfoWindow info = new InfoWindow();
                info.ShowInfo("Hasło zmienione pomyślnie!", "Zmiana hasła", "Ok");
                info.Close();
            }
            change.ShowDialog();
            change.Close();
        }
Esempio n. 5
0
        private void Btn_Buffer_Click(object sender, RoutedEventArgs e)
        {
            var doc  = UpdateBuffer();
            var info = new InfoWindow();

            if (doc == null)
            {
                info.ShowInfo($"Nie można pozostawić w buforze dokumentu bez pozycji!", $"{documentType}", "Ok");
            }
            else
            {
                info.ShowInfo($"Dokument {doc.code} pozostawiony w buforze!", $"{documentType}", "Ok");
            }
            info.Close();
            Close();
        }
Esempio n. 6
0
        private void BtnDelete_Click(object sender, RoutedEventArgs e)
        {
            var addViewModel = (WarehouseAddViewModel)DataContext;
            var document     = addViewModel.Document;

            if (document == null)
            {
                return;
            }
            foreach (var parcel in companyEntities.ParcelMoving.Where(p => documentType == EnumTypeOfDocument.PZ ? p.idDocPZ == document.id : p.idDocWZ == document.id))
            {
                companyEntities.ParcelMoving.Remove(parcel);
            }
            companyEntities.Document.Remove(companyEntities.Document.FirstOrDefault(d => d.id == document.id));
            companyEntities.SaveChanges();
            var info = new InfoWindow();

            info.ShowInfo($"Dokument {document.code} został usunięty pomyślnie!", $"{documentType}", "Ok");
            info.Close();
            Close();
        }
        //private static void TccWindow_RecreateWindow(TccWindow obj)
        //{
        //    if (obj is CooldownWindow) CooldownWindow = new CooldownWindow();
        //    if (obj is GroupWindow) GroupWindow = new GroupWindow();
        //    if (obj is BossWindow) BossWindow = new BossWindow();
        //    if (obj is BuffWindow) BuffWindow = new BuffWindow();
        //    if (obj is CharacterWindow) CharacterWindow = new CharacterWindow();
        //    if (obj is ClassWindow) ClassWindow = new ClassWindow();
        //    if (obj is ChatWindow) ChatWindowManager.Instance.InitWindows();
        //}

        //public static void NotifyDimChanged()
        //{
        //    TccDimChanged?.Invoke(null, new PropertyChangedEventArgs(nameof(IsTccDim)));
        //}
        //public static void NotifyVisibilityChanged()
        //{
        //    TccVisibilityChanged?.Invoke(null, new PropertyChangedEventArgs(nameof(IsTccVisible)));
        //}
        //public static void RefreshDim()
        //{
        //    SkillsEnded = false;
        //    Task.Delay(100).ContinueWith(t => SkillsEnded = true);
        //}
        public static void Dispose()
        {
            FocusManager.Dispose();
            TrayIcon?.Dispose();


            foreach (Window w in Application.Current.Windows)
            {
                try { w.Close(); } catch { }
            }

            try { CharacterWindow.CloseWindowSafe(); } catch { }
            try { CooldownWindow.CloseWindowSafe(); } catch { }
            try { GroupWindow.CloseWindowSafe(); } catch { }
            try { BossWindow.CloseWindowSafe(); } catch { }
            try { BuffWindow.CloseWindowSafe(); } catch { }
            try { InfoWindow.Close(); } catch { }
            //try { ChatWindow.CloseWindowSafe(); } catch { }
            ChatWindowManager.Instance.CloseAllWindows();
            try { ClassWindow.CloseWindowSafe(); } catch { }
        }
Esempio n. 8
0
 internal static void Close()
 {
     _infoWindow?.Close();
 }
Esempio n. 9
0
        private bool CalculateCost()
        {
            var        parcelAddViewModel = (ParcelAddViewModel)DataContext;
            InfoWindow info = new InfoWindow();

            if (Lock || parcelAddViewModel.ParcelDistance == 0)
            {
                if (_noOfErrorsOnScreen == 0)
                {
                    info.ShowInfo("Nie można obliczyć kosztu dopóki nie zostanie wyznaczona trasa.\nCzy wyznaczyć trasę automatycznie" +
                                  " na podstawie adresów?", "Błąd wyliczenia kosztów", "Nie", "Tak");
                }
                else
                {
                    info.ShowInfo("Nie można obliczyć kosztu dopóki nie zostanie wyznaczona trasa." +
                                  "\nNie można wyznaczyć trasy dopóki nie zostaną wprowadzone wymagane dane", "Błąd wyliczenia kosztów", "Ok");
                    info.Close();
                    return(false);
                }
                if (info.Answer)
                {
                    SetPushpins();
                }
                else
                {
                    info.Close();
                    return(false);
                }
            }
            double dimensions = double.Parse(parcelAddViewModel.ParcelHeight) + double.Parse(parcelAddViewModel.ParcelLength) + double.Parse(parcelAddViewModel.ParcelWidth);

            dimensions *= 0.1;
            double distance = parcelAddViewModel.ParcelDistance * 0.01;
            double weight   = double.Parse(parcelAddViewModel.ParcelWeight) * 0.1;
            double worth    = double.Parse(parcelAddViewModel.ParcelWorth) * 0.001;

            int result = (int)(dimensions + distance + weight + worth);

            switch (parcelAddViewModel.ParcelTypeSelected.id)
            {
            case (int)EnumTypeOfParcel.StandardParcel:
                break;

            case (int)EnumTypeOfParcel.UnstandardParcel:
                result += (int)(result * 0.1);
                break;
            }

            var myTariff = companyEntities.Tariff.FirstOrDefault(t => result >= t.valueFrom && result <= t.valueTo);

            if (myTariff == null)
            {
                info.ShowInfo("Nie można obliczyć kosztu!", "Błąd wyliczenia kosztów", "Ok");
                info.Close();
                return(false);
            }
            parcelAddViewModel.MyTariff = myTariff;
            if (parcelAddViewModel.ParcelTypeSelected.id == (int)EnumTypeOfParcel.CashOnDelivery)
            {
                Worth.Text = (myTariff.cost + 10).ToString();
            }
            else
            {
                Worth.Text = myTariff.cost.ToString();
            }
            return(true);
        }
Esempio n. 10
0
        private async void SetManualPushpinsAsync()
        {
            Lock = true;
            InfoWindow info     = new InfoWindow();
            string     sender   = "Nadawca";
            string     receiver = "Odbiorca";

            if (From != null)
            {
                info.ShowInfo("Czy chcesz zmienić lokalizacje nadawcy?", "Zmiana lokalizacji", "Nie", "Tak");
                if (info.Answer)
                {
                    info.ShowInfo("Dodaj lokalizację nadawcy poprzez dwukrotne kliknięcie na mapie!", "Dodaj pinezkę", "Ok");
                    await ParcelMap.PinPushpinWhenClicked(true, sender);
                }
            }
            else
            {
                info.ShowInfo("Dodaj lokalizację nadawcy poprzez dwukrotne kliknięcie na mapie!", "Dodaj pinezkę", "Ok");
                await ParcelMap.PinPushpinWhenClicked(false, sender);
            }

            if (To != null)
            {
                info.ShowInfo("Czy chcesz zmienić lokalizacje odbiorcy?", "Zmiana lokalizacji", "Nie", "Tak");
                if (info.Answer)
                {
                    info.ShowInfo("Dodaj lokalizację odbiorcy poprzez dwukrotne kliknięcie na mapie!", "Dodaj pinezkę", "Ok");
                    await ParcelMap.PinPushpinWhenClicked(true, receiver);
                }
            }
            else
            {
                info.ShowInfo("Dodaj lokalizację odbiorcy poprzez dwukrotne kliknięcie na mapie!", "Dodaj pinezkę", "Ok");
                await ParcelMap.PinPushpinWhenClicked(false, receiver);
            }

            var pushpins = ParcelMap.GetPushpins();

            From = pushpins.FirstOrDefault(p => p.Content.Equals(sender)).Location;
            To   = pushpins.FirstOrDefault(p => p.Content.Equals(receiver)).Location;

            if (From == null || To == null)
            {
                info.ShowInfo("Ze względu na brak jednej z lokalizacji nie można wyznaczyć trasy.\nProszę powtórz procedurę dodawania pinezek.", "Błąd wyznaczania trasy", "Ok");
                info.Close();
                Lock = false;
                return;
            }
            string uri = $"http://dev.virtualearth.net/REST/V1/Routes/Driving?wp.0={From.Latitude},{From.Longitude}&wp.1={To.Latitude},{To.Longitude}&rpo=Points&key={MAP_KEY}";

            var response = DriveRoute(uri);

            if (response != null)
            {
                Route(response);
                SetDistanceAndDuration();
            }
            else
            {
                info.ShowInfo("Nie można wyznaczyć trasy. Proszę spróbować jeszcze raz.", "Błąd wyznaczania trasy", "Ok");
            }

            info.Close();
            Lock = false;
        }
Esempio n. 11
0
        private static int Start(string progName)
        {
            var trayIcon = new NotifyIcon {
                Icon = GUI.Properties.Resources.icon
            };
            var  progs = new ProgList();
            Prog prog;

            try
            {
                int progId = Int32.Parse(progName);
                prog = progs.Get(progId);
            }
            catch (FormatException)
            {
                prog = progs.Get(progName);
            }

            if (prog == null || !prog.IsOK() || (prog.DiskImage.Length > 0 && !prog.DiskImageOK()))
            {
                ShowError(String.Format(Localization.Strings.ProgNotFound, progName));
                return(-1);
            }

            var info = new InfoWindow(String.Format(Localization.Strings.ProgPreparing, prog.Name));

            info.Show();

            trayIcon.Text = String.Format(Localization.Strings.ProgWaitingEnd, prog.Name);

            VirtualDrive virtualDrive = null;

            if (prog.DiskImage.Length > 0)
            {
                if (!new MainWindow().findDT())
                {
                    return(-1);
                }

                var opts = new Options();
                if (!opts.Reload())
                {
                    ShowError(Localization.Strings.OptionsError);
                    return(-1);
                }
                virtualDrive = opts.VirtualDrive;

                if (!virtualDrive.IsValid)
                {
                    info.Close();
                    ShowError(Localization.Strings.InvalidDrive + " : " + virtualDrive);
                    return(-1);
                }

                info.Close();
                info = new InfoWindow(String.Format(Localization.Strings.DiskImageMounting, prog.DiskImage, prog.Name));
                info.Show();
                if (!prog.MountDiskImage(virtualDrive))
                {
                    ShowError(Localization.Strings.ErrorMounting);
                    return(-1);
                }
            }

            info.Close();
            info = new InfoWindow(String.Format(Localization.Strings.ProgStarting, prog.Name));
            info.Show();

            Process proc = prog.Start();

            trayIcon.Visible = true;
            info.Close();
            proc.WaitForExit();
            trayIcon.Visible = false;

            if (virtualDrive != null && virtualDrive.IsValid)
            {
                info = new InfoWindow(Localization.Strings.DiskImageUnmounting);
                info.Show();
                virtualDrive.Umount();
                info.Close();
            }
            return(0);
        }