public ActionResult PutCerrar(Int16 id, [FromBody] Caja value) { using (var transaction = context.Database.BeginTransaction()) { try { if (id != value.Id) { return(BadRequest()); } DetalleCaja det = context.DetallesCaja.FirstOrDefault(x => x.Id == value.DetalleAbierto.Id); det.HoraCierre = value.DetalleAbierto.HoraCierre; det.FechaCierre = value.DetalleAbierto.FechaCierre; det.MontoCierre = value.DetalleAbierto.Cobros.Where(v => v.FechaBaja == null).Sum(x => x.Monto); context.Entry(det).State = EntityState.Modified; context.Entry(value).State = EntityState.Modified; context.SaveChanges(); transaction.Commit(); return(Ok()); } catch (Exception ex) { transaction.Rollback(); return(BadRequest(ex)); } finally { transaction.Dispose(); } } }
public List <Caja> consultarCajas(Conexion _conexion, short Caja) { List <Caja> ListaResultado; DetalleCaja objDatos = new DetalleCaja(); ListaResultado = objDatos.consultarCajas(_conexion, Caja); return(ListaResultado); }
public ActionResult Put(Int16 id, [FromBody] DetalleCaja value) { if (id != value.Id) { return(BadRequest()); } context.Entry(value).State = EntityState.Modified; context.SaveChanges(); return(Ok()); }
public void InsertarDetalle(DetalleCajaDto dto) { using (var context = new ModeloXCommerceContainer()) { var nuevoDetalle = new DetalleCaja(); nuevoDetalle.Id = dto.Id; nuevoDetalle.CajaId = dto.CajaId; nuevoDetalle.Monto = dto.Monto; nuevoDetalle.TipoPago = dto.FormaPago; context.DetalleCajas.Add(nuevoDetalle); context.SaveChanges(); } }
public ActionResult Post([FromQuery] Int32 IdDetalleCaja, [FromQuery] String CerrarCaja, [FromBody] ArqueoCaja value) { using (var transaction = context.Database.BeginTransaction()) { try { value.Estado = context.EstadosArqueo.FirstOrDefault(x => x.Id == value.Estado.Id); context.ArqueoCajas.Add(value); context.Entry(value.Estado).State = EntityState.Detached; DetalleCaja det = context.DetallesCaja.FirstOrDefault(x => x.Id == IdDetalleCaja); foreach (DetalleArqueo d in value.Detalles) { context.Entry(d.FormaPago).State = EntityState.Detached; } context.SaveChanges(); det.Arqueo = value; Caja caja = new Caja(); if (CerrarCaja == "si") { caja = context.Cajas.FirstOrDefault(x => x.Id == det.CajaId); det.HoraCierre = DateTime.Now.TimeOfDay; det.FechaCierre = DateTime.Now.Date; det.MontoCierre = det.Cobros.Where(v => v.FechaBaja == null).Sum(x => x.Monto); caja.EstaAbierta = false; context.Entry(caja).State = EntityState.Modified; } context.Entry(det).State = EntityState.Modified; context.SaveChanges(); transaction.Commit(); return(new CreatedAtRouteResult("ObtenerArqueoCajaById", new { id = value.Id }, value)); }catch (Exception ex) { transaction.Rollback(); throw ex; } finally { transaction.Dispose(); } } }
public List <DetalleCaja> DetallesFolio(int _idfolio) { var lista = from det in db.wl_detcajassku where det.wl_cajas_Id == _idfolio select new { sku = det.skus.codigobarras, cantidad = det.Cantidad }; List <DetalleCaja> listaDetalle = new List <DetalleCaja>(); foreach (var item in lista.GroupBy(x => x.sku)) { DetalleCaja detalleTemp = new DetalleCaja(); detalleTemp.sku = item.Key; detalleTemp.cantidad = (int)lista.Where(x => x.sku.Equals(item.Key)).Sum(x => x.cantidad); detalleTemp.cantidadescaneada = 0; listaDetalle.Add(detalleTemp); } return(listaDetalle); }
public ActionResult PutAbrir(Int16 id, [FromBody] Caja value) { if (id != value.Id) { return(BadRequest()); } DetalleCaja det = new DetalleCaja(); det.MontoApertura = value.DetalleAbierto.MontoApertura; det.FechaApertura = DateTime.Now.Date; det.HoraApertura = DateTime.Now.TimeOfDay; det.CajaId = value.Id; context.DetallesCaja.Add(det); context.SaveChanges(); value.DetalleAbierto = det; context.Entry(value).State = EntityState.Modified; context.SaveChanges(); return(Ok(value)); }
public List <DetalleCaja> listaDetalle(int IdCaja) { try { List <DetalleCaja> listaTemp = new List <DetalleCaja>(); foreach (var item in db.wl_detcajassku.Where(x => x.wl_cajas_Id == IdCaja).ToList()) { DetalleCaja detalle = new DetalleCaja(); detalle.sku = db.skus.Where(x => x.id == item.skus_Id).FirstOrDefault().codigobarras; detalle.cantidad = (int)item.Cantidad; detalle.cantidadescaneada = 0; listaTemp.Add(detalle); } return(listaTemp); } catch (Exception) { return(null); } }
private async Task Calcular(bool valor) { Cuentas.Clear(); if (CuentaCorrientes != null) { if (Operaciones != null) { var bancos = Operaciones.Where(x => x.FechaVencimiento <= DateTime.Now && x.CuentaCorrienteId != 3).Sum(x => x.Debe) - Operaciones.Where(x => x.FechaVencimiento <= DateTime.Now && x.CuentaCorrienteId != 3).Sum(x => x.Haber); Cuentas.Add(new CuentaDto { Id = 1, DescripcionCuenta = $"Bancos", SaldoCuenta = bancos }); } foreach (var i in CuentaCorrientes) { if (valor) { Operaciones = new ObservableCollection <OperacionDto>(await ApiProcessor.GetApi <OperacionDto[]>($"Operacion/GetByFecha/{FechaDesde.ToString("MM-dd-yyyy")}/{FechaHasta.ToString("MM-dd-yyyy")}/{i.Id}")); } else { Operaciones = new ObservableCollection <OperacionDto>(await ApiProcessor.GetApi <OperacionDto[]>($"Operacion/GetByBanco/{i.BancoId}")); } var total = 0m; foreach (var item in Operaciones.Where(x => x.FechaEmision.Value.Year == DateTime.Now.Year && x.CuentaCorrienteId != 3).OrderBy(x => x.FechaEmision)) { if (item.Haber != 0) { total -= (decimal)item.Haber; } else { total += (decimal)item.Debe; } } if (i.BancoId != 3) { Cuentas.Add(new CuentaDto { Id = 1, DescripcionSubRubro = $"Banco {i.Banco.RazonSocial}", SaldoSubRubro = total }); } } foreach (var i in CuentaCorrientes.Where(x => x.BancoId == 3)) { var valoresDep = 0m; foreach (var item in Operaciones.Where(x => x.FechaEmision.Value.Year == DateTime.Now.Year).OrderBy(x => x.FechaEmision)) { if (item.Haber != 0) { valoresDep -= (decimal)item.Haber; } else { valoresDep += (decimal)item.Debe; } } Cuentas.Add(new CuentaDto { Id = 1, DescripcionCuenta = $"{i.Banco.RazonSocial}", SaldoCuenta = valoresDep }); } } if (DetalleCaja != null) { var caja = DetalleCaja.Where(x => x.Caja.FechaApertura == DetalleCaja.Max(y => y.Caja.FechaApertura)); var total = caja.Where(x => x.TipoMovimiento == Constantes.TipoMovimiento.Ingreso).Sum(x => x.Monto) - caja.Where(x => x.TipoMovimiento == Constantes.TipoMovimiento.Egreso).Sum(x => x.Monto); Cuentas.Add(new CuentaDto { Id = 1, DescripcionCuenta = $"Caja", SaldoCuenta = total }); } if (ComprobantesSalidas != null) { var lista = ComprobantesSalidas.Where(x => x.SubRubroId != null).GroupBy(x => x.SubRubro.Rubro.Descripcion).ToList(); foreach (var item in lista) { Cuentas.Add(new CuentaDto { DescripcionCuenta = item.Key, SaldoCuenta = item.Sum(x => x.Total) }); var sub = item.GroupBy(x => x.SubRubro.Descripcion).ToList(); foreach (var i in sub) { Cuentas.Add(new CuentaDto { DescripcionSubRubro = i.Key, SaldoSubRubro = i.Sum(x => x.Total) }); } } } if (ComprobanteEntrada != null) { var lista = ComprobanteEntrada.Where(x => x.SubRubroId != null).GroupBy(x => x.SubRubro.Rubro.Descripcion).ToList(); foreach (var item in lista) { Cuentas.Add(new CuentaDto { DescripcionCuenta = item.Key, SaldoCuenta = item.Sum(x => x.Total) }); var sub = item.GroupBy(x => x.SubRubro.Descripcion).ToList(); foreach (var i in sub) { Cuentas.Add(new CuentaDto { DescripcionSubRubro = i.Key, SaldoSubRubro = i.Sum(x => x.Total) }); } } } }
public ActionResult Post([FromBody] DetalleCaja value) { context.DetallesCaja.Add(value); context.SaveChanges(); return(new CreatedAtRouteResult("ObtenerDetalleCajasById", new { id = value.Id }, value)); }
public ActionResult PostCobrar([FromBody] List <Pago> value, [FromQuery] Int32 idPedido, [FromQuery] Int32 idDetalleCaja) { using (var transaction = context.Database.BeginTransaction()) { try { Pedido pedido = context.Pedidos.Include(g => g.Cobros).ThenInclude(t => t.FormaPago).FirstOrDefault(x => x.Id == idPedido); DetalleCaja detalle = context.DetallesCaja.Include(g => g.Cobros).ThenInclude(t => t.FormaPago).FirstOrDefault(x => x.Id == idDetalleCaja); List <Pago> listaPago = new List <Pago>(); foreach (Pago p in value.Where(x => x.Id == null || x.Id == 0 || x.Id < 0)) { p.FormaPago = context.FormasPago.FirstOrDefault(x => x.Id == p.FormaPago.Id); if (p.MarcaTarjeta != null) { p.MarcaTarjeta = context.Tarjetas.FirstOrDefault(x => x.Id == p.MarcaTarjeta.Id); context.Entry(p.MarcaTarjeta).State = EntityState.Modified; } if (p.Banco != null) { p.Banco = context.Bancos.FirstOrDefault(x => x.Id == p.Banco.Id); context.Entry(p.Banco).State = EntityState.Modified; } p.PedidoId = idPedido; p.DetalleCajaId = idDetalleCaja; p.FechaAlta = DateTime.Now.Date; p.HoraAlta = DateTime.Now.TimeOfDay; context.Entry(p.FormaPago).State = EntityState.Modified; listaPago.Add(p); } context.Pagos.AddRange(listaPago); List <Int32> idsCobros = new List <int>(); context.SaveChanges(); //context.SaveChanges(); foreach (Pago p in value) { idsCobros.Add(p.Id); } // pedido.Cobros.AddRange(context.Pagos.Where(t => idsCobros.Contains(t.Id))); //detalle.Cobros.AddRange(context.Pagos.Where(t => idsCobros.Contains(t.Id))); if (pedido.Cobros.Sum(x => x.Monto) == pedido.MontoTotal) { pedido.EstadoPedido = context.EstadosPedido.FirstOrDefault(x => x.Id == 10); if ((pedido.IdDetalleMesa != null && pedido.IdDetalleMesa != 0)) { Mesa mesa = context.Mesas.Include(x => x.DetalleAbierto).First(x => x.DetalleAbierto.Id == pedido.IdDetalleMesa); DetalleMesa det = context.DetallesMesa.First(x => x.Id == mesa.DetalleAbierto.Id); det.FechaCierre = DateTime.Now.Date; det.HoraCierre = DateTime.Now.TimeOfDay; context.Entry(det).State = EntityState.Modified; mesa.DetalleAbierto = null; context.Entry(mesa).State = EntityState.Modified; context.SaveChanges(); } } context.Entry(pedido).State = EntityState.Modified; context.Entry(detalle).State = EntityState.Modified; context.SaveChanges(); transaction.Commit(); return(Ok(value)); } catch (Exception ex) { transaction.Rollback(); return(BadRequest(ex)); } finally{ transaction.Dispose(); } } }
public ActionResult Put(Int32 Id, [FromQuery] Int32 IdDetalleCaja, [FromQuery] String CerrarArqueo, [FromBody] ArqueoCaja value) { using (var transaction = context.Database.BeginTransaction()) { try { ArqueoCaja arqEx = context.ArqueoCajas.Include(x => x.Detalles).ThenInclude(y => y.FormaPago) .Include(x => x.Estado).First(x => x.Id == Id); arqEx.Estado = context.EstadosArqueo.FirstOrDefault(x => x.Id == value.Estado.Id); if (CerrarArqueo == "si") { arqEx.Estado = context.EstadosArqueo.FirstOrDefault(x => x.Id == 2); context.Entry(arqEx.Estado).State = EntityState.Modified; } DetalleCaja det = context.DetallesCaja.Include(x => x.Cobros).FirstOrDefault(x => x.Id == IdDetalleCaja); for (int i = 0; i < value.Detalles.Count; i++) { DetalleArqueo d = value.Detalles[i]; if (d.Id == 0 || d.Id < 0) { arqEx.Detalles.Add(d); } else { DetalleArqueo deta = arqEx.Detalles.FirstOrDefault(x => x.Id == d.Id); deta.FechaBaja = d.FechaBaja; deta.HoraBaja = d.HoraBaja; deta.Monto = d.Monto; deta.Observaciones = d.Observaciones; context.Entry(deta).State = EntityState.Modified; } context.Entry(d.FormaPago).State = EntityState.Detached; } context.Entry(value.Estado).State = EntityState.Detached; context.SaveChanges(); Caja caja = new Caja(); if (CerrarArqueo == "si") { caja = context.Cajas.FirstOrDefault(x => x.Id == det.CajaId); det.HoraCierre = DateTime.Now.TimeOfDay; det.FechaCierre = DateTime.Now.Date; det.MontoCierre = det.Cobros.Where(v => v.FechaBaja == null).Sum(x => x.Monto); caja.EstaAbierta = false; context.Entry(caja).State = EntityState.Modified; } context.Entry(det).State = EntityState.Modified; context.SaveChanges(); transaction.Commit(); return(new CreatedAtRouteResult("ObtenerArqueoCajaById", new { id = value.Id }, value)); } catch (Exception ex) { transaction.Rollback(); throw ex; } finally { transaction.Dispose(); } } }