/// <summary>
        /// Método que guarda un registro en la tabla de validaciones
        /// </summary>
        private async void guardarValidacion()
        {
            //Declaramos un objeto de tipo MetroDialogSettings al cual le asignamos las propiedades que contendra el mensaje modal.
            MetroDialogSettings setting = new MetroDialogSettings();

            setting.AffirmativeButtonText = StringResources.lblYes;
            setting.NegativeButtonText    = StringResources.lblNo;

            //Ejecutamos el método para mostrar el mensaje. El resultado lo asignamos a una variable local.
            MessageDialogResult result = await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgConfirmacion, setting, MessageDialogStyle.AffirmativeAndNegative);

            //Si el resultado es afirmativo
            if (result == MessageDialogResult.Affirmative)
            {
                //Si no están vacíos los campos
                if (!string.IsNullOrEmpty(_descripcion) && !string.IsNullOrEmpty(_validacion))
                {
                    ValidacionDocumento obj = new ValidacionDocumento();

                    //Asiganmos los valores al objeto
                    obj.validacion_descripcion = _descripcion.ToUpper();
                    obj.validacion_documento   = _validacion.ToUpper();
                    obj.fecha_creacion         = DataManagerControlDocumentos.Get_DateTime();

                    //Verificamos que no se repita la validación de documento
                    int idV = DataManagerControlDocumentos.GetIDValidacion(_validacion);

                    //Si la validación no existe
                    if (idV == 0)
                    {
                        //Ejecutamos el métoodo para guardar el registro
                        int validacion = DataManagerControlDocumentos.SetValidacion(obj);

                        //Si se guardo correctamente el registro
                        if (validacion != 0)
                        {
                            //Ejecutamos el método para enviar un mensaje de confirmación al usuario.
                            await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgCambiosRealizados);

                            //Obtenemos la pantalla actual, y casteamos para que se tome como tipo MetroWindow.
                            var window = Application.Current.Windows.OfType <MetroWindow>().LastOrDefault();

                            //Verificamos que la pantalla sea diferente de nulo.
                            if (window != null)
                            {
                                //Cerramos la pantalla
                                window.Close();
                            }
                        }
                        else
                        {
                            //Muestra mensaje de error
                            await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgErrorRegistrarValidacion);
                        }
                    }
                    else
                    {
                        await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgValidacionExistente);
                    }
                }
                else
                {
                    await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgFillFlields);
                }
            }
        }
Exemple #2
0
        public async Task <IActionResult> Editar(PerfilUsuario model, IFormFile imagen)
        {
            var    size    = 3145728;
            var    rutaImg = _config.GetSection("rutas").GetSection("usuario").Value;
            string ext     = imagen != null?Path.GetExtension(imagen.FileName) : "";

            // Validar imagen
            var resp = ValidacionDocumento.Validar(imagen, size, ext, string.IsNullOrEmpty(model.EditarUsuarioModel.Imagen));

            if (resp > 1)
            {
                //ViewBag.tipo = new SelectList(_tipo.Tipos, "TipoProductoId", "Nombre", model.TipoProductoId);

                EnviarMensaje.Enviar(TempData, "red", resp);

                return(View("PerfilUsuario", model));
            }


            if (TryValidateModel(model.EditarUsuarioModel))
            {
                var usuarioCreado = _usuario.GetUsuarioById(model.EditarUsuarioModel.Id);

                PropertiesParser <EditarUsuarioModel, Usuario>
                .CopyPropertiesTo <EditarUsuarioModel, Usuario>(model.EditarUsuarioModel, usuarioCreado);

                var name = usuarioCreado.Id + "-" + Guid.NewGuid() + ext;

                if (imagen != null)
                {
                    usuarioCreado.Imagen = name;
                }

                var result = await _userManager.UpdateAsync(usuarioCreado);

                var roles = await _userManager.GetRolesAsync(usuarioCreado);

                if (!string.IsNullOrEmpty(model.EditarUsuarioModel.Role))
                {
                    if (!roles.Contains(model.EditarUsuarioModel.Role))
                    {
                        await _userManager.AddToRoleAsync(usuarioCreado, model.EditarUsuarioModel.Role);
                    }
                }

                if (usuarioCreado.Imagen != null)
                {
                    if (result.Succeeded)
                    {
                        await ValidacionDocumento.GuardarDocumentoAsync(imagen, rutaImg, name);
                    }

                    EnviarMensaje.Enviar(TempData, "green", 3);



                    return(RedirectToAction("Home", "Home", new { area = "" }));
                }
                else
                {
                    if (result.Succeeded)
                    {
                        await ValidacionDocumento.GuardarDocumentoAsync(imagen, rutaImg, name);
                    }

                    EnviarMensaje.Enviar(TempData, "green", 3);



                    return(RedirectToAction("Home", "Home", new { area = "" }));
                }
            }


            return(RedirectToAction("PerfilUsuario", new { id = model.EditarUsuarioModel.Id }));
        }
Exemple #3
0
        /// <summary>
        /// Método que guarda la relación de validación y tipo de documento
        /// </summary>
        private async void guardarRelacion()
        {
            //Variable auxiliar que llevar el conteo de los registros guardados
            int cont = 0;

            //Declaramos un objeto de tipo MetroDialogSettings al cual le asignamos las propiedades que contendra el mensaje modal.
            MetroDialogSettings setting = new MetroDialogSettings();

            setting.AffirmativeButtonText = StringResources.lblYes;
            setting.NegativeButtonText    = StringResources.lblNo;

            //Ejecutamos el método para mostrar el mensaje. El resultado lo asignamos a una variable local.
            MessageDialogResult result = await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgConfirmacion, setting, MessageDialogStyle.AffirmativeAndNegative);

            if (result == MessageDialogResult.Affirmative)
            {
                //Si se escogió tipo de documento
                if (_SelectedTipoDocumento != null)
                {
                    //Valída que se haya seleccionado por lo menos un objeto
                    if (ValidaSelected())
                    {
                        //Iteramos la lista
                        foreach (var item in ListaValidaciones)
                        {
                            //Si se seleccionó el objeto
                            if (item.selected)
                            {
                                //Buscamos si existe la relación
                                int val = DataManagerControlDocumentos.SearchValidacion(item.id_validacion, _SelectedTipoDocumento.id_tipo);

                                //Si no existe la relación
                                if (val == 0)
                                {
                                    ValidacionDocumento obj = new ValidacionDocumento();

                                    //Asiganmos los valores al objeto
                                    obj.id_validacion = item.id_validacion;
                                    obj.id_tipo       = _SelectedTipoDocumento.id_tipo;

                                    //Guardamos la relación
                                    int id_vDocumento = DataManagerControlDocumentos.SetRelacion(obj);

                                    //Si se guardó correctamente
                                    if (id_vDocumento != 0)
                                    {
                                        //agregamos uno al contador
                                        cont++;
                                    }
                                }
                            }
                        }

                        //Si se guardó la relación
                        if (cont == 0)
                        {
                            //Inicializa la lista de validacion y de relación
                            InitComp(_SelectedTipoDocumento.id_tipo);
                        }
                    }
                    else
                    {
                        //Muestra mensaje de error
                        await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgValidacion);
                    }
                }
                else
                {
                    await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgTipoDocumento);
                }
            }
        }