/// <summary> /// obtiene todos los servicios que están asignados a un cliente. /// </summary> /// <param name="nombre"></param> /// <returns></returns> public static List <ServicioCliente> LeerTodosServiciosCliente(string Nombre) { // Lista una de tipo de clientes List <ServicioCliente> resultados = new List <ServicioCliente>(); //instanciamos la conexion Conexion conexion = new Conexion(@"(local)\sqlexpress", "GenisysATM_V2"); string sql = @"DECLARE @codigoCliente INT SET @codigoCliente =(SELECT id FROM ATM.Cliente WHERE nombres=@Cliente); SELECT sp.descripcion,sc.saldo FROM ATM.ServicioPublico AS sp INNER JOIN ATM.ServicioCliente AS sc ON sc.idServicio=sp.id and sc.idCliente=@codigoCliente; "; SqlCommand cmd = conexion.EjecutarComando(sql); try { using (cmd) { cmd.Parameters.Add("@Cliente", SqlDbType.NVarChar, 100).Value = Nombre; } // Establecer la conexión conexion.EstablecerConexion(); SqlDataReader rdr = cmd.ExecuteReader(); // Ejecutar el query via un ExecuteReader //Recorremos los elementos que se encuentra guardados // en la lista tipo cliente while (rdr.Read()) { ServicioCliente cli = new ServicioCliente(); // Asignar los valores de Reader al objeto Departamento cli.detalle = rdr.GetString(0); cli.saldo = rdr.GetDecimal(1); // Agregar el servicio a la List<servicio> resultados.Add(cli); } return(resultados); } catch (SqlException) { return(resultados); } finally { // Cerrar la conexión conexion.CerrarConexion(); } }
public static ServicioCliente LeerDatoServicio(string servicio, string cliente) { // Lista una de tipo de clientes ServicioCliente resultados = new ServicioCliente(); //instanciamos la conexion Conexion conexion = new Conexion(@"(local)\sqlexpress", "GenisysATM_V2"); string sql = @"DECLARE @codigoServicio INT DECLARE @codigoCliente INT SET @codigoCliente =(SELECT id FROM ATM.Cliente WHERE nombres=@Nombre); SET @codigoServicio =(SELECT id FROM ATM.ServicioPublico WHERE descripcion=@Servicio); SELECT sc.id,sc.saldo FROM ATM.ServicioCliente AS sc WHERE sc.idServicio=@codigoServicio and idCliente=@codigoCliente ;"; SqlCommand cmd = conexion.EjecutarComando(sql); try { using (cmd) { cmd.Parameters.Add("@Nombre", SqlDbType.NVarChar, 100).Value = cliente; cmd.Parameters.Add("@Servicio", SqlDbType.NVarChar, 100).Value = servicio; } // Establecer la conexión conexion.EstablecerConexion(); SqlDataReader rdr = cmd.ExecuteReader(); // Ejecutar el query via un ExecuteReader //Recorremos los elementos que se encuentra guardados // en la lista tipo cliente while (rdr.Read()) { // Asignar los valores de Reader al objeto Departamento resultados.id = rdr.GetInt32(0); resultados.saldo = rdr.GetDecimal(1); } return(resultados); } catch (SqlException) { return(resultados); } finally { // Cerrar la conexión conexion.CerrarConexion(); } }
/// <summary> /// actualiza y almacena los cambio realizados /// en un servicio de un cliente en específico. /// </summary> /// <param name="elCliente"></param> /// <param name="elServicio"></param> /// <param name="sc"></param> /// <returns></returns> public static bool ActualizarClienteServicio(string elCliente, string elServicio, ServicioCliente sc) { Conexion conn = new Conexion(@"(local)\sqlexpress", "GenisysATM_V2"); // enviamos y especificamos el comando a ejecutar SqlCommand cmd = conn.EjecutarComando("sp_ActualizarServicioCliente"); cmd.CommandType = CommandType.StoredProcedure; // agregamos los parámetros que son requeridos cmd.Parameters.Add(new SqlParameter("@cliente", SqlDbType.NVarChar, 100)); cmd.Parameters["@cliente"].Value = elCliente; cmd.Parameters.Add(new SqlParameter("@servicio", SqlDbType.NVarChar, 100)); cmd.Parameters["@servicio"].Value = elServicio; cmd.Parameters.Add(new SqlParameter("@saldo", SqlDbType.Decimal)); cmd.Parameters["@saldo"].Value = sc.saldo; // intentamos insertar al nuevo cliente try { // establecemos la conexión conn.EstablecerConexion(); // ejecutamos el comando cmd.ExecuteNonQuery(); return(true); } catch (SqlException ex) { MessageBox.Show(ex.Message + ex.StackTrace + "Detalles de la excepción"); return(false); } finally { conn.CerrarConexion(); } }