示例#1
0
        public async Task <IActionResult> Edit(ElementoViewModel model)
        {
            if (ModelState.IsValid)
            {
                try {
                    var elemento = await _converterHelper.ToElementoAsync(model, false);

                    elemento.ElementoID = model.ElementoID;

                    _dataContext.Elementos.Update(elemento);
                    await _dataContext.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ElementoExists(model.ElementoID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            model.Areas       = _combosHelper.GetComboAreas();
            model.Ubicaciones = _combosHelper.GetComboUbicaciones();
            model.Estados     = _combosHelper.GetComboEstadosElementos();
            model.Titulares   = _combosHelper.GetComboTitulares();

            return(View(model));
        }
示例#2
0
        public IActionResult Create(int?id)
        {
            var view = new ElementoViewModel
            {
                Areas       = _combosHelper.GetComboAreas(),
                Ubicaciones = _combosHelper.GetComboUbicaciones(),
                Estados     = _combosHelper.GetComboEstadosElementos(),
                Titulares   = _combosHelper.GetComboTitulares(),
                Marcas      = _combosHelper.GetComboMarcas(),
                Modelos     = _combosHelper.GetComboModelos(),
                Activo      = true
            };

            return(View(view));
        }
示例#3
0
        public async Task <IActionResult> Create(ElementoViewModel model)
        {
            if (ModelState.IsValid)
            {
                var elemento = await _converterHelper.ToElementoAsync(model, true);

                elemento.Activo = true;
                _dataContext.Elementos.Add(elemento);
                await _dataContext.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }

            return(View(model));
        }
示例#4
0
 public async Task <Elemento> ToElementoAsync(ElementoViewModel view, bool isNew)
 {
     return(new Elemento
     {
         ElementoID = isNew ? 0 : view.ElementoID,
         Descripcion = view.Descripcion,
         Marca = await _dataContext.Marcas.FindAsync(view.MarcaID),
         Modelo = await _dataContext.Modelos.FindAsync(view.ModeloID),
         NroSerie = view.NroSerie,
         FabricacionFecha = view.FabricacionFecha,
         CompraFecha = view.CompraFecha,
         VencimientoFecha = view.VencimientoFecha,
         Observaciones = view.Observaciones,
         Activo = true,
         BajaFecha = view.BajaFecha,
         Estado = view.Estado,
         Titular = view.Titular,
         Area = await _dataContext.Areas.FindAsync(view.AreaId),
         Ubicacion = await _dataContext.Ubicaciones.FindAsync(view.UbicacionId)
     });
 }
        public NuevoElemento()
        {
            InitializeComponent();

            ElementoViewModel = new ElementoViewModel
            {
                Descripcion    = "Nuevo Elemento",
                RutaIcono      = "BaggyLogo.jpg",
                Imprescindible = true,
                Vinculado      = true
            };

            BindingContext = this;


            // Este es el mensaje que llega cuando se elige una Imagen desde el pop-up.
            // Se reemplaza la ruta del icono de ElementoViewModel por la ruta del icono que se seleccionó
            // Después hago un InitializeComponent para refrescar la pagina con la nueva ruta.
            MessagingCenter.Subscribe <Popup, ImagenElementoViewModel>(this, "SeleccionarImagen", (obj, imagenelementoViewModel) =>
            {
                ElementoViewModel.RutaIcono = imagenelementoViewModel.RutaIcono;
                InitializeComponent();
            });
        }