Example #1
0
        /// <summary>
        /// Método para crear un nuevo grupo.
        /// </summary>
        public async void crearGrupo()
        {
            DialogService dialog = new DialogService();

            MetroDialogSettings settings = new MetroDialogSettings();

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

            // Validamos que se ingrese un nombre al grupo
            if (validar())
            {
                // Validamos que haya seleccionado más de 1 usuario para poder crear un grupo
                if (ListadeUsuarios.Where(a => a.IsSelected == true).ToList().Count > 1)
                {
                    MessageDialogResult result = await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgConfirmacion, settings, MessageDialogStyle.AffirmativeAndNegative);

                    if (result == MessageDialogResult.Affirmative)
                    {
                        // Primero se crea nuevo grupo
                        ID_GRUPO = DataManagerControlDocumentos.CrearNuevoGrupo(nombre, user.NombreUsuario);

                        foreach (var usuario in ListadeUsuarios)
                        {
                            // Se recorre la lista de usuarios y se insertan aquellos que están seleccionados
                            if (usuario.IsSelected)
                            {
                                DataManagerControlDocumentos.agregarintegrante(ID_GRUPO, usuario.usuario);
                            }
                        }

                        // Si el grupo existe
                        if (ID_GRUPO > 0)
                        {
                            await dialog.SendMessage(StringResources.ttlAlerta, StringResources.ttlDone);

                            //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
                        {
                            // Mensaje de error
                            await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgError);
                        }
                    }
                }
                else
                {
                    // Mensaje para seleccionar al menos 2 usuarios para crear grupo
                    await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgSelecciona2MasUsuarios);
                }
            }
            else
            {
                // Mensaje para dar nombre al grupo antes de crear
                await dialog.SendMessage(StringResources.ttlAlerta, StringResources.msgAsignaNombreGrupo);
            }
        }