Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using QuanLyKho.Model;
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Input;
- namespace QuanLyKho.ViewModel
- {
- class OutputViewModel:BaseViewModel
- {
- private ObservableCollection<OutputInfo> _List;
- public ObservableCollection<OutputInfo> List { get => _List; set { _List = value; OnPropertyChanged(); } }
- private ObservableCollection<Output> _Output;
- public ObservableCollection<Output> Output { get => _Output; set { _Output = value; OnPropertyChanged(); } }
- private ObservableCollection<Customer> _Customer;
- public ObservableCollection<Customer> Customer { get => _Customer; set { _Customer = value; OnPropertyChanged(); } }
- private ObservableCollection<InputInfo> _InputInfo;
- public ObservableCollection<InputInfo> InputInfo { get => _InputInfo; set { _InputInfo = value; OnPropertyChanged(); } }
- private ObservableCollection<Model.Object> _Object;
- public ObservableCollection<Model.Object> Object { get => _Object; set { _Object = value; OnPropertyChanged(); } }
- private OutputInfo _SelectedItem;
- public OutputInfo SelectedItem
- {
- get => _SelectedItem;
- set
- {
- _SelectedItem = value; OnPropertyChanged();
- if (SelectedItem != null)
- {
- SelectedObject = SelectedItem.Object;
- DateOutput = SelectedItem.Output.DateOutput;
- Count = SelectedItem.Count;
- SelectecInputInfo = SelectedItem.InputInfo;
- SelectedOutput = SelectedItem.Output;
- SelectecCustomer = SelectedItem.Customer;
- Status = SelectedItem.Status;
- }
- }
- }
- private Model.InputInfo _SelectecInputInfo;
- public Model.InputInfo SelectecInputInfo
- {
- get => _SelectecInputInfo;
- set
- {
- _SelectecInputInfo = value;
- OnPropertyChanged();
- }
- }
- private Model.Customer _SelectecCustomer;
- public Model.Customer SelectecCustomer
- {
- get => _SelectecCustomer;
- set
- {
- _SelectecCustomer = value;
- OnPropertyChanged();
- }
- }
- private Model.Object _SelectedObject;
- public Model.Object SelectedObject
- {
- get => _SelectedObject;
- set
- {
- _SelectedObject = value;
- OnPropertyChanged();
- }
- }
- private Model.Output _SelectedOutput;
- public Model.Output SelectedOutput
- {
- get => _SelectedOutput;
- set
- {
- _SelectedOutput = value;
- OnPropertyChanged();
- }
- }
- private int? _Count;
- public int? Count { get => _Count; set { _Count = value; OnPropertyChanged(); } }
- private string _Status;
- public string Status { get => _Status; set { _Status = value; OnPropertyChanged(); } }
- private DateTime? _DateOutput;
- public DateTime? DateOutput { get => _DateOutput; set { _DateOutput = value; OnPropertyChanged(); } }
- public ICommand AddCommand { get; set; }
- public ICommand EditCommand { get; set; }
- public ICommand DeleteCommand { get; set; }
- public OutputViewModel()
- {
- List = new ObservableCollection<OutputInfo>(DataProvider.Ins.db.OutputInfoes);
- Output = new ObservableCollection<Output>(DataProvider.Ins.db.Outputs);
- Object = new ObservableCollection<Model.Object>(DataProvider.Ins.db.Objects);
- InputInfo = new ObservableCollection<InputInfo>(DataProvider.Ins.db.InputInfoes);
- Customer = new ObservableCollection<Customer>(DataProvider.Ins.db.Customers);
- AddCommand = new RelayCommand<object>((p) =>
- {
- if (SelectedObject == null || SelectecCustomer == null)
- return false;
- return true;
- }, (p) =>
- {
- if (DateOutput != null)
- {
- var outputList = DataProvider.Ins.db.Outputs.Where(x => x.DateOutput == DateOutput);
- if (outputList != null && outputList.Count() != 0)
- {
- var OutputInfo = new OutputInfo() { Id = Guid.NewGuid().ToString() };
- DataProvider.Ins.db.OutputInfoes.Add(OutputInfo);
- DataProvider.Ins.db.SaveChanges();
- List.Add(OutputInfo);
- }
- else
- {
- var Outp = new Output() { Id = Guid.NewGuid().ToString(), DateOutput = DateOutput };
- DataProvider.Ins.db.Outputs.Add(Outp);
- DataProvider.Ins.db.SaveChanges();
- var OutputInfo = new OutputInfo() { Id = Guid.NewGuid().ToString() };
- DataProvider.Ins.db.OutputInfoes.Add(OutputInfo);
- DataProvider.Ins.db.SaveChanges();
- List.Add(OutputInfo);
- }
- }
- else
- {
- var Outp = new Output() { Id = Guid.NewGuid().ToString(), DateOutput = DateTime.Now };
- DataProvider.Ins.db.Outputs.Add(Outp);
- DataProvider.Ins.db.SaveChanges();
- var OutputInfo = new OutputInfo() { Id = Guid.NewGuid().ToString() };
- DataProvider.Ins.db.OutputInfoes.Add(OutputInfo);
- DataProvider.Ins.db.SaveChanges();
- List.Add(OutputInfo);
- }
- });
- EditCommand = new RelayCommand<object>((p) =>
- {
- if (SelectedItem == null || SelectedObject == null || DateOutput == null)
- return false;
- var displayList = DataProvider.Ins.db.OutputInfoes.Where(x => x.Id == SelectedItem.Id);
- if (displayList != null && displayList.Count() != 0)
- {
- return true;
- }
- return false;
- }, (p) =>
- {
- var outputList = DataProvider.Ins.db.Outputs.Where(x => x.DateOutput == DateOutput);
- if (outputList.Count() == 0)
- {
- var Outp = new Output() { Id = Guid.NewGuid().ToString(), DateOutput = DateOutput };
- DataProvider.Ins.db.Outputs.Add(Outp);
- DataProvider.Ins.db.SaveChanges();
- var OutputInfoes = DataProvider.Ins.db.OutputInfoes.Where(x => x.Id == SelectedItem.Id).SingleOrDefault();
- var Inputs = DataProvider.Ins.db.Outputs.Where(x => x.DateOutput == DateOutput).SingleOrDefault();
- DataProvider.Ins.db.SaveChanges();
- }
- else
- {
- var OutputInfoes = DataProvider.Ins.db.OutputInfoes.Where(x => x.Id == SelectedItem.Id).SingleOrDefault();
- var Outputs = DataProvider.Ins.db.Outputs.Where(x => x.DateOutput == DateOutput).SingleOrDefault();
- DataProvider.Ins.db.SaveChanges();
- }
- });
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement