/// <summary> /// Método que se encarga de obtener el porcentaje de uso de actual de cada laboratorio y registrar un uso de laboratorio /// </summary> /// /// <param name="lugar">Objeto Registro que indica los datos del registro</param> /// <returns>Lista de objetos que contiene sublistas con la información de uso de cada laboratorio /// (Laboratorio-Operador-Fecha última actualización-Cantidad de usuarios-Cantidad de portatiles-Porcentaje de uso</returns public List<List<object>> registrarPeul(Registro registro) { List<List<object>> resultado = new List<List<object>>(); List<object> nodo; SqlCommand insertar = new SqlCommand("SP_PEUL_IngresarRegistroUtilizacion", _conexion); insertar.CommandType = CommandType.StoredProcedure; SqlParameter[] parametros = new SqlParameter[6]; parametros[0] = new SqlParameter("@idLugar", SqlDbType.Int); parametros[0].Value = registro.IdLugar; parametros[1] = new SqlParameter("@idEstadoLaboratorio", SqlDbType.Int); parametros[1].Value = registro.IdEstadoLaboratorio; parametros[2] = new SqlParameter("@cantUsuarios", SqlDbType.Int); parametros[2].Value = registro.CantidadUsuarios; parametros[3] = new SqlParameter("@cantPortatiles", SqlDbType.Int); parametros[3].Value = registro.CantidadPortatiles; parametros[4] = new SqlParameter("@comentario", SqlDbType.NText); parametros[4].Value = registro.Comentario; parametros[5] = new SqlParameter("@login", SqlDbType.VarChar); parametros[5].Value = registro.Login; insertar.Parameters.AddRange(parametros); if (_conexion.State == ConnectionState.Closed) _conexion.Open(); try { SqlDataReader reader = insertar.ExecuteReader(); while (reader.Read()) { nodo = new List<object>(); nodo.Add(reader.GetString(0)); // Nombre del Laboratorio nodo.Add(reader.GetString(1)); // Operador nodo.Add(reader.GetDateTime(2)); // Fecha última actualización nodo.Add(reader.GetString(3)); // Comentario nodo.Add(reader.GetInt32(4)); // Cantidad de usuarios nodo.Add(reader.GetInt32(5)); // Cantidad de portatiles nodo.Add(reader.GetDecimal(6)); // Porcentaje de uso resultado.Add(nodo); } _conexion.Close(); } catch (Exception ex) { if (_conexion.State == ConnectionState.Open) _conexion.Close(); resultado = null; _BDCompartido = new ManejoBD(); _BDCompartido.insertarBitacoraError(ex.ToString(), ""); } return resultado; }
/// <summary> /// Método que se encarga de realizar el registro del uso de un laboratorio, y al mismo tiempo debuelve los datos para actualizar los datos en pantalla /// </summary> /// <param name="registro">Lista de objetos (datos del registro)</param> /// <returns>Retorna una lista de listas de objetos, en donde cada sublista contiene los datos para actualizar la grafica y el grid de la ventana de registro. /// Si ocurre algún problema retorna null</returns> public List<List<object>> registrarPeul(List<object> registro) { try { Registro registrar = new Registro(); registrar.IdLugar = Convert.ToInt32(registro[0]); registrar.IdEstadoLaboratorio = Convert.ToInt32(registro[1]); registrar.CantidadUsuarios = Convert.ToInt32(registro[2]); registrar.CantidadPortatiles = Convert.ToInt32(registro[3]); registrar.Comentario = registro[4].ToString(); registrar.Login = registro[5].ToString(); return _conexionPEULBD.registrarPeul(registrar); } catch (Exception ex) { _conexionBD.insertarBitacoraError(ex.ToString(), ""); return null; } }