示例#1
0
        public IActionResult Index(ElementViewModel model)
        {
            if (ModelState.IsValid)
            {
                _elementDataService.Add(new Element
                {
                    Name         = model.Name,
                    Description  = model.Description,
                    Price        = model.Price,
                    Type         = model.Type,
                    Symbol       = model.Symbol,
                    AtomicNumber = model.AtomicNumber
                });
                var succes = _elementDataService.Commit();
                _mailService.SendMessage("*****@*****.**", model.Name, $"Element added: {model.Description}");
                ViewBag.UserMessage = $"Mail sent for new element: {model.Name} with price: {model.Price} and decription: {model.Description}";
                ModelState.Clear();
            }

            IEnumerable <Element> _elements = GetElements();

            var viewModel = new ElementsViewModel()
            {
                Elements = _elements
            };


            return(View(viewModel));
        }
 private void FillElements()
 {
     ElementsViewModel.Clear();
     for (int i = 0; i < _splitter.Elements.Count; i++)
     {
         ElementsViewModel.Add(new SplitterElementViewModel(_splitter.Elements[i]));
     }
 }
示例#3
0
        public IActionResult Index(bool heavierThanOxygen)
        {
            IEnumerable <Element> _elements = GetElements().OrderBy(e => e.AtomicNumber);


            var viewModel = new ElementsViewModel()
            {
                Elements = _elements
            };

            return(View(viewModel));
        }
        public MainWindow()
        {
            InitializeComponent();

            Services.ElementsTreeView = ElementsTreeView;

            _viewModel          = new ElementsViewModel();
            _viewModel.Elements = new ObservableCollection <WebElementViewModel>();

            DataContext = _viewModel;

            LoadInfos();
        }
示例#5
0
		public PlansViewModel()
		{
			ServiceFactory.Events.GetEvent<FindElementEvent>().Subscribe(OnShowElementDevice);

			AddCommand = new RelayCommand(OnAdd);
			AddSubPlanCommand = new RelayCommand(OnAddSubPlan, CanAddEditRemove);
			RemoveCommand = new RelayCommand(OnRemove, CanAddEditRemove);
			EditCommand = new RelayCommand(OnEdit, CanAddEditRemove);
			AddSubPlanCommand = new RelayCommand(OnAddSubPlan, CanAddEditRemove);
			AddFolderCommand = new RelayCommand(OnAddFolder);
			AddSubFolderCommand = new RelayCommand(OnAddSubFolder, CanAddEditRemove);

			LayerGroupService.Instance.RegisterGroup(Helper.SubPlanAlias, "Ссылки на планы");
			ServiceFactory.Events.GetEvent<DesignerItemFactoryEvent>().Subscribe((e) =>
			{
				if (e.Element is ElementSubPlan)
				{
					e.DesignerItem = new DesignerItemSubPlan(e.Element);
					e.DesignerItem.IconSource = "/Controls;component/Images/CMap.png";
				}
			});

			PlanDesignerViewModel = new PlanDesignerViewModel(this);
			PlanDesignerViewModel.IsCollapsedChanged += new EventHandler(PlanDesignerViewModel_IsCollapsedChanged);
			OnPropertyChanged(() => PlanDesignerViewModel);
			PlanDesignerViewModel.DesignerCanvas.ZoomChanged();
			ElementsViewModel = new ElementsViewModel(PlanDesignerViewModel.DesignerCanvas);

			InitializeCopyPaste();
			PlansTreeViewModel = new PlansTreeViewModel(this);
			CreatePages();
			_planExtensions = new List<Infrustructure.Plans.IPlanExtension<Plan>>();
			Menu = new PlansMenuViewModel(this);
			_splitterDistance = RegistrySettingsHelper.GetDouble("Administrator.Plans.SplitterDistance");
			if (_splitterDistance == 0)
				_splitterDistance = 300;
			_emptyGridColumn = new GridLength(0, GridUnitType.Pixel);
			Width1 = new GridLength(1, GridUnitType.Star);
			Width2 = GridLength.Auto;
			Width3 = new GridLength(_splitterDistance, GridUnitType.Pixel);
			var layerDistance = RegistrySettingsHelper.GetDouble("Administrator.Plans.LayerDistance");
			LayersHeight = new GridLength(layerDistance == 0 ? 500 : layerDistance, GridUnitType.Pixel);
			ApplicationService.ShuttingDown += () =>
			{
				RegistrySettingsHelper.SetDouble("Administrator.Plans.SplitterDistance", Width3 == _emptyGridColumn ? _splitterDistance : Width3.Value);
				RegistrySettingsHelper.SetDouble("Administrator.Plans.LayerDistance", LayersHeight.Value);
			};
		}
示例#6
0
        public IActionResult Reset()
        {
            _elementDataService.Truncate();
            _elementDataService.Commit();
            _elementSeeder.SeedAsync().Wait();

            IEnumerable <Element> _elements = GetElements().OrderBy(e => e.AtomicNumber);


            var viewModel = new ElementsViewModel()
            {
                Elements = _elements
            };

            return(View("Index", viewModel));
        }
示例#7
0
        public IActionResult Search(ElementsViewModel elementsViewModel, string text)
        {
            List <Book> books = new List <Book>();

            if (text == null)
            {
                return(View(books));
            }
            switch (elementsViewModel.Element.ToString())
            {
            case ("Name"):
            {
                books.AddRange(repositiryXML.Books().Where(x => x.Name == text));

                break;
            }

            case ("Author"):
            {
                books.AddRange(repositiryXML.Books().Where(x => x.Authors.Author == text.Trim()));
                break;
            }

            case ("ISBN"):
            {
                int ISBM;
                if (int.TryParse(text.Trim(), out ISBM))
                {
                    books.AddRange(repositiryXML.Books().Where(x => x.ISBN == ISBM));
                }

                break;
            }

            case ("Price"):
            {
                int Price;
                if (int.TryParse(text.Trim(), out Price))
                {
                    books.AddRange(repositiryXML.Books().Where(x => x.Price == Price));
                }
                break;
            }

            case ("Description"):
            {
                books.AddRange(repositiryXML.Books().Where(x => x.Description == text.Trim()));
                break;
            }

            case ("Page"):
            {
                int Page;
                if (int.TryParse(text.Trim(), out Page))
                {
                    books.AddRange(repositiryXML.Books().Where(x => x.Number_Page == Page));
                }
                break;
            }

            case ("Year"):
            {
                int Year;
                if (int.TryParse(text.Trim(), out Year))
                {
                    books.AddRange(repositiryXML.Books().Where(x => x.Year == Year));
                }
                break;
            }

            case ("Publication"):
            {
                books.AddRange(repositiryXML.Books().Where(x => x.Publication == text.Trim()));
                break;
            }

            case ("Language"):
            {
                books.AddRange(repositiryXML.Books().Where(x => x.Language == text.Trim()));
                break;
            }

            default:
                break;
            }

            return(View(books));
        }