示例#1
0
 private void ConsultarVigilanciaPorFolio()
 {
     try
     {
         if (iudFolio.Value.HasValue && iudFolio.Value.Value != 0)
         {
             var       registroVigilanciaPL = new RegistroVigilanciaPL();
             var       fechaPL       = new FechaPL();
             FechaInfo fechaServidor = fechaPL.ObtenerFechaActual();
             Contexto.RegistroVigilancia =
                 registroVigilanciaPL.ObtenerRegistroVigilanciaPorFolioTurno(Contexto.RegistroVigilancia);
             if (Contexto.RegistroVigilancia != null)
             {
                 if (Contexto.RegistroVigilancia.FechaLlegada < (fechaServidor.FechaActual.AddDays(-3)))
                 {
                     SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                       Properties.Resources.CapturaHumedad_FechaInvalida, MessageBoxButton.OK,
                                       MessageImage.Warning);
                     InicializaContexto();
                     return;
                 }
                 if (!ProductosHumedad.Contains(Contexto.RegistroVigilancia.Producto.ProductoId))
                 {
                     SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                       Properties.Resources.CapturaHumedad_ProductoNoValido, MessageBoxButton.OK,
                                       MessageImage.Warning);
                     InicializaContexto();
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                           Properties.Resources.CapturaHumedad_ErrorConsultarFolio, MessageBoxButton.OK,
                           MessageImage.Error);
     }
 }
        public static ResultadoValidacion GuardarEntradaProducto(EntradaProductoInfo entradaProducto, int Bandera)
        {
            try
            {
                var productoPl        = new ProductoPL();
                var resultado         = new ResultadoValidacion();
                var boletaRecepcionPl = new BoletaRecepcionForrajePL();
                var seguridad         = HttpContext.Current.Session["Seguridad"] as SeguridadInfo;
                if (seguridad != null)
                {
                    var entradaProductoPl = new EntradaProductoPL();
                    if (entradaProducto.Justificacion == null)
                    {
                        entradaProducto.Organizacion = new OrganizacionInfo {
                            OrganizacionID = seguridad.Usuario.Organizacion.OrganizacionID
                        };

                        entradaProducto.Producto = productoPl.ObtenerPorID(entradaProducto.Producto);
                        var tmpRegistro = new RegistroVigilanciaInfo
                        {
                            Producto     = entradaProducto.Producto,
                            Organizacion = entradaProducto.Organizacion
                        };

                        foreach (EntradaProductoDetalleInfo tmpDetalle in entradaProducto.ProductoDetalle)
                        {
                            var enumIndicador = (IndicadoresEnum)tmpDetalle.Indicador.IndicadorId;

                            foreach (var tmpIndicador in tmpDetalle.ProductoMuestras.Where(mue => mue.EsOrigen == EsOrigenEnum.Destino))
                            {
                                RegistroVigilanciaInfo registroVigelancia = boletaRecepcionPl.ObtenerRangos(tmpRegistro, enumIndicador);
                                if (registroVigelancia == null)
                                {
                                    resultado.Resultado = false;
                                    resultado.Mensaje   = boletaRecepcionPl.ObtenerMensajeRango() + " " + entradaProducto.Producto.ProductoDescripcion;

                                    return(resultado);
                                }
                                if (registroVigelancia.porcentajePromedioMin > tmpIndicador.Porcentaje || registroVigelancia.porcentajePromedioMax < tmpIndicador.Porcentaje)
                                {
                                    Bandera = 2;
                                }
                            }
                        }

                        //Bandera = 1.- Aprobada:2.- Pendiente por Autorizar;3.- Autorizado:
                        entradaProducto.Estatus = new EstatusInfo();

                        if (Bandera == 1)
                        {
                            entradaProducto.Estatus.EstatusId = (int)Estatus.Aprobado;
                        }
                        else
                        {
                            entradaProducto.Estatus.EstatusId = (int)Estatus.PendienteAutorizar;
                        }
                        entradaProducto.PesoBonificacion = 0;
                        var registroVigilanciaPl = new RegistroVigilanciaPL();
                        var registroVigilancia   = new RegistroVigilanciaInfo
                        {
                            FolioTurno   = entradaProducto.RegistroVigilancia.FolioTurno,
                            Organizacion =
                                new OrganizacionInfo {
                                OrganizacionID = seguridad.Usuario.Organizacion.OrganizacionID
                            }
                        };
                        entradaProducto.RegistroVigilancia = registroVigilanciaPl.ObtenerRegistroVigilanciaPorFolioTurno(registroVigilancia);
                        entradaProducto.UsuarioCreacionID  = seguridad.Usuario.UsuarioID;
                        entradaProducto.OperadorAnalista   = new OperadorInfo {
                            OperadorID = seguridad.Usuario.Operador.OperadorID
                        };
                        entradaProducto = entradaProductoPl.GuardarEntradaProducto(entradaProducto, (int)TipoFolio.EntradaProducto);

                        resultado.Resultado = true;
                        resultado.Control   = entradaProducto;
                        return(resultado);
                    }
                    entradaProducto.Organizacion = new OrganizacionInfo {
                        OrganizacionID = seguridad.Usuario.Organizacion.OrganizacionID
                    };
                    entradaProducto.Estatus = new EstatusInfo {
                        EstatusId = (int)Estatus.Autorizado
                    };
                    entradaProducto.UsuarioModificacionID = seguridad.Usuario.UsuarioID;
                    entradaProducto.OperadorAutoriza      = new OperadorInfo {
                        OperadorID = seguridad.Usuario.Operador.OperadorID
                    };
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }

            return(null);
        }