예제 #1
0
 def asignarDesasginarPer(self, id_rol, permisos):
     c_permiso = ControllerPermiso()
     permisos2 = self.getRol(id_rol).permisos
     respuesta = []
     for p in permisos:
         perm = c_permiso.getPermiso(p['id'])
         if not perm in permisos2 and p['dato']:
             temp = self.asignarPermisos(id_rol, perm.id)
             if temp == 'Exito':
                 respuesta.append({'error':0,'id':perm.id,'obs':temp})
             else:
                 respuesta.append({'error':1,'id':perm.id,'obs':temp})
     
     for p in permisos:
         if not (p['dato']):
             perm = c_permiso.getPermiso(p['id'])
             if perm in permisos2:
                 temp = self.desasignarPermisos(id_rol, perm.id)
                 if temp == 'Exito':
                     respuesta.append({'error':0,'id':perm.id,'obs':temp})
                 else:
                     respuesta.append({'error':2,'id':perm.id,'obs':temp})
                     
     
     return respuesta  
예제 #2
0
 def desasignarPermisos(self,id_rol,id_permiso):
     c_permiso = ControllerPermiso()
     rol = self.getRol(id_rol)
     permiso = c_permiso.getPermiso(id_permiso)
     
     if rol != None and permiso != None:
         rol.permisos.remove(permiso)
         try:
             db.session.merge(rol)
             db.session.commit()
         except Exception, error:
             db.session.rollback()
             return error
         return 'Exito'