public ActionResult AddEditItem(Int32?ItemId)
        {
            var model = new AddEditItemViewModel();

            model.Fill(CargarDatosContext(), ItemId);
            return(View(model));
        }
Example #2
0
        protected async void OnEditItem(ItemRowViewModel item)
        {
            AddEditItemViewModel vm = new AddEditItemViewModel(KeyboardMode, item.Id, item.Type, true)
            {
                Name   = item.Name,
                Amount = item.Amount.ToString(CultureInfo.CurrentCulture),
            };

            AddEditItemDialog dialog = new AddEditItemDialog()
            {
                DataContext = vm,
            };

            await dialog.ShowAsync();

            switch (dialog.Result)
            {
            case AddEditItemDialogResult.Save:
                SaveItem(vm);
                break;

            case AddEditItemDialogResult.Delete:
                Delete(vm);
                break;

            default:
                break;
            }
        }
Example #3
0
        public AddEditItemDialog(KeyboardMode keyboardMode, string id, ItemType itemType, bool isEditing, string name, string amount)
            : base()
        {
            ViewModel = new AddEditItemViewModel(keyboardMode, id, itemType, isEditing)
            {
                Name   = name,
                Amount = amount,
            };

            Content = new AddEditItem()
            {
                BindingContext = ViewModel,
            };

            if (isEditing)
            {
                AddButton(new ContentDialogButton()
                {
                    Icon = Icons.TrashAltSolid, Color = Color.Red, Result = AddEditItemResult.Delete
                });
            }
            AddButton(new ContentDialogButton()
            {
                Icon = Icons.TimesCircleRegular, Color = Color.White, Result = AddEditItemResult.Cancel, IsBack = true,
            });
            AddButton(new ContentDialogButton()
            {
                Icon = Icons.CheckCircleRegular, Color = Color.Lime, Result = AddEditItemResult.Ok, CloseDialog = false
            });
        }
Example #4
0
 protected void Delete(AddEditItemViewModel viewModel)
 {
     Send(new RemoveItemInput()
     {
         ItemId = viewModel.Id,
         Type   = viewModel.ItemType,
     });
 }
Example #5
0
        protected override async void OnNewItem(ItemType itemType)
        {
            AddEditItemViewModel vm     = new AddEditItemViewModel(KeyboardMode, itemType, false);
            AddEditItemDialog    dialog = new AddEditItemDialog()
            {
                DataContext = vm,
            };

            await dialog.ShowAsync();

            switch (dialog.Result)
            {
            case AddEditItemDialogResult.Save:
                SaveItem(vm);
                break;

            default:
                break;
            }
        }
        public ActionResult AddEditItem(AddEditItemViewModel model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    model.Fill(CargarDatosContext(), model.ItemId);
                    TryUpdateModel(model);
                    PostMessage(MessageType.Error);
                    return(View(model));
                }

                Item item = null;

                if (model.ItemId.HasValue)
                {
                    item = context.Item.FirstOrDefault(x => x.ItemId == model.ItemId);
                }
                else
                {
                    item       = new Item();
                    item.State = ConstantHelpers.ESTADO.ACTIVO;
                    context.Item.Add(item);
                }

                item.Description = model.Description;

                context.SaveChanges();
                PostMessage(MessageType.Success);

                return(RedirectToAction("ListItem"));
            }
            catch (Exception ex)
            {
                PostMessage(MessageType.Error);
                model.Fill(CargarDatosContext(), model.ItemId);

                return(View(model));
            }
        }
Example #7
0
        protected void SaveItem(AddEditItemViewModel viewModel)
        {
            AddItemInput message = null;

            if (viewModel.IsEditing)
            {
                switch (viewModel.ItemType)
                {
                case ItemType.Guest:
                    message = new EditGuestInput();
                    break;

                case ItemType.Expense:
                    message = new EditExpenseInput();
                    break;
                }
                ((EditItemInput)message).ItemId = viewModel.Id;
            }
            else
            {
                switch (viewModel.ItemType)
                {
                case ItemType.Guest:
                    message = new AddGuestInput();
                    break;

                case ItemType.Expense:
                    message = new AddExpenseInput();
                    break;
                }
            }
            message.Name = viewModel.Name;

            message.Amount = viewModel.Amount;

            Send(message);
        }