public ComprobanteDeliveryDto ObtenerComprobantePorId(long id) { using (var context = new ModeloGastronomiaContainer()) { var comprobante = context.Comprobantes.OfType <DAL.Delivery>() .Include("DetallesDeliveries") .Include("Cadete") .FirstOrDefault(x => x.Id == id); if (comprobante == null) { throw new ArgumentNullException("Error Grave"); } var comprobanteDto = new ComprobanteDeliveryDto() { // se debera validar que haya un cadete si o si Id = comprobante.Id, Total = comprobante.Total, ClienteId = comprobante.ClienteId, ClienteStr = string.Concat(comprobante.Cliente.Apellido, " ", comprobante.Cliente.Nombre), CadeteId = comprobante.CadeteId, Deliverie = string.Concat(comprobante.Cadete.Apellido, " ", comprobante.Cadete.Nombre), DelievirieLegajo = comprobante.Cadete.Legajo.ToString(), Descuento = comprobante.Descuento, Subtotal = comprobante.SubTotal, EstadoDelivery = comprobante.EstadoDelivery, Observacion = comprobante.Observacion }; if (comprobante.DetallesDeliveries != null && comprobante.DetallesDeliveries.Any()) { foreach (var detalle in comprobante.DetallesDeliveries) { comprobanteDto.ComprobanteDeliveryDetalletos.Add(new ComprobanteDeliveryDetalleDto { Id = detalle.Id, Descripcion = detalle.Descripcion, SubTotal = detalle.SubTotal, Codigo = detalle.Codigo, Cantidad = detalle.Cantidad, CodigoBarra = detalle.CodigoBarra, ComprobanteDeliveryId = detalle.DeliveryId, Precio = detalle.Precio, ProductoId = detalle.ProductoId }); } } return(comprobanteDto); } }
public ComprobanteDeliveryDto ObtenerComprobantePorCliente(long clienteId) { using (var context = new ModeloGastronomiaContainer()) { var comprobante = context.Comprobantes.OfType <Delivery>() .Include("DetallesDeliveries") .Include("Cliente") .FirstOrDefault(x => x.ClienteId == clienteId && x.EstadoDelivery == EstadoDelivery.EnProceso && x.EstadoDelivery != EstadoDelivery.Cobrado); if (comprobante == null) { throw new ArgumentNullException("Error Grave"); } var comprobanteDto = new ComprobanteDeliveryDto { Id = comprobante.Id, Total = comprobante.Total, ClienteId = comprobante.ClienteId, CadeteId = comprobante.EmpleadoId, Cadete = comprobante.EmpleadoId != null ? $"{comprobante.Empleado.Apellido} {comprobante.Empleado.Nombre}" : "No Asignado" }; if (comprobante.DetallesDeliveries != null && comprobante.DetallesDeliveries.Any()) { foreach (var detalle in comprobante.DetallesDeliveries) { comprobanteDto.ComprobanteDeliveryDetalleDtos.Add(new ComprobanteDeliveryDetalleDto { Id = detalle.Id, Descripcion = detalle.Descripcion, Codigo = detalle.Codigo, Cantidad = detalle.Cantidad, SubTotal = detalle.SubTotal, CodigoBarra = detalle.CodigoBarra, ComprobanteDeliveryId = detalle.DeliveryId, Precio = detalle.Precio, ProductoId = detalle.ProductoId }); } } return(comprobanteDto); } }
public ComprobanteDeliveryDto ObtenerComprobantePorId(long comprobanteId) { using (var context = new ModeloGastronomiaContainer()) { var comprobante = context.Comprobantes.OfType <Delivery>() .Include("DetallesDeliveries") .Include("Empleado") .FirstOrDefault(x => x.Id == comprobanteId && x.EstadoDelivery == EstadoDelivery.Cobrado && x.EstadoDelivery != EstadoDelivery.EnProceso && x.TipoComprobante == TipoComprobante.Impaga); var comprobanteDto = new ComprobanteDeliveryDto { Id = comprobante.Id, Total = comprobante.Total, CadeteId = comprobante.EmpleadoId, Cadete = "No Asignado", ClienteId = comprobante.ClienteId, Direccion = comprobante.DireccionEnvio }; if (comprobante.DetallesDeliveries != null && comprobante.DetallesDeliveries.Any()) { foreach (var detalle in comprobante.DetallesDeliveries) { comprobanteDto.ComprobanteDeliveryDetalleDtos.Add(new ComprobanteDeliveryDetalleDto { Id = detalle.Id, Descripcion = detalle.Descripcion, Codigo = detalle.Codigo, Cantidad = detalle.Cantidad, SubTotal = detalle.SubTotal, CodigoBarra = detalle.CodigoBarra, Precio = detalle.Precio, ProductoId = detalle.ProductoId, ComprobanteDeliveryId = detalle.DeliveryId }); } } return(comprobanteDto); } }
public void Crear(long clienteId, ComprobanteDeliveryDto dto) { using (var context = new ModeloGastronomiaContainer()) { var nuevoComprobane = new Delivery { Fecha = DateTime.Now, EstadoDelivery = EstadoDelivery.EnProceso, TipoComprobante = TipoComprobante.Impaga, ClienteId = clienteId, Recargo = 0m, DireccionEnvio = dto.Direccion, Total = dto.Total, Observacion = " ", EmpleadoId = dto.CadeteId }; context.Comprobantes.Add(nuevoComprobane); context.SaveChanges(); } }