// <--- Método #5: Retornar mensajes de error en el formulario de registro de actividades. ---> //
        public string ctrlActLog(actividades activity) // Recibe como parámetro una variable del tipo "actividades".
        {
            Model model = new Model();                 // Objeto de la clase "Model".

            // Declaración de variable. Esta almacenará los mensajes de error que correspondan.
            string errorMessage = "";

            // <--- Validación #1: Llenar todos los campos de formulario de registro. ---> //
            // Condición que se activará sí y sólo sí alguno de los campos están vacíos.

            /*
             * ".IsNullOrEmpty() verifica que el campo esté vacío o sea "nulo". de ser así, la condición se cumple.
             */
            if (string.IsNullOrEmpty(activity.Name1) || string.IsNullOrEmpty(activity.Type1) || string.IsNullOrEmpty(Convert.ToString(activity.Start1)) ||
                string.IsNullOrEmpty(Convert.ToString(activity.End1)))
            {
                errorMessage = "Debe llenar todos los campos."; // Mensaje de error.
            }
            else
            {
                activity.Id_Username = Session.id; // A la propiedad "Id_Username" se le asignará el "Id" del usuario que tiene su sesión iniciada.

                /*
                 * Se llama al método "registro" de la clase "model" que se le enviará el objeto "usuario",
                 * ya que, ese objeto contiene todos los datos registrados por el usuario.
                 */
                model.newAct(activity);
            }

            return(errorMessage); // Retorno del mensaje de error.
        }
        // <---------------------------------------> //
        // <---------- BOTONES / BUTTONS ----------> //
        // <---------------------------------------> //

        // <--- Botón "btnAgregar". ---> //
        // Botón que permite agregar una actividad a la tabla.
        private void btnAgregarAct_Click(object sender, EventArgs e)
        {
            actividades activity = new actividades(); // Creación de un objeto de la clase "actividades".

            /*
             * Asiganción de los datos de los "textbox" del formulario de registro a las propiedades
             * del objeto "usuario".
             */
            activity.Name1  = txtName.Text;
            activity.Type1  = ComboBType.SelectedItem.ToString();
            activity.Start1 = Convert.ToDateTime(txtStart.Text);
            activity.End1   = Convert.ToDateTime(txtEnd.Text);

            try{
                Control control      = new Control();                // Creación de un objeto de la clase "Control".
                string  errorMessage = control.ctrlActLog(activity); // Llamada al método "ctrlRegistroAct", enviandole como parámetro el objeto "actividad".

                if (errorMessage.Length > 0)
                {
                    // "MessageBox" que se mostrará al usuario para avisar de algun error.
                    MessageBox.Show(errorMessage, "Aviso.", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
                else
                {
                    // "MessageBox" que se mostrará al usuario para confirmar su registro.
                    MessageBox.Show("¡Actividad registrada con éxito!", "Datos registrados.", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    Clean();              // Llamada al método para limpiar los textbox.
                    ReloadActTable(null); // Llamada al método que permite actualizar la tabla.
                }
            }
            // Catch que sólo se activará si el administrador presenta algún tipo de error al registrar un usuario.
            catch (Exception ex) {
                MessageBox.Show(ex.Message); // Mensaje de error.
            }
        }
Exemplo n.º 3
0
        // <--- Método #9: Asignación de las actividades registradas en la base de datos a una lista ---> //
        public List <object> ActQuery(string act)
        {
            // Este objeto permite leer todos los datos que se encuentren en la base de datos.
            MySqlDataReader reader;
            // Creación d eun objeto de la clase "Lista<Object>".
            List <object> List = new List <object>();
            // Variable para inserción a Sql.
            string sql;

            /*
             * La inserción a "MySQL" es la siguiente:
             * De la tabla "actividades" se seleccionan dichos campos, en donde el "id" sea igual al "id"
             * del usuario que tiene la sesión activa.
             */
            if (act == null)
            {
                sql = "SELECT id, Name, Type, Start, End, id_Username FROM actividades WHERE id_Username LIKE '" + Session.id + "'";
            }
            else
            {
                sql = "SELECT id, Name, Type, Start, End, id_Username FROM actividades WHERE id_Username LIKE '" + Session.id + "'";
            }

            try{
                MySqlConnection connection = SQLConnection.getConnection();
                connection.Open(); // Esta función permite abrir la conexión.

                // Se crea un objeto de la clase "MySqlCommand", enviandole como parámetros "sql" y "conexion".
                MySqlCommand command = new MySqlCommand(sql, connection);

                reader = command.ExecuteReader(); // ".ExecuteReader() es el método que permite realizar la lectura de datos.

                while (reader.Read())
                {
                    // Creación de un objeto de la clase "actividades".
                    actividades Activity = new actividades();

                    // Asignación de propiedades.
                    Activity.Id          = Convert.ToInt32(reader.GetString(0));
                    Activity.Name1       = reader[1].ToString();
                    Activity.Type1       = reader[2].ToString();
                    Activity.Start1      = Convert.ToDateTime(reader.GetString(3));
                    Activity.End1        = Convert.ToDateTime(reader.GetString(4));
                    Activity.Id_Username = Convert.ToInt32(reader.GetString(5));

                    List.Add(Activity); // Los datos que se leyeron se agregarán a la lista.
                }
            }
            // "catch" que sólo se activará si se presenta algún tipo de excepción de MySql.
            catch (MySqlException ex) {
                Console.WriteLine(ex.Message.ToString()); // Mensaje de error.
            }

            return(List); // Retorno de la lista.
        }
Exemplo n.º 4
0
        // <--- Método #5: Validación de datos y registro de actividades. ---> //
        public int newAct(actividades activity)  // Recibe como parámetro una variable del tipo "registro_usuarios".
        // Referencia a la clase de nombre "SQLConnection".
        {
            MySqlConnection conexion = SQLConnection.getConnection();

            conexion.Open(); // Esta función permite abrir la conexión.

            // Inserción a "SQL".

            /*
             * "INSERT INTO" se utiliza para "seleccionar" los campos de la tabla "actividades"
             * donde se insertarán los datos que registre el usuario.
             * "VALUES" son los valores que se van a registrar en la tabla de "MySql".
             */
            string sql = "INSERT INTO actividades (Name, Type, Start, End, id_Username) VALUES (@Name, @Type, @Start, @End, @id_Username)";

            // Se crea un objeto de la clase "MySqlCommand", enviandole como parámetros "sql" y "conexion".
            MySqlCommand command = new MySqlCommand(sql, conexion);

            /*
             * Se crean "comandos" que realizan la acción de enviar los datos que el ususario registre
             * a "MySql", permitiendo así, guardar su información.
             *
             * ".AddWithValue() recibe dos parámetros, el primero es el valor que recibirá el comando
             * (Valores con "@") y el segundo es el dato que el usuario haya ingresado (un dato de tipo "actividad"
             * con la propiedad de la clase "actividades").
             */
            command.Parameters.AddWithValue("@Name", activity.Name1);              // Comando para el campo "Name".
            command.Parameters.AddWithValue("@Type", activity.Type1);              // Comando para el campo "Type".
            command.Parameters.AddWithValue("@Start", activity.Start1);            // Comando para el campo "Start".
            command.Parameters.AddWithValue("@End", activity.End1);                // Comando para el campo "End".
            command.Parameters.AddWithValue("@id_Username", activity.Id_Username); // Comando para el campo "Id_Username".

            // Declaración de variables.
            int resultado = command.ExecuteNonQuery(); // Te devuelve el número de "filas" que se hayan insertado.

            return(resultado);                         // Retorno de valor.
        }