예제 #1
0
        public ActionResult New()
        {
            var formModel = new CadenaFormModel();

            PopulateFormModelData(formModel, null);

            return(View(formModel));
        }
예제 #2
0
        public ActionResult Edit(Guid id)
        {
            var cadena    = _cadenaService.Get(id);
            var formModel = new CadenaFormModel();

            PopulateFormModelData(formModel, cadena);

            return(View(formModel));
        }
예제 #3
0
        public ActionResult New(CadenaFormModel formModel)
        {
            if (ModelState.IsValid)
            {
                var cadena = new Cadena
                {
                    Nombre         = formModel.Nombre,
                    Descripcion    = formModel.Descripcion,
                    FechaFundacion = formModel.FechaFundacion,
                    CreadoPor      = User.Identity.Name,
                    CreadoEn       = DateTime.Now,
                    ActualizadoPor = User.Identity.Name,
                    ActualizadoEn  = DateTime.Now,
                    Estado         = _statusService.Get(formModel.Estado),
                };

                if (formModel.Logo != null && formModel.Logo.ContentLength > 0)
                {
                    var imageUrl = _blobImageService.UploadImage(formModel.Logo, BlobContainers.General());
                    cadena.Logo = imageUrl;
                }

                if (formModel.Manual != null && formModel.Manual.ContentLength > 0)
                {
                    var manualUrl = _blobImageService.UploadImage(formModel.Manual, BlobContainers.General());
                    cadena.Manual = manualUrl;
                }


                var confirmation = _cadenaService.SaveOrUpdate(cadena);
                if (confirmation.WasSuccessful)
                {
                    this.AddPageMessage("Cadena creada con éxito", PageMessageType.Success, true);
                    return(RedirectToAction("index", "cadenas"));
                }
                else
                {
                    this.AddPageMessage(confirmation.Message, PageMessageType.Error, false);
                }
            }

            PopulateFormModelData(formModel, null);
            return(View(formModel));
        }
예제 #4
0
        private void PopulateFormModelData(CadenaFormModel formModel, Cadena cadena)
        {
            if (cadena != null)
            {
                formModel.Id             = cadena.Id;
                formModel.Nombre         = cadena.Nombre;
                formModel.Descripcion    = cadena.Descripcion;
                formModel.Estado         = cadena.Estado.Id;
                formModel.FechaFundacion = cadena.FechaFundacion;

                formModel.LogoUrl   = cadena.Logo;
                formModel.ManualUrl = cadena.Manual;
            }

            var estadoItems = new List <SelectListItem>();
            var estadoTypes = _statusService.GetItems(GrupoStatus.Global);

            foreach (var estadoType in estadoTypes)
            {
                var selectItem = new SelectListItem
                {
                    Text  = estadoType.Nombre,
                    Value = estadoType.Id.ToString()
                };

                if (estadoType.Id == formModel.Estado)
                {
                    selectItem.Selected = true;
                }

                estadoItems.Add(selectItem);
            }



            formModel.Estados = estadoItems;
        }