private void NuevoMontoAFavor() { if (ucPagos1.Total != _pagoCelular.Monto) { if (MessageBox.Show("Desea guardar el monto a favor?", "Monto a favor", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes) { var monto = ucPagos1.Total - _pagoCelular.Monto; var montoAFavor = new ChoferMontoFavor(); montoAFavor.Id = Guid.NewGuid(); montoAFavor.ChoferId = _chofer.Id; montoAFavor.FechaComprobante = _clock.Now; montoAFavor.TipoComprobanteId = 1; //Monto a Favor montoAFavor.Concepto = "Monto a favor"; montoAFavor.Importe = monto; montoAFavor.ImpOcupado = 0; montoAFavor.FechaAlta = _clock.Now; montoAFavor.OperadorAltaId = Context.OperadorActual.Id; montoAFavor.SucursalAltaId = Context.SucursalActual.Id; Uow.ChoferesMontosFavor.Agregar(montoAFavor); } } }
private void CambioCelular(Celular celular) { var chofer = Uow.Choferes.Obtener(c => c.Id == _chofer.Id); chofer.CelularId = celular.Id; Uow.Choferes.Modificar(chofer); _celularAnterior.Baja = _clock.Now; Uow.Celulares.Modificar(_celularAnterior); var historialAnterior = Uow.ChoferCelulares.Listado().Where(c => c.CelularId == _celularAnterior.Id).FirstOrDefault(); if (historialAnterior != null) { historialAnterior.Baja = _clock.Now; historialAnterior.FechaModificacion = _clock.Now; historialAnterior.OperadorModificacionId = Context.OperadorActual.Id; historialAnterior.SucursalModificacionId = Context.SucursalActual.Id; Uow.ChoferCelulares.Modificar(historialAnterior); } //Historial de ChoferCelular var historial = new ChoferCelular(); historial.Choferid = _chofer.Id; historial.CelularId = _celularNuevo.Id; historial.Alta = _clock.Now; historial.FechaAlta = _clock.Now; historial.OperadorAltaId = Context.OperadorActual.Id; historial.SucursalAltaId = Context.SucursalActual.Id; Uow.ChoferCelulares.Agregar(historial); //Copiar las fechas de ultimos pagos _celularNuevo.FechaProximoPago = _celularAnterior.FechaProximoPago; _celularNuevo.FechaUltimoPago = _celularAnterior.FechaUltimoPago; _celularNuevo.FechaVencimientoPago = _celularAnterior.FechaVencimientoPago; Uow.Celulares.Modificar(_celularNuevo); //MontoAFavor TimeSpan diferenciaDias = (_celularAnterior.FechaVencimientoPago ?? _clock.Now) - _clock.Now; DiferenciaDias = diferenciaDias.Days; DiferenciaMonto = _celularAnterior.TiposCelulares.Monto - _celularNuevo.TiposCelulares.Monto; MontoAFavor = DiferenciaDias * DiferenciaMonto; var montoAFavor = new ChoferMontoFavor(); montoAFavor.Id = Guid.NewGuid(); montoAFavor.ChoferId = _chofer.Id; montoAFavor.FechaComprobante = _clock.Now; montoAFavor.TipoComprobanteId = 1; montoAFavor.Concepto = "Cambio de celular"; montoAFavor.Importe = MontoAFavor; montoAFavor.ImpOcupado = 0; montoAFavor.FechaAlta = _clock.Now; montoAFavor.OperadorAltaId = Context.OperadorActual.Id; montoAFavor.SucursalAltaId = Context.SucursalActual.Id; Uow.ChoferesMontosFavor.Agregar(montoAFavor); //Generar PagoCelular var pagoCelular = new PagoCelular(); pagoCelular.Id = Guid.NewGuid(); pagoCelular.Desde = _clock.Now; pagoCelular.Hasta = _clock.Now; pagoCelular.CelularId = _celularNuevo.Id; pagoCelular.FechaAlta = _clock.Now; pagoCelular.OperadorAltaId = Context.OperadorActual.Id; pagoCelular.SucursalAltaId = Context.SucursalActual.Id; Uow.PagosCelulares.Agregar(pagoCelular); // _celular = celular; CelularNuevo = _celularNuevo.TiposCelulares.Tipo; }
private void BtnEliminarPago_Click(object sender, EventArgs e) { var selectedRow = this.dgvhistorial.Rows[0]; var pago = selectedRow.DataBoundItem as HistorialPagosChofer_Result; if (pago == null) { return; } var _pago = Uow.PagosCelulares.Obtener(p => p.Id == pago.Id); //ANULO EL PAGO _pago.Anulada = true; _pago.FechaAnulacion = _clock.Now; //_pago.OperadorAutoriza= Operador autorizacion Uow.PagosCelulares.Modificar(_pago); //MODIFICAR CAJA Y CAJA MOVIMIENTO var caja = Uow.Cajas.Listado().Where(c => c.OperadorId == Context.OperadorActual.Id && c.FCierre == null).OrderByDescending(c => c.FechaAlta).FirstOrDefault(); caja.Ingresos = (caja.Ingresos ?? 0) - (pago.Efectivo ?? 0) - (pago.Vales ?? 0); caja.Saldo = (caja.Saldo ?? 0) - (pago.Efectivo ?? 0) - (pago.Vales ?? 0); if (pago.Efectivo != null) { caja.Efectivo -= pago.Efectivo; } if (pago.Vales != null) { caja.Vales -= pago.Vales; } caja.FechaModificacion = _clock.Now; caja.OperadorModificacionId = Context.OperadorActual.Id; caja.SucursalModificacionId = Context.SucursalActual.Id; Uow.Cajas.Modificar(caja); var cajaMovimiento = new CajaMovimiento(); cajaMovimiento.Id = Guid.NewGuid(); cajaMovimiento.CajaId = caja.Id; cajaMovimiento.TipoMovimientoCajaId = 1; //Pago de sistema cajaMovimiento.TipoComprobante = 3; //Anulacion Pago de sistema cajaMovimiento.ComprobanteId = pago.Id; //id del pago Celular cajaMovimiento.Senia = pago.Senia; if (pago.Senia > 0) { var choferMontoFavor = new ChoferMontoFavor(); choferMontoFavor.Id = Guid.NewGuid(); choferMontoFavor.ChoferId = pago.Chofer; choferMontoFavor.FechaAlta = DateTime.Now; choferMontoFavor.FechaComprobante = DateTime.Now; choferMontoFavor.TipoComprobanteId = 1; choferMontoFavor.Concepto = "Monto a favor"; choferMontoFavor.ImpOcupado = 0; choferMontoFavor.SucursalAltaId = Context.SucursalActual.Id; choferMontoFavor.OperadorAltaId = Context.OperadorActual.Id; choferMontoFavor.Importe = pago.Senia; Uow.ChoferesMontosFavor.Agregar(choferMontoFavor); } cajaMovimiento.Importe = pago.Monto; cajaMovimiento.ImpFac = (pago.Efectivo ?? 0) + (pago.Vales ?? 0); cajaMovimiento.Efectivo = pago.Efectivo; cajaMovimiento.Vales = pago.Vales; cajaMovimiento.FechaAlta = _clock.Now; cajaMovimiento.OperadorAltaId = Context.OperadorActual.Id; cajaMovimiento.SucursalAltaId = Context.SucursalActual.Id; Uow.CajaMovimientos.Agregar(cajaMovimiento); Uow.Commit(); var _pagonuevo = Uow.PagosCelulares.Listado().Where(p => p.CelularId == _pago.CelularId && p.Anulada != true).OrderByDescending(g => g.FechaAlta).FirstOrDefault(); var celular = Uow.Celulares.Obtener(c => c.Id == _pago.CelularId); if (_pagonuevo != null) { //modifico fecha de proximo pago en el celular celular.FechaVencimientoPago = _pagonuevo.Hasta; celular.FechaProximoPago = (_pagonuevo.Hasta ?? DateTime.Now).AddDays(-2); } else { celular.FechaVencimientoPago = null; celular.FechaProximoPago = null; celular.FechaUltimoPago = null; } Uow.Celulares.Modificar(celular); Uow.Commit(); MessageBox.Show("Pago eliminado correctamente"); HistorialPagosChofer(_pago.ChoferId ?? Guid.Empty); //guardar comentario //ucComentarios.GenerarComentario(chofer.Id, "Pago del " + DesdeComent.ToString("dd/MM/yyyy") + " al " + HastaComent.ToString("dd/MM/yyyy") + ". Monto: $" + _pagoCelular.Monto); OnComentarioAdd("Pago anulado del " + _pago.Desde.ToString().Remove(10) + " hasta el " + _pago.Hasta.ToString().Remove(10)); }