public Boolean GenerarCompra(EntitieCompra compra) { int idTransaccion = ControllerTransacciones.Instance.NuevaTransaccion( new EntitieTransaccion( compra.GetIdCuenta(), ControllerTipoTransacciones.Instance.GetTipoTransaccionByNombre("EGRESO").GetIdTipoTransaccion(), -compra.GetTotal())); String nombreCuenta = ControllerCuentas.Instance.GetCuentaById(compra.GetIdCuenta()).GetNombre(); ManagerDatabase.Instance.Execute("INSERT INTO Compras(ID_Transaccion, ID_Cuenta, Cuenta, Total, Fecha_Hora) " + "VALUES(" + idTransaccion + ", " + compra.GetIdCuenta() + ", " + "'" + nombreCuenta + "', " + compra.GetTotal().ToString().Replace(",", ".") + ", " + "'" + compra.GetFechaHora().ToShortDateString() + "')"); int idCompra = Convert.ToInt32(ManagerDatabase.Instance.ExecuteQuery("SELECT MAX(ID_Compra) from Compras").Rows[0][0]); for (int i = 0; i < compra.GetItems().Count; i++) { compra.GetItems()[i].SetIdCompra(idCompra); } GenerarItems(compra.GetItems()); return(true); }
public EntitieCompra GetCompraById(int idCompra) { EntitieCompra compra = null; DataTable dt = ManagerDatabase.Instance.ExecuteQuery("SELECT * FROM Compras WHERE ID_Compra = " + idCompra); if (dt.Rows.Count > 0) { for (int i = 0; i < dt.Rows.Count; i++) { String query = "SELECT * FROM Compra_Items WHERE ID_Compra = " + Convert.ToInt32(dt.Rows[i][0]); DataTable subDt = ManagerDatabase.Instance.ExecuteQuery(query); List <EntitieCompraItem> items = new List <EntitieCompraItem>(); for (int j = 0; j < subDt.Rows.Count; j++) { items.Add(new EntitieCompraItem( Convert.ToInt32(subDt.Rows[j][0]), Convert.ToInt32(subDt.Rows[j][1]), Convert.ToInt32(subDt.Rows[j][2]), subDt.Rows[j][3].ToString(), Convert.ToInt32(subDt.Rows[j][4]), Convert.ToDecimal(subDt.Rows[j][5]))); } compra = new EntitieCompra( Convert.ToInt32(dt.Rows[i][0]), Convert.ToInt32(dt.Rows[i][1]), Convert.ToInt32(dt.Rows[i][2]), dt.Rows[i][3].ToString(), Convert.ToDecimal(dt.Rows[i][4]), Convert.ToDateTime(dt.Rows[i][5]), items); } } return(compra); }
// |==============================METODOS Y FUNCIONES==============================| // |------------------------------COMPRAS------------------------------| public List <EntitieCompra> GetCompras(int idCompra, DateTime desde, DateTime hasta) { List <EntitieCompra> compras = new List <EntitieCompra>(); String query = "SELECT * FROM Compras "; Boolean whereAdded = false; if (idCompra > 0) { query += "WHERE ID_Compra = " + idCompra + " "; whereAdded = true; } if (desde != null) { if (whereAdded) { query += "AND Fecha_Hora >= '" + desde.ToShortDateString() + "' "; } else { query += "WHERE Fecha_Hora >= '" + desde.ToShortDateString() + "' "; whereAdded = true; } } if (hasta != null) { if (whereAdded) { query += "AND Fecha_Hora <= '" + hasta.ToShortDateString() + "' "; } else { query += "WHERE Fecha_Hora <= '" + hasta.ToShortDateString() + "' "; whereAdded = true; } } DataTable dt = ManagerDatabase.Instance.ExecuteQuery(query); for (int i = 0; i < dt.Rows.Count; i++) { query = "SELECT * FROM Compra_Items WHERE ID_Compra = " + Convert.ToInt32(dt.Rows[i][0]); DataTable subDt = ManagerDatabase.Instance.ExecuteQuery(query); List <EntitieCompraItem> items = new List <EntitieCompraItem>(); for (int j = 0; j < subDt.Rows.Count; j++) { items.Add(new EntitieCompraItem( Convert.ToInt32(subDt.Rows[j][0]), Convert.ToInt32(subDt.Rows[j][1]), Convert.ToInt32(subDt.Rows[j][2]), subDt.Rows[j][3].ToString(), Convert.ToInt32(subDt.Rows[j][4]), Convert.ToDecimal(subDt.Rows[j][5]))); } EntitieCompra compra = new EntitieCompra( Convert.ToInt32(dt.Rows[i][0]), Convert.ToInt32(dt.Rows[i][1]), Convert.ToInt32(dt.Rows[i][2]), dt.Rows[i][3].ToString(), Convert.ToDecimal(dt.Rows[i][4].ToString()), Convert.ToDateTime(dt.Rows[i][5]), items); compras.Add(compra); } return(compras); }