public IList <CumplimientoDeEntrega> ObtenerCumplimientoDeEntregas(CumplimientoDeEntregaArgumento cumplimientoDeEntregaArgumento) { DbParameter[] parameters = { new OAParameter { ParameterName = "@VEHICLE_CODES", Value = cumplimientoDeEntregaArgumento.CodigosDeVehiculos } , new OAParameter { ParameterName = "@PILOT_CODES", Value = cumplimientoDeEntregaArgumento.CodigosDePilotos } , new OAParameter { ParameterName = "@START_DATE", Value = cumplimientoDeEntregaArgumento.FechaInicial } , new OAParameter { ParameterName = "@END_DATE", Value = cumplimientoDeEntregaArgumento.FechaFinal } }; return (BaseDeDatosServicio.ExecuteQuery <CumplimientoDeEntrega>(BaseDeDatosServicio.Esquema + ".OP_WMS_SP_GET_DELIVERY_COMPLIANCE_REPORT", CommandType.StoredProcedure, parameters).ToList()); }
private void _vista_UsuarioSeleccionoManifiestoDeCarga(object sender, CumplimientoDeEntregaArgumento e) { try { _vista.TareasCumplimientodeEntregas = CumplimientoDeEntregaServicio.ObtenerTrackingManifiesto(e); } catch (Exception exception) { InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message); } }
private void _vista_UsuarioDeseaObtenerImagenesDeEntrega(object sender, CumplimientoDeEntregaArgumento e) { try { _vista.ImagenesDeEntrega = CumplimientoDeEntregaServicio.ObtenerImagenesDeLaEntrega(e); } catch (Exception exception) { InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message); } }
public IList <TareaDeCumplimientoDeEntrega> ObtenerTrackingManifiesto(CumplimientoDeEntregaArgumento argumento) { var i = 0; var entregas = argumento.CumplimientosDeEntregas .Where(x => x.MANIFEST_HEADER_ID == argumento.IdManifiestoCarga) .OrderBy(e => e.SEQUENCE); var resultado = (entregas.GroupBy(detalle => detalle.TASK_ID) .Select(grupo => new TareaDeCumplimientoDeEntrega { PILOT_CODE = grupo.Max(x => x.PILOT_CODE), VEHICLE_CODE = grupo.Max(x => x.VEHICLE_CODE), ASSIGNED_STAMP = grupo.Min(x => x.ASSIGNED_STAMP), CLIENT_CODE = grupo.Max(x => x.CLIENT_CODE), CLIENT_NAME = grupo.Max(x => x.CLIENT_NAME), STATUS = grupo.Max(x => x.STATUS), DELAY = grupo.Max(x => x.DELAY ?? 0), GPS = grupo.Max(x => x.POSTED_GPS) == null || grupo.Max(x => x.POSTED_GPS)?.ToString().Trim() == "0,0" ? grupo.Max(x => x.EXPECTED_GPS) : grupo.Max(x => x.POSTED_GPS), MANIFEST_HEADER_ID = argumento.IdManifiestoCarga, PERCENTAGE = grupo.Max(x => x.PERCENTAGE), PILOT_NAME = grupo.Max(x => x.PILOT_NAME), REASON = grupo.Max(x => x.REASON), SEQUENCE = ++i, TASK_STATUS = grupo.Max(x => x.TASK_STATUS), VEHICLE_PLATE_NUMBER = grupo.Max(x => x.VEHICLE_PLATE_NUMBER), TASK_ID = grupo.Key, DOCUMENT_QTY = grupo.Select(g => g.DOC_NUM).Distinct().Count(), ACCEPTED_STAMP = grupo.Min(x => x.ACCEPTED_STAMP) == null ? DateTime.MinValue : grupo.Min(x => x.ACCEPTED_STAMP.Value), COMPLETED_STAMP = grupo.Max(x => x.COMPLETED_STAMP) == null ? DateTime.MinValue : grupo.Min(x => x.COMPLETED_STAMP.Value), EstadoTarea = grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Cancelado)) ? (int)EstadoTareaDeEntrega.Cancelada : grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Entregado)) ? (int)EstadoTareaDeEntrega.Completa : grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Pendiente)) ? (int)EstadoTareaDeEntrega.Pendiente : (int)EstadoTareaDeEntrega.Parcial, PICKING_DEMAND_STATUS = grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Cancelado)) ? EstadoTareaDeEntrega.Cancelada : grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Entregado)) ? EstadoTareaDeEntrega.Completa : grupo.All(x => x.PICKING_DEMAND_STATUS == Enums.GetStringValue(EstadoEntregaDocumento.Pendiente)) ? EstadoTareaDeEntrega.Pendiente : EstadoTareaDeEntrega.Parcial, DELIVERY_NOTE_ID = grupo.Max(x => x.DELIVERY_NOTE_ID), }) ).ToList(); var siguiente = resultado.Where(x => x.EstadoTarea == (int)EstadoTareaDeEntrega.Pendiente).OrderBy(y => y.SEQUENCE).FirstOrDefault(); if (siguiente != null) { siguiente.EstadoTarea = (int)EstadoTareaDeEntrega.Siguiente; } return(resultado); }
public IList <CumplimientoDeEntrega> ObtenerImagenesDeLaEntrega(CumplimientoDeEntregaArgumento cumplimientoDeEntregaArgumento) { DbParameter[] parameters = { new OAParameter { ParameterName = "@DELIVERY_NOTE_ID", Value = cumplimientoDeEntregaArgumento.DeliveryNoteId } }; return (BaseDeDatosServicio.ExecuteQuery <CumplimientoDeEntrega>(BaseDeDatosServicio.Esquema + ".OP_WMS_GET_IMAGE_OF_THE_DELIVERY", CommandType.StoredProcedure, parameters).ToList()); }
public void ObtenerManifiestoSeleccionado() { var argumentoCumplimiento = new CumplimientoDeEntregaArgumento { CodigosDeVehiculos = "17|19|21|25", CodigosDePilotos = "20", FechaInicial = new DateTime(2017, 10, 19), FechaFinal = new DateTime(2017, 11, 19), }; var resultadoManifiestos = CumplimientoDeEntregaServicio.ObtenerCumplimientoDeEntregas(argumentoCumplimiento); argumentoCumplimiento.CumplimientosDeEntregas = resultadoManifiestos; argumentoCumplimiento.IdManifiestoCarga = 2152; var resultadoManifiestoTareas = CumplimientoDeEntregaServicio.ObtenerTrackingManifiesto(argumentoCumplimiento); Assert.IsNotNull(resultadoManifiestoTareas); }