示例#1
0
 /// <summary>
 /// Obtiene los parametros para obtener los costos de los fletes
 /// </summary>
 /// <param name="contrato"></param>
 /// <param name="entradaProducto"></param>
 /// <returns></returns>
 internal static Dictionary <string, object> ObtenerParametrosCostosFletes(ContratoInfo contrato, EntradaProductoInfo entradaProducto)
 {
     try
     {
         Logger.Info();
         var parametros =
             new Dictionary <string, object>
         {
             { "@ContratoID", contrato.ContratoId },
             { "@RegistroVigilanciaID", entradaProducto.RegistroVigilancia.RegistroVigilanciaId },
             { "@OrganizacionID", contrato.Organizacion.OrganizacionID },
             { "@Activo", (int)EstatusEnum.Activo }
         };
         return(parametros);
     }
     catch (Exception ex)
     {
         Logger.Error(ex);
         throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex);
     }
 }
示例#2
0
        /// <summary>
        /// Genera el documento de la boleta recepción forraje.
        /// </summary>
        /// <param name="etiquetas"></param>
        /// <param name="entradaProducto"></param>
        private void ImpresionBoletaRecepcionForraje(ImpresionBoletaRecepcionInfo etiquetas, EntradaProductoInfo entradaProducto)
        {
            var impresionBl = new ImpresionBoletaRecepcionBL();

            impresionBl.ImprimirBoletaForraje(etiquetas, entradaProducto);
        }
示例#3
0
        /// <summary>
        /// Genera el documento de la boleta de recepcion.
        /// </summary>
        /// <param name="datosReporte"></param>
        /// <param name="entradaProducto"></param>
        internal void ImpresionBoletaRecepcion(ImpresionBoletaRecepcionInfo datosReporte, EntradaProductoInfo entradaProducto)
        {
            try
            {
                if (datosReporte != null && entradaProducto != null)
                {
                    var subfamilia = entradaProducto.Producto.SubFamilia;

                    if (subfamilia != null)
                    {
                        if (subfamilia.SubFamiliaID == ((int)SubFamiliasEnum.Forrajes))
                        {
                            ImpresionBoletaRecepcionForraje(datosReporte, entradaProducto);
                        }
                        else
                        {
                            ImpresionBoletaRecepcionMateriaPrima(datosReporte, entradaProducto);
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                Logger.Error(exception);
                throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), exception);
            }
        }
示例#4
0
        /// <summary>
        /// Genera el documento de la boleta recepcion de materia prima.
        /// </summary>
        /// <param name="etiquetas"></param>
        /// <param name="entradaProducto"></param>
        private void ImpresionBoletaRecepcionMateriaPrima(ImpresionBoletaRecepcionInfo etiquetas, EntradaProductoInfo entradaProducto)
        {
            var impresionBl = new ImpresionBoletaRecepcionBL();

            impresionBl.ImprimirBoletaMateriaPrima(etiquetas, entradaProducto);
        }
        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);
        }