예제 #1
0
 public void Update(bool updateempty = false)
 {
     Orders = new ObservableCollection <OrderViewModel>();
     try
     {
         if (!updateempty)
         {
             foreach (var o in AutoServiceRequestsHelper.GetOrders())
             {
                 var order = new OrderViewModel(o);
                 Orders.Add(order);
             }
         }
     }
     catch (Exception e)
     {
         throw e;
     }
     finally
     {
         if (Orders.Count() > 0)
         {
             CurrentOrder = Orders.First();
         }
         else
         {
             CurrentOrder = null;
         }
     }
 }
예제 #2
0
        public void LoadSelectedOrders()
        {
            SaveChanges();
            AutoServiceRequestsHelper.UpdateSource(SourcesDict[CurrentSource]);
            if (IndexOrderViewModel is null)
            {
                try
                {
                    IndexOrderViewModel = new IndexOrderViewModel();
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.Message);
                    IndexOrderViewModel = new IndexOrderViewModel(true);
                }
            }
            else
            {
                try
                {
                    IndexOrderViewModel.Update();
                }
                catch (Exception e)
                {
                    MessageBox.Show(e.Message);
                    IndexOrderViewModel.Update(true);
                }
            }
            LoadedSource = CurrentSource;

            OnPropertyChanged(nameof(IndexOrderViewModel));
        }
예제 #3
0
 public void Delete()
 {
     try
     {
         AutoServiceRequestsHelper.DeleteOrder(order.ID);
     }
     catch (Exception e)
     {
         throw e;
     }
     NeedToSave = false;
 }
예제 #4
0
        public SourceManagerViewModel()
        {
            Sources = new List <string>();
            Sources.Add("CarServiceDB");
            Sources.Add("AutoServiceData.xml");
            Sources.Add("AutoServiceData.dat");
            SourcesDict             = new Dictionary <string, DataSourceType>();
            SourcesDict[Sources[0]] = DataSourceType.db;
            SourcesDict[Sources[1]] = DataSourceType.xml;
            SourcesDict[Sources[2]] = DataSourceType.dat;
            CurrentSource           = Sources[0];

            AutoServiceRequestsHelper.UpdateSource(SourcesDict[CurrentSource]);

            LoadSelectedSourceCommand = new LoadSelectedSourceCommand(this);
            WindowClosingCommand      = new RelayCommand(this.SaveChanges);
            OnPropertyChanged(nameof(IndexOrderViewModel));
        }
예제 #5
0
        public IndexOrderViewModel(bool createEmpty = false)
        {
            Orders = new ObservableCollection <OrderViewModel>();
            try
            {
                if (!createEmpty)
                {
                    foreach (var o in AutoServiceRequestsHelper.GetOrders())
                    {
                        var order = new OrderViewModel(o);
                        Orders.Add(order);
                    }
                }
            }
            catch (Exception e)
            {
                throw new Exception(e.Message);
            }
            finally
            {
                if (Orders.Count() > 0)
                {
                    CurrentOrder = Orders.First();
                }
                else
                {
                    CurrentOrder = null;
                }
                AddNewOrderCommand = new AddNewOrderCommand(this);
                DeleteOrderCommand = new DeleteOrderCommand(this);

                MouseDoubleClickCommand = new RelayCommand <object>(
                    item =>
                {
                    CurrentOrder.OpenOrderForm();
                });
            }
        }
예제 #6
0
 public void Save()
 {
     if (NeedToSave)
     {
         int id = carOwner.ID;
         try
         {
             AutoServiceRequestsHelper.AddCarOwner(carOwner);
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         if (id == 0)
         {
             var cos = AutoServiceRequestsHelper.GetCarOwners();
             var max = cos.Max(p => p.ID);
             carOwner = cos.First(p => p.ID == max);
             OnPropertyChanged(nameof(ID));
         }
         NeedToSave = false;
     }
 }
예제 #7
0
 public IndexCarOwnerViewModel(bool createEmpty = false)
 {
     CarOwners = new ObservableCollection <CarOwnerViewModel>();
     try
     {
         if (!createEmpty)
         {
             foreach (var co in AutoServiceRequestsHelper.GetCarOwners())
             {
                 var owner = new CarOwnerViewModel(co);
                 owner.PropertyChanged += Owner_PropertyChanged;
                 CarOwners.Add(owner);
             }
         }
     }
     catch (Exception e)
     {
         throw new Exception(e.Message);
     }
     finally
     {
         AddCarOwnerCommand = new AddCarOwnerCommand(this);
     }
 }
예제 #8
0
 public void Save()
 {
     if (NeedToSave)
     {
         var id = order.ID;
         try
         {
             AutoServiceRequestsHelper.AddOrder(order);
         }
         catch (Exception e)
         {
             throw new Exception(e.Message);
         }
         //чтобы получить правильный ID
         if (id == 0)
         {
             var cos = AutoServiceRequestsHelper.GetOrders();
             var max = cos.Max(p => p.ID);
             order = cos.First(p => p.ID == max);
             OnPropertyChanged(nameof(ID));
         }
         NeedToSave = false;
     }
 }