public int Alterar(Fiado fiado) { try { int retorno = 0; InstanciarBanco(); decimal valor = _banco.Fiado.Find(fiado.ID).Valor; valor -= fiado.Valor; if (valor <= 0) { InstanciarBanco(); _banco.Entry(fiado).State = EntityState.Deleted; retorno = _banco.SaveChanges(); } else { fiado.Valor = valor; InstanciarBanco(); _banco.Entry(fiado).State = EntityState.Modified; retorno = _banco.SaveChanges(); } return(retorno); } catch (CustomException erro) { throw new CustomException(erro.Message); } catch (Exception erro) { throw new Exception(erro.Message); } }
public Fiado Read(decimal id_fiado) { Fiado fiado = null; using (da = new DataAccess.DataAccess()) { da.GenerarComando("select id_fiado, nro_boleta, rut_cliente, fecha_fiado, fecha_vencimiento, total_abonos, total_pago, esta_vencido from fiado where id_fiado = :id_fiado"); da.AgregarParametro(":id_fiado", id_fiado); IDataReader reader = da.ExecuteReader(); while (reader.Read()) { decimal nro_boleta = Convert.ToDecimal(reader["nro_boleta"].ToString()); string rut_cliente = reader["rut_cliente"].ToString(); fiado = new Fiado { IdFiado = Convert.ToDecimal(reader["id_fiado"].ToString()), FechaFiado = Convert.ToDateTime(reader["fecha_fiado"].ToString()), FechaVencimiento = Convert.ToDateTime(reader["fecha_vencimiento"].ToString()), Boleta = mantenedorBoletas.Read(Convert.ToDecimal(nro_boleta.ToString())), TotalAbonos = Convert.ToDecimal(reader["total_abonos"].ToString()), TotalPago = Convert.ToDecimal(reader["total_pago"].ToString()), Vencido = reader["esta_vencido"].ToString() == "y", ClienteFiado = mantenedorClientes.Read(rut_cliente), AbonosRealizados = ListarAbonos(id_fiado) }; } } return(fiado); }
public bool Create(Fiado fiado) { bool resFiado = false; using (da = new DataAccess.DataAccess()) { decimal total_abono = fiado.AbonosRealizados.Sum(x => x.MontoAbono); da.GenerarComando(@"insert into fiado (id_fiado, nro_boleta, rut_cliente, fecha_fiado, fecha_vencimiento, total_abonos, total_pago, esta_vencido) values (seq_id_fiado.nextval, :nro_boleta, :rut_cliente, :fecha_fiado, :fecha_vencimiento, :total_abono, :total_pago, :vencido) returning id_fiado into :nuevo_id"); da.AgregarParametro(":nro_boleta", fiado.Boleta.NroBoleta, DbType.Int32); da.AgregarParametro(":rut_cliente", fiado.ClienteFiado.RutCliente); da.AgregarParametro(":fecha_fiado", fiado.FechaFiado, DbType.Date); da.AgregarParametro(":fecha_vencimiento", fiado.FechaVencimiento, DbType.Date); da.AgregarParametro(":total_abono", total_abono, DbType.Int32); da.AgregarParametro(":total_pago", fiado.TotalPago, DbType.Int32); da.AgregarParametro(":vencido", fiado.Vencido ? "y" : "n"); da.AgregarParametroOut(":nuevo_id", DbType.Decimal); resFiado = da.ExecuteNonQuery() > 0; decimal nuevo_id = Convert.ToDecimal(da.GetValorParametro(":nuevo_id")); if (nuevo_id > 0 && fiado.AbonosRealizados.Count > 0) { foreach (Abono abono in fiado.AbonosRealizados) { Abonar(abono, nuevo_id); } } } return(resFiado); }
public decimal GetValorPeloIDDoCliente(int idCliente) { try { InstanciarBanco(); Fiado fiado = _banco.Fiado.FirstOrDefault(c => c.IDCliente == idCliente); return(fiado == null ? 0 : fiado.Valor); } catch (CustomException erro) { throw new CustomException(erro.Message); } catch (Exception erro) { throw new Exception(erro.Message); } }
public int Cadastrar(Fiado fiado) { try { int retorno = 0; InstanciarBanco(); _fiado = _banco.Fiado.FirstOrDefault(c => c.IDCliente == fiado.IDCliente); if (_fiado != null) { fiado.ID = _fiado.ID; InstanciarBanco(); fiado.Valor += _fiado.Valor; if (fiado.Valor <= 0) { _banco.Entry(fiado).State = EntityState.Deleted; retorno = _banco.SaveChanges(); } else { _banco.Entry(fiado).State = EntityState.Modified; retorno = _banco.SaveChanges(); } } else { _banco.Entry(fiado).State = EntityState.Added; retorno = _banco.SaveChanges(); } return(retorno); } catch (CustomException erro) { throw new CustomException(erro.Message); } catch (Exception erro) { throw new Exception(erro.Message); } }
private void dgvCliente_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { try { InstanciarlienteRepositorio(); if (_clienteRepositorio.GetQuantidade() > 0 && dgvCliente.Rows.Count > 0 && e.RowIndex >= 0) { if (GetIDDoGrid() > 0) { if (_enumCreditar == EnumTipoCreditar.Vender) { Cliente.ClienteIDStatic = GetIDDoGrid(); this.DialogResult = System.Windows.Forms.DialogResult.Yes; } else { InstanciarFiadoRepositorio(); Fiado fiado = _fiadoRepositorio.PesquisarFiadoPeloID(GetIDDoGrid()); if (OpenMdiForm.OpenForWithShowDialog(new frmReceberFiado(fiado)) == DialogResult.Yes) { _fiadoRepositorio.ListarCreditos(dgv: dgvCliente); } } } } } catch (CustomException erro) { DialogMessage.MessageFullComButtonOkIconeDeInformacao(erro.Message, "Aviso"); } catch (Exception erro) { DialogMessage.MessageComButtonOkIconeErro(erro.Message, "Erro"); } }
private void InstanciarFiado() { _fiado = new Fiado(); }
public frmReceberFiado(Fiado fiado) { _fiado = fiado; InitializeComponent(); }
public bool IngresarDeuda(Fiado fiado) { return(mantenedor.Create(fiado)); }
public List <ClienteFiados> ObtenerFiadosCliente() { String _connstring = "DATA SOURCE=localhost:1521/xe;USER ID=YUYOS;Password=cipres;"; // Traer todos los clientes List <Cliente> lista = ObtenerClientes(); // Crear lista del view-model Cliete + Todos fiados (ClienteFiados) // Almacena un cliente y una colección de fiados. List <ClienteFiados> listaClientesFiados = new List <ClienteFiados>(); try { foreach (var item in lista) { // Por cada cliente en la lista de clientes: // Crea un view-model ClienteFiados clifi = new ClienteFiados(); // al cliente del view-model le asigna el los parametros del item clifi.Cliente = new Cliente { Id = item.Id, Nombre = item.Nombre, Autorizado_fiado = item.Autorizado_fiado, Rut = item.Rut }; clifi.ListaFiados = new List <Fiado>(); // Abre conexión y trae todos los fiados con el procedure, pasandole el rut OracleConnection _connObj = new OracleConnection(_connstring); _connObj.Open(); OracleCommand _comObj = _connObj.CreateCommand(); _comObj.CommandText = "PKG_FIADO.SP_S_FIADOS_RUT"; _comObj.CommandType = System.Data.CommandType.StoredProcedure; OracleParameter _RutParam = new OracleParameter(); _RutParam.ParameterName = "rutCliente"; _RutParam.OracleDbType = OracleDbType.Varchar2; _RutParam.Direction = System.Data.ParameterDirection.Input; _RutParam.Value = item.Rut; _comObj.Parameters.Add(_RutParam); OracleParameter _RefParam = new OracleParameter(); _RefParam.ParameterName = "fiadoCur"; _RefParam.OracleDbType = OracleDbType.RefCursor; _RefParam.Direction = System.Data.ParameterDirection.Output; _comObj.Parameters.Add(_RefParam); OracleDataReader _rdrObj = _comObj.ExecuteReader(); // Si encontró el rut, va a buscar los elementos if (_rdrObj.HasRows) // Si el cursor devolvió elementos, lo fetchea, insertando en el view-model cada fiado que encuentra { while (_rdrObj.Read()) { Fiado f = new Fiado { IdFiado = (int)_rdrObj.GetDecimal(_rdrObj.GetOrdinal("ID_FIADO")), MontoSolicitado = (int)_rdrObj.GetDecimal(_rdrObj.GetOrdinal("MONTO_SOLICITADO")), MontoPagado = (int)_rdrObj.GetDecimal(_rdrObj.GetOrdinal("MONTO_PAGADO")), FechaCompra = _rdrObj.GetDateTime(_rdrObj.GetOrdinal("FECHA_COMPRA")), FechaPago = _rdrObj.GetDateTime(_rdrObj.GetOrdinal("FECHA_PAGO")), EstadoPago = _rdrObj.GetString(_rdrObj.GetOrdinal("ESTADO_PAGO")), IdBoleta = (int)_rdrObj.GetDecimal(_rdrObj.GetOrdinal("ID_BOLETA")), IdCliente = (int)_rdrObj.GetDecimal(_rdrObj.GetOrdinal("ID_CLIENTE")) }; if (!(f.EstadoPago.Equals("1"))) { clifi.ListaFiados.Add(f); } } } _connObj.Close(); _connObj.Dispose(); _connObj = null; // clifi es el view-model (por si no recuerdas de mas arriba), se lo pasamos a una lista de viewmodels que creamos al inicio. // El proceso se repetira por cada cliente que exista. listaClientesFiados.Add(clifi); } } catch (Exception ex) { throw new Exception(ex.Message); } // Si todo salió bien, deberíamos obtener un listado de view-model ClienteFiado // Esto puede parecer extraño pero, en la práctica, es un List de ClienteFiado, que es un Cliente + un List de fiados XDDDDD // Valió la pena estudiar MVC return(listaClientesFiados); }
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { switch (keyData) { case Keys.Escape: FecharForm(); break; case Keys.Up: dgvCliente.MoveToUp(); break; case Keys.Down: dgvCliente.MoveToDown(); break; case Keys.F1: break; case Keys.F2: break; case Keys.F3: break; case Keys.F4: break; case Keys.F5: break; case Keys.F6: break; case Keys.F7: break; case Keys.F8: break; case Keys.F9: break; case Keys.F10: break; case Keys.F11: break; case Keys.F12: break; case Keys.Enter: if (_enumCreditar == EnumTipoCreditar.Vender) { Cliente.ClienteIDStatic = Convert.ToInt32(dgvCliente.GetSelectRow(0, "ID")); this.DialogResult = System.Windows.Forms.DialogResult.Yes; } else { Fiado fiado = _fiadoRepositorio.PesquisarFiadoPeloID(Convert.ToInt32(dgvCliente.GetSelectRow(0, "ID"))); if (OpenMdiForm.OpenForWithShowDialog(new frmReceberFiado(fiado)) == DialogResult.Yes) { _fiadoRepositorio.ListarCreditos(dgv: dgvCliente); } } break; } return(base.ProcessCmdKey(ref msg, keyData)); }