private void EnajenarPrenda(object sender, RoutedEventArgs e) { if (dgPrestamos.SelectedItem == null) { MessageBox.Show("No ha elegido una prenda."); return; } if (MessageBox.Show("¿Desea enajenar la prenda?", "ATENCIÓN", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { cPrenda pren = new cPrenda(); cPrestamo pres = new cPrestamo(); pres = (cPrestamo)dgPrestamos.SelectedItem; pren = cPrenda.ObtenerPrendaIdPrestamo(pres.IdPrestamo); cPrenda.EnajenarPrenda(pren.IdPrenda); int dias = 0; if (int.TryParse(tbDiasVencimiento.Text, out dias)) { prestamos = cPrestamo.ObtenerPrestamos("ACTIVO", tbDiasVencimiento.Text); dgPrestamos.ItemsSource = null; dgPrestamos.ItemsSource = prestamos; articulos = cPrenda.ObtenerPrendasVenta("%"); dgInventario.ItemsSource = null; dgInventario.ItemsSource = articulos; } } }
public VerificarEliminacion(MainWindow p, cPrestamo pre) { InitializeComponent(); prestamo = pre; parent = p; tbNumero.Text = "Número de préstamo: " + prestamo.Contrato; }
private void Refrendar(object sender, RoutedEventArgs e) { if (dgPrestamos.SelectedItem != null) { cPrenda pren = new cPrenda(); cPrestamo pres = new cPrestamo(); cCliente cli = new cCliente(); pres = (cPrestamo)dgPrestamos.SelectedItem; pren = cPrenda.ObtenerPrendaIdPrestamo(pres.IdPrestamo); cli = cCliente.ObtenerClienteIdPrestamo(pres.IdPrestamo); Refrendo refrendo = new Refrendo(pres, pren, cli, this); refrendo.ShowDialog(); } }
public Refrendo(cPrestamo pre, cPrenda p, cCliente c, MainWindow pa) { InitializeComponent(); prestamo = pre; prenda = p; pagos = new ObservableCollection <cPago>(); cliente = c; tbNombreCliente.Text = c.NombreCompleto; tbTotalPrestamo.Text = "$ " + prenda.Prestamo; parent = pa; tbFecha.Text = prestamo.FechaPrestamo; dtpFechaRefrendo.SelectedDate = DateTime.Now; }
private void DgPrestamos_KeyUp(object sender, KeyEventArgs e) { if (e.Key == Key.Delete) { if (dgPrestamos.SelectedItem != null) { if (MessageBox.Show("¿Desea eliminar el préstamo por completo?", "ATENCIÓN", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { cPrestamo p = new cPrestamo(); p = (cPrestamo)dgPrestamos.SelectedItem; VerificarEliminacion eliminar = new VerificarEliminacion(this, p); eliminar.ShowDialog(); } } } }
private async void Button_Click_1Async(object sender, RoutedEventArgs e) { try { if (MessageBox.Show("¿Desea guardar el préstamo?", "Atención", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { cPrestamo p = new cPrestamo(); p.IdPrestamoPadre = "0"; p.IdCliente = cliente.IdCliente; p.IdPrenda = prenda.IdPrenda; p.Contrato = contrato.NumeroContrato; p.CantidadPrestada = prenda.Prestamo; //p.FechaPrestamo = DateTime.Now.ToString(); p.FechaPrestamo = dtpFechaPrestamo.SelectedDate.Value.ToShortDateString(); p.CantidadPrestada = prenda.Prestamo; p.FechaVencimiento = pagos[pagos.Count - 1].FechaPago; p.Estado = "ACTIVO"; String IdPrestamo = cPrestamo.AgregarPrestamo(p); if (IdPrestamo != "0") { MessageBox.Show("Se ha ingresado el préstamo."); this.Close(); } p.IdPrestamo = IdPrestamo; await Task.Run(() => CrearBoletaExcel(p)); if (MessageBox.Show("Se ha creado la boleta, ¿desea verla?", "Atención", MessageBoxButton.YesNo) == MessageBoxResult.Yes) { System.Diagnostics.Process.Start(ruta); } //parent.LimpiarCampos(); this.Close(); } } catch (Exception exc) { MessageBox.Show(exc.Message); } }
public static String AgregarPrestamo(cPrestamo p) { String respuesta = "0"; try { using (SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["EfectivoInmediato.Properties.Settings.EfectivoInmediatoConnectionString"].ConnectionString)) { using (SqlCommand myCMD = new SqlCommand(" " + "INSERT INTO Prestamos (IdPrestamoPadre, IdCliente, IdPrenda, Contrato, CantidadPrestada, FechaPrestamo, FechaVencimiento, Estado, FechaCaptura) " + "OUTPUT INSERTED.IdPrestamo " + "VALUES (@IdPrestamoPadre, @IdCliente, @IdPrenda, @Contrato, @CantidadPrestada, @FechaPrestamo, @FechaVencimiento, @Estado, GETDATE())" + "", con)) { con.Open(); myCMD.Parameters.AddWithValue("@IdPrestamoPadre", p.IdPrestamoPadre); myCMD.Parameters.AddWithValue("@IdCliente", p.IdCliente); myCMD.Parameters.AddWithValue("@IdPrenda", p.IdPrenda); myCMD.Parameters.AddWithValue("@Contrato", p.Contrato); myCMD.Parameters.AddWithValue("@CantidadPrestada", p.CantidadPrestada); myCMD.Parameters.AddWithValue("@FechaPrestamo", p.FechaPrestamo); myCMD.Parameters.AddWithValue("@FechaVencimiento", p.FechaVencimiento); myCMD.Parameters.AddWithValue("@Estado", p.Estado); respuesta = myCMD.ExecuteScalar().ToString(); con.Close(); } } } catch (Exception exc) { respuesta = "0"; } return(respuesta); }
public static ObservableCollection <cPrestamo> ObtenerPrestamos(String Estado, String DiasVencimiento = "NO", String EnVenta = "NO") { ObservableCollection <cPrestamo> prestamos = new ObservableCollection <cPrestamo>(); cPrestamo prestamo; try { using (SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["EfectivoInmediato.Properties.Settings.EfectivoInmediatoConnectionString"].ConnectionString)) { using (SqlCommand myCMD = new SqlCommand(" " + "SELECT Prestamos.*, (Clientes.NombreCliente + ' ' + Clientes.ApellidoPaternoCliente + ' ' + Clientes.ApellidoMaternoCliente) As NombreCompleto," + "Prendas.Descripcion, Prendas.TipoPrenda " + "FROM Prestamos " + "INNER JOIN Clientes " + "ON Clientes.IdCliente = Prestamos.IdCliente " + "INNER JOIN Prendas " + "ON Prendas.IdPrenda = Prestamos.IdPrenda " + "WHERE Prestamos.Estado Like @Estado " + "AND Prendas.EnVenta = @EnVenta" + "", con)) { con.Open(); myCMD.Parameters.AddWithValue("@Estado", Estado); myCMD.Parameters.AddWithValue("@EnVenta", EnVenta); SqlDataReader reader = myCMD.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { prestamo = new cPrestamo(); prestamo.IdPrestamo = reader["IdPrestamo"].ToString(); prestamo.IdPrestamoPadre = reader["IdPrestamoPadre"].ToString(); prestamo.IdCliente = reader["IdCliente"].ToString(); prestamo.IdPrenda = reader["IdPrenda"].ToString(); prestamo.DescripcionPrenda = reader["Descripcion"].ToString(); prestamo.TipoPrenda = reader["TipoPrenda"].ToString(); prestamo.Contrato = reader["Contrato"].ToString(); prestamo.NombreCliente = reader["NombreCompleto"].ToString(); prestamo.NombrePrenda = reader["Descripcion"].ToString(); prestamo.CantidadPrestada = reader["CantidadPrestada"].ToString(); prestamo.FechaPrestamo = reader["FechaPrestamo"].ToString(); prestamo.FechaVencimiento = reader["FechaVencimiento"].ToString(); prestamo.Estado = reader["Estado"].ToString(); prestamo.FechaCaptura = reader["FechaCaptura"].ToString(); SqlConnection con2 = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["EfectivoInmediato.Properties.Settings.EfectivoInmediatoConnectionString"].ConnectionString); con2.Open(); using (SqlCommand commRefrendos = new SqlCommand(" " + "SELECT * " + "FROM Refrendos " + "WHERE IdPrestamo = @IdPrestamo " + "", con2)) { commRefrendos.Parameters.AddWithValue("@IdPrestamo", prestamo.IdPrestamo); SqlDataReader readerR = commRefrendos.ExecuteReader(); SqlConnection con3 = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["EfectivoInmediato.Properties.Settings.EfectivoInmediatoConnectionString"].ConnectionString); con3.Open(); if (readerR.HasRows) { String fecha = ""; float totalAbonoACapital = 0; while (readerR.Read()) { fecha = readerR["FechaRefrendo"].ToString(); if (readerR["TIPO"].ToString() == "ABONO") { totalAbonoACapital += float.Parse(readerR["Refrendo"].ToString()); } } SqlCommand comIntereses = new SqlCommand("Select Intereses.Periodo, Plazo " + "From Prendas " + "Inner Join Departamentos " + "On Departamentos.IdDepartamento = Prendas.IdDepartamento " + "Inner Join Intereses " + "On Intereses.IdDepartamento = Departamentos.IdDepartamento " + "Where IdPrenda = @IdPrenda", con3); comIntereses.Parameters.AddWithValue("@IdPrenda", prestamo.IdPrenda); SqlDataReader readerI = comIntereses.ExecuteReader(); String plazo = ""; if (readerI.HasRows) { while (readerI.Read()) { plazo = readerI["Plazo"].ToString(); } } DateTime fechaVencimiento = DateTime.Parse(fecha); fechaVencimiento = fechaVencimiento.AddMonths(int.Parse(plazo)); prestamo.FechaVencimiento = fechaVencimiento.ToShortDateString(); prestamo.AbonoACapital = totalAbonoACapital.ToString(); } con3.Close(); } con2.Close(); if (DiasVencimiento == "NO") { } else { if (DateTime.Parse(prestamo.FechaVencimiento).AddDays(int.Parse(DiasVencimiento)) <= DateTime.Now) { prestamo.ProximoATerminar = "SI"; } else { prestamo.ProximoATerminar = "NO"; } } prestamos.Add(prestamo); } } con.Close(); } } } catch (Exception exc) { } return(prestamos); }
public void CrearBoletaExcel(cPrestamo p) { Microsoft.Office.Interop.Excel.Application app = new Microsoft.Office.Interop.Excel.Application(); try { object m = Type.Missing; Workbook wb = app.Workbooks.Open( @"C:\EfectivoInmediato\Boleta2M.xlsx", m, false, m, m, m, m, m, m, m, m, m, m, m, m); Worksheet ws = (Worksheet)wb.ActiveSheet; Range r = (Range)ws.UsedRange; bool success; //Se escribe el nombre de la sucursal. success = (bool)r.Replace( @"\sucursal\", "MATRIZ", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el horario de la sucursal. success = (bool)r.Replace( @"\hor\", "9:00 a.m. A 7:00 p.m.", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la fecha del documento. success = (bool)r.Replace( @"\fecha\", p.FechaPrestamo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el número de contrato. success = (bool)r.Replace( @"\contrato\", p.Contrato, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el nombre del cliente. success = (bool)r.Replace( @"\cliente\", "[" + cliente.IdCliente + "] " + cliente.NombreCompleto, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el tipo de idenficación del cliente. success = (bool)r.Replace( @"\tipoIDCli\", cliente.TipoIdentificacion, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el número de idenficación del cliente. success = (bool)r.Replace( @"\numIDCli\", cliente.ClaveIdentificacion, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el domicilio del cliente. success = (bool)r.Replace( @"\domCli\", cliente.Domicilio, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el teléfono del cliente. success = (bool)r.Replace( @"\telCli\", cliente.Telefono1, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); /* * //Se escribe el correo electrónico del cliente. * success = (bool)r.Replace( * @"\emailCliente\", * cliente.CorreoElectronico, * XlLookAt.xlPart, * XlSearchOrder.xlByRows, * true, m, m, m); */ // Se escribe el nombre del cotitular del cliente. success = (bool)r.Replace( @"\cotitular\", cliente.NombreCotitular, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el CAT. success = (bool)r.Replace( @"\cat\", (float.Parse(interes.CalcularCAT()) / 100).ToString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la tasa de interes anual. success = (bool)r.Replace( @"\tan\", (((float.Parse(interes.Financiamiento) + float.Parse(interes.Administracion)) / 100) * 12).ToString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la cantidad para desempeñar. success = (bool)r.Replace( @"\desemp\", pagos[pagos.Count - 1].TotalDesempeno, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el porcentaje de almacenaje. success = (bool)r.Replace( @"\pAlmcnj\", (float.Parse(interes.Almacenaje) / 100).ToString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la cantidad por reposición de contrato. success = (bool)r.Replace( @"\repos\", "$ 15.00", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la cantidad por reclamo extemporaneo. success = (bool)r.Replace( @"\intExtempo\", (float.Parse(interes.ReclamoExtemporaneoCantidad) / 100).ToString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el porcentaje de gastos de administración. success = (bool)r.Replace( @"\pAdmon\", interes.Administracion, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la fecha de vencimiento. success = (bool)r.Replace( @"\fecVen\", pagos[pagos.Count - 1].FechaPago, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el interes final. success = (bool)r.Replace( @"\finan\", pagos[pagos.Count - 1].Intereses, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el almacenaje final. success = (bool)r.Replace( @"\almcnj\", pagos[pagos.Count - 1].Almacenaje, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el IVA final. success = (bool)r.Replace( @"\iva\", pagos[pagos.Count - 1].IVA, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el refrendo final. success = (bool)r.Replace( @"\refren\", pagos[pagos.Count - 1].TotalRefrendo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe nombre de la prenda. success = (bool)r.Replace( @"\prenda1\", prenda.Descripcion + " " + prenda.Marca + " " + prenda.Modelo + " " + prenda.Serie + " " + prenda.Observaciones, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el avalúo de la prenda. success = (bool)r.Replace( @"\ava1\", prenda.Avaluo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la pureza del metal. success = (bool)r.Replace( @"\pureza1\", prenda.Pureza, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el peso del metal. success = (bool)r.Replace( @"\peso1\", prenda.PesoMetal, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el color de la piedra. success = (bool)r.Replace( @"\color1\", prenda.ColorPiedra, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la claridad de la piedra. success = (bool)r.Replace( @"\claridad1\", prenda.ClaridadOPureza, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); // Se escribe el préstamo de la prenda. success = (bool)r.Replace( @"\pres1\", prenda.Prestamo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el avalúo de la prenda. success = (bool)r.Replace( @"\avaluoTotal\", prenda.Avaluo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el prestamo de la prenda. success = (bool)r.Replace( @"\pres\", prenda.Prestamo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el pago mínimo. success = (bool)r.Replace( @"\pagoMin\", interes.PagoMinimo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la fecha de comecialización. success = (bool)r.Replace( @"\fecCom\", DateTime.Parse(pagos[pagos.Count - 1].FechaPago).AddDays(int.Parse(interes.ReclamoExtemporaneoDias)).ToShortDateString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la fecha de refrendo máximo. success = (bool)r.Replace( @"\fecRef\", DateTime.Parse(pagos[pagos.Count - 1].FechaPago).AddDays(int.Parse(interes.DiasDeGracia)).ToShortDateString(), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el tipo de periodo de cobro. success = (bool)r.Replace( @"\periodo\", interes.Periodo, XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escriben las observaciones. success = (bool)r.Replace( @"\observ1\", "", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el número del contrato con PROFECO. success = (bool)r.Replace( @"\contratoProfeco\", "8361-2018", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el domicilio del establecimiento. success = (bool)r.Replace( @"\domProp\", "GIRASOL Num. 15 COL. CIUDAD INDUSTRIAL.", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el teléfono del establecimiento. success = (bool)r.Replace( @"\telProp\", "311 160 8815", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe el correo del establecimiento. success = (bool)r.Replace( @"\emailProp\", "-", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); //Se escribe la dirección de la página del establecimiento. success = (bool)r.Replace( @"\paginaProp\", "-", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); // Se escribe el nombre de la ciudad. success = (bool)r.Replace( @"\ciudad\", "TEPIC, NAYARIT", XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); // Se escribe el día. success = (bool)r.Replace( @"\dia\", p.FechaPrestamo.Substring(0, 2), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); // Se escribe el mes. success = (bool)r.Replace( @"\mes\", p.FechaPrestamo.Substring(3, 2), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); // Se escribe el año. success = (bool)r.Replace( @"\año\", p.FechaPrestamo.Substring(6, 4), XlLookAt.xlPart, XlSearchOrder.xlByRows, true, m, m, m); app.CalculateFull(); wb.SaveAs(@"C:\EfectivoInmediato\Boletas\Boleta_" + p.IdPrestamo); app.Quit(); //app = null; Marshal.ReleaseComObject(app); ruta = @"C:\EfectivoInmediato\Boletas\Boleta_" + p.IdPrestamo + ".xlsx"; } catch (Exception exc) { MessageBox.Show(exc.Message); } finally { } }