Esempio n. 1
0
        public IPatente ObtenerPatentePorPatente(long ramaId)
        {
            PatenteRama rama = autorizacionRamaBll.BuscarPorId(ramaId);

            ArmarHijos(rama, rama.Id);
            return(rama);
        }
Esempio n. 2
0
        private void ArmarHijos(IPatente patente, long patenteId)
        {
            IList <Patente> patentes = autorizacionDal.BuscarTodos(new Dictionary <String, object>
            {
                { "fk_patente", patenteId }
            }
                                                                   );

            foreach (Patente p in patentes)
            {
                if (p.Tipo == "rama")
                {
                    PatenteRama pr = new PatenteRama
                    {
                        Id     = p.Id,
                        Codigo = p.Codigo,
                    };
                    ArmarHijos(pr, pr.Id);
                    patente.agregarHijo(pr);
                }
                else
                {
                    patente.agregarHijo(p);
                }
            }
        }
Esempio n. 3
0
        /**
         *
         * Al usar este metodo se traen todos los permisos anidados del usuario.
         *  -Si el usuario tiene un permiso hijo, pero no a su padre el mismo no se podra acceder.
         *  Esto es asi porque si no tiene el permiso padre, no busca las patentes que este contiene.
         *
         * */
        public IPatente ObtenerPatentePorUsuario(Usuario usuario)
        {
            IList <PatenteRama> ramas = BuscarPatentesRama(usuario);

            foreach (var rama in ramas)
            {
                ArmarHijos(rama, rama.Id, usuario);
            }

            PatenteRama patenteReturn = new PatenteRama();

            patenteReturn.Codigo = "RAIZ";
            foreach (var r in ramas)
            {
                patenteReturn.agregarHijo(r);
            }
            return(patenteReturn);
        }