private void btnGuardar_Click(object sender, EventArgs e) { try { if (!funciones.ValidatePIN("Editar Empeño")) { return; } if (configuracionId == 0) { var configuracion = new Configuracion { ConfiguracionId = configuracionId, Identificacion = txtIdentificacion.Text, Meses = int.Parse(txtMeses.Text), Compañia = txtCompania.Text, Nombre = txtNombre.Text, Telefono = txtTelefono.Text, Email = txtEmail.Text, Password = txtPassword.Text, Puerto = int.Parse(!string.IsNullOrEmpty(txtPuerto.Text)?txtPuerto.Text:"0"), SMTP = txtSMTP.Text, SSL = chkSSL.Checked, Direccion = txtDirección.Text, EmailNotification = txtEmailAdmin.Text }; _context.Configuraciones.Add(configuracion); } else { var configuracion = _context.Configuraciones.Find(configuracionId); configuracion.Identificacion = txtIdentificacion.Text; configuracion.Meses = int.Parse(txtMeses.Text); configuracion.Nombre = txtNombre.Text; configuracion.Compañia = txtCompania.Text; configuracion.Telefono = txtTelefono.Text; configuracion.Email = txtEmail.Text; configuracion.Password = txtPassword.Text; configuracion.Puerto = int.Parse(!string.IsNullOrEmpty(txtPuerto.Text) ? txtPuerto.Text : "0"); configuracion.SMTP = txtSMTP.Text; configuracion.SSL = chkSSL.Checked; configuracion.Direccion = txtDirección.Text; configuracion.EmailNotification = txtEmailAdmin.Text; _context.Entry(configuracion).State = EntityState.Modified; } _context.SaveChanges(); MessageBox.Show("Datos guardados correctamente", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show(ex.Message.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private async void btnGuardarCierreCaja_Click(object sender, EventArgs e) { if (!funciones.ValidatePIN("Empeño")) { return; } var fecha = DateTime.ParseExact(txtFecha.Text, "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture); var cierreCaja = new CierreCaja { Fecha = fecha, EmpleadoId = Program.EmpleadoId, SaldoInicial = double.Parse(textBox1.Text), IsDelete = false, }; _context.CierreCajas.Add(cierreCaja); await _context.SaveChangesAsync(); detalles.ForEach(d => d.CierreCajaId = cierreCaja.CierreCajaId); _context.DetalleCierreCajas.AddRange(detalles); await _context.SaveChangesAsync(); MessageBox.Show("Cierre de caja realizado correctamente!!!", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); Print(cierreCaja); var configuracion = _context.Configuraciones.FirstOrDefault(); if (!string.IsNullOrEmpty(configuracion.EmailNotification)) { EmailFuncion emailFuncion = new EmailFuncion(); var empleado = await _context.Empleados.FindAsync(Program.EmpleadoId); string str = "Se ha realizado el cierre de caja al ser el <b>" + cierreCaja.Fecha.ToLongDateString() + " " + cierreCaja.Fecha.ToLongTimeString() + "</b> por <b>" + empleado.Nombre + "</b>. <br /><br />"; await emailFuncion.SendMail(configuracion.EmailNotification, "Cierre de Caja " + cierreCaja.Fecha, str, detalles); } //printDocument1.Print(); // MessageBox.Show("Imprimiendo..."); }
private async void btnGuardarCierreCaja_Click(object sender, EventArgs e) { if (!funciones.ValidatePIN("Editar Empeño")) { return; } var resp = MessageBox.Show("Está seguro que desea enviar el arqueo y sus observaciones al administrador del negocio", "Confirmar", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (resp == DialogResult.Yes) { var str = "<table><tr><td></td><td>Cantidad</td><td>Valor</td></tr>"; str += "<tr><td>Total General</td><td> " + lblTotalPrincipal.Text + " </td><td> " + txtTotalPrincipal.Text + " </td></tr>"; str += "<tr><td>Total Vigente</td><td> " + lblTotalAlDia.Text + " </td><td> " + txtTotalAlDia.Text + " </td></tr>"; str += "<tr><td>Total Vencidos</td><td> " + lblTotalVencidos.Text + " </td><td> " + txtTotalVencido.Text + " </td></tr>"; str += "<tr><td>Total Prorrogra</td><td> " + lblTotalProrroga.Text + " </td><td> " + txtTotalProrroga.Text + " </td></tr>"; str += "</table>"; await emailFuncion.SendMailArqueo(configuracion.EmailNotification, "Arqueo realizado en la sucursal " + configuracion.Compañia, "Arqueo realizado en la sucursal de Empeños " + configuracion.Compañia + " en " + configuracion.Direccion + "<br /> <h3>Observaciones</h3> " + txtObservaciones.Text, dgvDetalles, str); MessageBox.Show("Mensaje enviado correctamente", "Información", MessageBoxButtons.OK, MessageBoxIcon.Information); } }
private void mnuArqueo_Click(object sender, EventArgs e) { if (!funciones.ValidatePIN("Empeño")) { return; } ActivateButton(sender, RGBColors.color2); OpenChildForm(new frmArqueo()); }
private async void btnImprimir_Click(object sender, EventArgs e) { if (!funciones.ValidatePIN("Editar Empeño")) { return; } if (intereses.Empeno.InteresId != await funciones.GetInteresIdByNombre(cbInteres.Text) && Program.PerfilId != 4) { intereses.Empeno.InteresId = await funciones.GetInteresIdByNombre(cbInteres.Text); if (intereses.Empeno.Intereses.Count() == 1) { var interes = intereses.Empeno.Intereses.FirstOrDefault(); if (interes.Pagado == 0) { var porcentaje = await _context.Interes.FindAsync(intereses.Empeno.InteresId); interes.Monto = intereses.Empeno.Monto * ((double)porcentaje.Porcentaje / (double)100); _context.Entry(interes).State = EntityState.Modified; } } } else { intereses.Monto = double.Parse(txtMonto.Text); } intereses.Pagado = double.Parse(txtPagado.Text); intereses.FechaCreacion = dtFecha.Value; intereses.FechaVencimiento = dtVence.Value; _context.Entry(intereses).State = EntityState.Modified; await _context.SaveChangesAsync(); this.Close(); }
public async Task Guardar() { if (!funciones.ValidatePIN("Empeño")) { return; } double pagoIntereses = double.Parse(txtPagaInteres.Text); double pagoMonto = double.Parse(txtPagaMonto.Text); double montoPendiente = double.Parse(txtMontoAPagar.Text); if (pagoMonto < montoPendiente) { if ((pagoMonto > 0) && (empeño.Intereses.Sum(i => i.Monto) > (empeño.Intereses.Sum(i => i.Pagado) + pagoIntereses))) { MessageBox.Show("Para abonar a la prenda debe pagar todos los intereses pendientes de " + montoMinimo.ToString("N2"), "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } } var empleadoId = await funciones.GetEmpleadoIdByUser(Program.Usuario.Usuario); double montoIntereses = double.Parse(txtInteresAPagar.Text); if (pagoMonto > montoPendiente) { txtPagaMonto.Text = txtMontoAPagar.Text; pagoMonto = double.Parse(txtPagaMonto.Text); } if (pagoIntereses > montoIntereses) { txtPagaInteres.Text = txtInteresAPagar.Text; pagoIntereses = double.Parse(txtPagaInteres.Text); } empeño = null; var empeñoTemp = _context.Empenos.Find(empeñoId); if ((pagoMonto > 0 && pagoMonto < montoPendiente) && (pagoIntereses < montoMinimo - 1)) { MessageBox.Show("Para abonar a la prenda debe pagar todos los intereses pendientes de " + montoMinimo.ToString("N2"), "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (pagoMonto > 0) { var pago = new Pago { EmpenoId = empeñoTemp.EmpenoId, Consecutivo = GetConsecutivo(), Comentario = txtComentario.Text == "Comentario" ? string.Empty : txtComentario.Text, EmpleadoId = Program.EmpleadoId, Fecha = DateTime.Now, Monto = pagoMonto, TipoPago = TipoPago.Principal, }; _context.Pago.Add(pago); await _context.SaveChangesAsync(); await funciones.SaveBitacora(new ValorBitacora { Valor = JsonConvert.SerializeObject(pago), Modulo = "Pagos", Accion = "Crear" }); empeñoTemp.MontoPendiente -= pago.Monto; if (empeñoTemp.MontoPendiente < 1) { var pagoInteres = await SetPagaInteres(pagoIntereses, false); empeñoTemp.Estado = Estado.Cancelado; empeñoTemp.Retirado = true; empeñoTemp.FechaRetiro = DateTime.Today; _context.Intereses.RemoveRange(_context.Intereses.Where(i => i.EmpenoId == empleadoId && i.Pagado == 0)); _context.Entry(empeñoTemp).State = EntityState.Modified; await _context.SaveChangesAsync(); if (pagoInteres == null) { await PrintRetiro(empeñoTemp, pago); } else { await PrintRetiro(empeñoTemp, pago, pagoInteres); } } else { empeñoTemp.Estado = Estado.Vigente; _context.Entry(empeñoTemp).State = EntityState.Modified; await _context.SaveChangesAsync(); await PagaInteres(pagoIntereses, true); await PrintAbono(empeñoTemp, pago); } } else { await PagaInteres(pagoIntereses, true); } await _context.SaveChangesAsync(); this.Close(); }