private bool ValidarCorralesActivos() { var pl = new OrdenSacrificioPL(); bool result = false; var detSeleccionado = new List <OrdenSacrificioDetalleInfo>(); foreach (var d in Modelo.DetalleOrden) { if (d.Seleccionar == 1) { detSeleccionado.Add(d); } } var corralesConLote = pl.ValidarCorralConLotesActivos(organizacionId, detSeleccionado); var mensaje = string.Empty; foreach (var ccl in corralesConLote) { mensaje = mensaje != string.Empty ? string.Format("{0}, {1}", mensaje, ccl) : string.Format("{0}", ccl); } if (mensaje != string.Empty) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], string.Format(Properties.Resources.CancelacionOrdenSacrificio_MsjCorralesConLote, mensaje), MessageBoxButton.OK, MessageImage.Warning); } else { result = true; } return(result); }
private void CancelarSoloOrdenSIAP() { var osPl = new OrdenSacrificioPL(); string fecha = dtpFecha.SelectedDate.Value.ToString("yyyy-MM-dd"); var detSeleccionado = new List <OrdenSacrificioDetalleInfo>(); foreach (var d in Modelo.DetalleOrden) { if (d.Seleccionar == 1) { detSeleccionado.Add(d); } } var xml = ArmarXMLGuardar(detSeleccionado, fecha); if (osPl.ValidaCancelacionCabezasSIAP(xml, Modelo.OrdenSacrificioID, usuarioId)) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_GuardarExito, MessageBoxButton.OK, MessageImage.Correct); ObtenerOrdenSacrificio(); } else { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ErrorCancelarOS, MessageBoxButton.OK, MessageImage.Correct); } }
public static Respuesta <Obtener_Sacrificio_Model> Obtener_Sacrificio(Peticion <Obtener_Sacrificio_Request> req) { var feedBack = new Respuesta <Obtener_Sacrificio_Model> { Mensaje = string.Empty, Resultado = false, Datos = new Obtener_Sacrificio_Model() }; try { var seguridad = (SeguridadInfo)HttpContext.Current.Session["Seguridad"]; var fechaSacrificio = req.Datos.FechaSacrificio.ToString("yyyy-MM-dd"); var pl = new OrdenSacrificioPL(); var resultScp = pl.ObtenerResumenSacrificioScp(fechaSacrificio, seguridad.Usuario.OrganizacionID); resultScp.ForEach(e => e.OrganizacionID = seguridad.Usuario.OrganizacionID); if (resultScp.Any()) { var resultSiap = pl.ObtenerResumenSacrificioSiap(resultScp); feedBack.Datos.TotalCabezas = resultScp.Count; feedBack.Datos.Organizacion = seguridad.Usuario.Organizacion.Descripcion; feedBack.Datos.Sacrificio = resultSiap.ToArray(); feedBack.Resultado = true; } else { feedBack.Mensaje = string.Format("No se encontraron registros para la fecha de sacrifico especificada {0}.", req.Datos.FechaSacrificio.ToString("yyyy-MM-dd")); } } catch (Exception ex) { Logger.Error(ex); feedBack.Mensaje = string.Format("Ocurrió un error al obtener sacrificio.: " + ex.Message); } return(feedBack); }
public void ObtenerOrdenSacrificio() { string fecha = dtpFecha.SelectedDate.ToString(); datosDetalleOrden = new Dictionary <int, int>(); dicCabezas = new Dictionary <int, int>(); datoAnteriorCabezas = new Dictionary <int, int>(); var ordensacrificioPL = new OrdenSacrificioPL(); Modelo = ordensacrificioPL.OrdenSacrificioFecha(fecha, organizacionId); if (Modelo == null) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], string.Format(Properties.Resources.CancelacionOrdenSacrificio_NoExisteOS, fecha.Substring(0, 10)), MessageBoxButton.OK, MessageImage.Warning); } else { Modelo.DetalleOrden = ordensacrificioPL.ObtenerDetalleOrden(Modelo.OrdenSacrificioID); if (Modelo.DetalleOrden != null) { if (Modelo.DetalleOrden.Count == 0) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ValidarExisteOS, MessageBoxButton.OK, MessageImage.Warning); } else { foreach (var od in Modelo.DetalleOrden) { if (od.Corral.TipoCorral.TipoCorralID != TipoCorral.Intensivo.GetHashCode() && od.CabezasActuales == 0) { od.Seleccionable = false; } listaOrdenDetalle.Add(od); } foreach (var dd in Modelo.DetalleOrden) { datosDetalleOrden.Add(dd.Lote.LoteID, dd.CabezasASacrificar); } Modelo.DetalleOrden.ToList().ForEach(e => { dicCabezas.Add(e.Lote.LoteID, e.CabezasASacrificar); datoAnteriorCabezas.Add(e.Lote.LoteID, e.CabezasASacrificar); }); gridOrdenesSacrificios.GetBindingExpression( DataGrid.ItemsSourceProperty) .UpdateTarget(); } } else { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ValidarExisteOS, MessageBoxButton.OK, MessageImage.Warning); } } }
public void ObtenerOrdenesSacrificio() { try { var ordenSacrificio = new OrdenSacrificioPL(); var seguridad = (SeguridadInfo)HttpContext.Current.Session["Seguridad"]; if (seguridad != null) { var ordenSacrificioDia = (new OrdenSacrificioInfo { OrganizacionID = seguridad.Usuario.Organizacion.OrganizacionID, FechaOrden = DateTime.Today, EstatusID = (int)Estatus.OrdenSacrificioPendiente }); var orden = ordenSacrificio.ObtenerOrdenSacrificioDelDia(ordenSacrificioDia); if (orden != null) { var listaBusqueda = (from item in orden.DetalleOrden select new { item.Corraleta.Codigo, item.Lote.Lote, item.Cabezas, item.CabezasASacrificar, FechaCreacion = DateTime.Today.Date, item.Usuario.Nombre, item.Lote.LoteID, item.Corraleta.CorralID, item.OrdenSacrificioDetalleID }).ToList(); gvBusqueda.DataSource = listaBusqueda; gvBusqueda.DataBind(); } else { gvBusqueda.DataSource = new List <OrdenSacrificioInfo>(); gvBusqueda.DataBind(); } } } catch (Exception ex) { Logger.Error(ex); } }
private bool ConsultarEstatus(List <OrdenSacrificioDetalleInfo> detalle) { var result = false; try { var pl = new OrdenSacrificioPL(); string fecha = dtpFecha.SelectedDate.Value.ToString("yyyy-MM-dd"); var lotes = pl.ConsultarEstatusOrdenSacrificioEnMarel(organizacionId, fecha, detalle); result = ObtenerLotesConDeterminadoEstatus(lotes); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ErrorConsultarEstatus, MessageBoxButton.OK, MessageImage.Error); } return(result); }
private void btnImprimir_Click(object sender, RoutedEventArgs e) { try { if (gridOrdenesSacrificios.Items.Count > 0) { var ordenSacrificioPl = new OrdenSacrificioPL(); ordenSacrificioPl.ImprimirOrdenSacrificio(ObtenerEtiquetasImpresion(), Modelo.DetalleOrden); } else { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.OrdenSacrificio_ErrorImprimir, MessageBoxButton.OK, MessageImage.Warning); } } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ErrorInesperado, MessageBoxButton.OK, MessageImage.Error); } }
private void Guardar() { try { var osPl = new OrdenSacrificioPL(); var guardar = true; string fecha = dtpFecha.SelectedDate.Value.ToString("yyyy-MM-dd"); var detSeleccionado = new List <OrdenSacrificioDetalleInfo>(); foreach (var d in Modelo.DetalleOrden) { if (d.Seleccionar == 1) { detSeleccionado.Add(d); } } var xml = ArmarXMLGuardar(detSeleccionado, fecha); var xml2 = ArmarXMLGuardarMarel(detSeleccionado, fecha); if (AplicaEnvioMarel()) { if (ConsultarEstatus(detSeleccionado)) { if (!osPl.CancelacionOrdenSacrificioMarel(xml2, Modelo.OrganizacionID)) { guardar = false; SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ErrorCancelarOS, MessageBoxButton.OK, MessageImage.Correct); } } else { guardar = false; } } else { /// aqui hay que mover if (!osPl.CancelacionOrdenSacrificioSCP(xml, fecha, organizacionId)) { guardar = false; } } if (guardar) { if (osPl.ValidaCancelacionCabezasSIAP(xml, Modelo.OrdenSacrificioID, usuarioId)) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_GuardarExito, MessageBoxButton.OK, MessageImage.Correct); ObtenerOrdenSacrificio(); } else { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CancelacionOrdenSacrificio_ErrorCancelarOS, MessageBoxButton.OK, MessageImage.Correct); } } } catch (Exception ex) { Logger.Error(ex); throw; } }
public static int ObtenerHabilitarEstadoComedero(int loteID) { int resultado = 0; ProgramacionReimplantePL programacionReinplantePL = new ProgramacionReimplantePL(); OrdenSacrificioPL ordenSacrificioPL = new OrdenSacrificioPL(); LotePL lotePL = new LotePL(); LoteInfo lote = new LoteInfo(); OrdenSacrificioInfo orden = new OrdenSacrificioInfo(); try { var seguridad = (SeguridadInfo)HttpContext.Current.Session["Seguridad"]; int organizacionId = seguridad.Usuario.Organizacion.OrganizacionID; if (seguridad != null) { lote = lotePL.ObtenerPorId(loteID); if (lote != null) { //Se verifica si el corral va a Zilmax if (lote.FechaDisponibilidad.ToShortDateString() != DateTime.Now.ToShortDateString()) { resultado = 1; } //Se verifica si el corral va a reimplante if (resultado == 1) { List <ProgramacionReinplanteInfo> programacionReinplante = null; programacionReinplante = programacionReinplantePL.ObtenerProgramacionReimplantePorLoteID(lote); if (programacionReinplante.Count > 0) { if (programacionReinplante.First().Fecha.ToShortDateString() == DateTime.Now.ToShortDateString()) { resultado = 0; } } } //Se verifica si el corral va a sacrificio if (resultado == 1) { orden.FechaOrden = DateTime.Now; orden.OrganizacionID = organizacionId; orden.EstatusID = (int)Estatus.OrdenSacrificioPendiente; orden = ordenSacrificioPL.ObtenerOrdenSacrificioDelDia(orden); if (orden != null) { for (var i = 0; i < orden.DetalleOrden.Count; i++) { if (orden.DetalleOrden[i].Lote.LoteID == lote.LoteID) { resultado = 0; } } } } } } } catch (Exception ex) { Logger.Error(ex); } return(resultado); }