/// <summary> /// Agregar unidades del artículo en el inventario. Si no existe en la BBDD, retorna false. /// </summary> /// <param name="cantidad">Cantidad a añadir.</param> /// <returns></returns> public bool AgregarInventario(int cantidad) { int?id = this.Id; //Si el artículo no tiene id, no se le pueden agregar unidades. if (id == null) { return(false); } string query = "INSERT INTO c_articulos (fechaHora, idArticulo, cantidad) " + "VALUES( @FechaHora, @IdArticulo, @Cantidad )"; BDCon con = new BDCon(query); con.PasarParametros("FechaHora", DateTime.Now.ToString("dd/MM/yyyy HH:mm:ss")); con.PasarParametros("IdArticulo", id); con.PasarParametros("IdArticulo", cantidad); //Ejecuta el comando y verifica la cantidad de registros afectados if (con.EjecutarComando() > 0) { return(true); } //Si no hubo registros por alguna razón, arroja false return(false); }
/// <summary> /// Actualiza los datos de un artículo en los campos asociados al id. /// </summary> /// <param name="id">ID del artículo.</param> /// <param name="articulo">Instancia con datos a refrescar.</param> /// <returns></returns> public static void ActualizarDatosById(int id, Articulo articulo) { //Borrar artículo y precios de la BD string query = "DELETE FROM c_articulos WHERE id = @Id;" + "DELETE FROM c_articulos_precios WHERE idArticulo = @Id;"; BDCon con = new BDCon(query); con.PasarParametros("Id", id); con.EjecutarComando(); //Registrar de nuevo artículo de la BD, con el mismo id query = "INSERT INTO c_articulos (id,descripcion,precioDolar,costoDolar,codBarras,activo) " + "VALUES( @Id, @Descripcion, @PrecioDolar, @CostoDolar, @CodBarras, @Activo )"; con = new BDCon(query); con.PasarParametros("Id", id); con.PasarParametros("Descripcion", articulo.Descripcion); con.PasarParametros("PrecioDolar", articulo.PrecioDolar); con.PasarParametros("CostoDolar", articulo.CostoDolar); con.PasarParametros("CodBarras", articulo.CodBarras); con.PasarParametros("Activo", true); //Registrar el artículo con.EjecutarComando(); //Volver a registrar sus precios articulo.RegistraPreciosArticulo(); }
/// <summary> /// Registra el artículo y sus precios en la base de datos, con el estado de actividad indicado. /// </summary> /// <param name="articulo">Artículo a registrar.</param> /// <param name="activo">Activo o Inactivo.</param> /// <returns></returns> public bool RegistraDatosArticulo(bool activo) { //Si el artículo tiene id, es porque ya está registrado. if (this.Id != null) { return(true); } string query = "INSERT INTO c_articulos (descripcion,precioDolar,costoDolar,codBarras,activo) " + "VALUES( @Descripcion, @PrecioDolar, @CostoDolar, @CodBarras, @Activo )"; BDCon con = new BDCon(query); con.PasarParametros("Descripcion", this.Descripcion); con.PasarParametros("PrecioDolar", this.PrecioDolar); con.PasarParametros("CostoDolar", this.CostoDolar); con.PasarParametros("CodBarras", this.CodBarras); con.PasarParametros("Activo", activo); //Ejecuta el comando y verifica la cantidad de registros afectados if (con.EjecutarComando() > 0) { return(true); } //Si no hubo registros por alguna razón, arroja false return(false); }
/// <summary> /// Registrar instancia de moneda en la base de datos. /// </summary> /// <returns></returns> public bool RegistraTipoPago() { //Si ya existe, no la creo y retorno true. if (ValidaTipoPago()) { return(true); } string query = "INSERT INTO c_tipopagos (descripcion,idMoneda,aplicaDescuento) " + "VALUES( @Descripcion, @IdMoneda, @AplicaDescuento )"; BDCon con = new BDCon(query); con.PasarParametros("Descripcion", this.descripcion); con.PasarParametros("IdMoneda", this.moneda.Id); int aplicaDescuento = 0; if (this.aplicaDescuento == true) { aplicaDescuento = 1; } con.PasarParametros("AplicaDescuento", aplicaDescuento); //Ejecuta el comando y verifica la cantidad de registros afectados if (con.EjecutarComando() > 0) { return(true); } //Si no hubo registros por alguna razón, arroja false return(false); }
/// <summary> /// Registrar instancia de moneda en la base de datos. /// </summary> /// <returns></returns> public bool RegistraMoneda() { //Si ya existe, no la creo y retorno true. if (ValidaMoneda()) { return(true); } string query = "INSERT INTO c_monedas (descripcion,simbolo) " + "VALUES( @Descripcion, @Simbolo )"; BDCon con = new BDCon(query); con.PasarParametros("Descripcion", this.descripcion); con.PasarParametros("Simbolo", this.simbolo); //Ejecuta el comando y verifica la cantidad de registros afectados if (con.EjecutarComando() > 0) { return(true); } //Si no hubo registros por alguna razón, arroja false return(false); }
/// <summary> /// Registra la instancia en la base de datos. /// </summary> /// <returns>Verdadero si logra hacer el registro</returns> public bool RegistrarTasa() { string query = "INSERT INTO c_tasa (tasaDolar,porcentajeEfectivo,fecha,hora) " + "VALUES( @TasaDolar, @PorcentajeEfectivo, @Fecha, @Hora )"; BDCon con = new BDCon(query); con.PasarParametros("TasaDolar", tasaDolar); con.PasarParametros("PorcentajeEfectivo", porcentajeEfect); con.PasarParametros("Fecha", fecha); con.PasarParametros("Hora", hora); //Ejecuta el comando y verifica la cantidad de registros afectados if (con.EjecutarComando() > 0) { return(true); } //Si no hubo registros por alguna razón, arroja false return(false); }
/// <summary> /// Registra los precios asociados al artículo en la base de datos. /// </summary> /// <param name="articulo">Artículo con precios inicializados.</param> /// <returns></returns> public void RegistraPreciosArticulo() { //Si el artículo no tiene id, entonces no ha sido registrado. int?id = this.Id; if (id == null) { //Retorno, indicando que no se pueden registrar sus precios. return; } decimal[] preciosRedondos = this.PreciosRedondos.ToArray(); decimal[] preciosCalculados = this.PreciosCalculados.ToArray(); TipoPago[] tiposPago = this.TiposDePago.ToArray(); #region Variables auxiliares string query; BDCon con; #endregion for (int i = 0; i < preciosRedondos.Length; i++) { //Construyo el query query = "INSERT INTO c_articulos_precios (idArticulo,idTipoPago,precioCalculado,precioRedondo) " + "VALUES( @IdArticulo, @IdTipoPago, @PrecioCalculado, @PrecioRedondo )"; con = new BDCon(query); //Id del artículo con.PasarParametros("IdArticulo", id); //Id del tipo de pago de turno en el ciclo con.PasarParametros("IdTipoPago", tiposPago[i].Id); //Precios correspondientes que se asociaron al tipo de pago en cuestión con.PasarParametros("PrecioCalculado", preciosCalculados[i]); con.PasarParametros("PrecioRedondo", preciosRedondos[i]); //Ejecuto el comando con.EjecutarComando(); } }