示例#1
0
 def post(self):
     us_id = self.request.matchdict['us_id']
     data = self.get_json_body()
     tuserroldao = TUserRolDao(self.dbsession)
     tuserroldao.asociar(us_id=us_id, roles_list=data.get('matriz'))
     msg = 'Operacion Exitosa'
     return {'estado': 200, 'msg': msg}
示例#2
0
    def update_nomapel(self, id_user, nomapel, user_name, roles):
        """
        Actualiza el nombre del usuario
        :param id_user:
        :param us_nomapel:
        :return:
        """

        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")

        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        if tuser is not None:

            if cadenas.strip(user_name) != cadenas.strip(tuser.us_name):
                if self.existe(user_name):
                    raise ErrorValidacionExc(
                        "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                        .format(user_name))

            tuser.us_nomapel = nomapel.upper()
            tuser.us_name = user_name

        # Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=id_user, roles_list=roles)
示例#3
0
    def get(self):
        us_id = self.request.matchdict['us_id']

        tuserroldao = TUserRolDao(self.dbsession)
        accion = self.get_request_param('accion')
        if accion is not None and accion == 'getrolesu':
            roles_user = tuserroldao.get_roles_json(us_id=us_id)
            return {'estado':200, 'roles':roles_user}

        matrizroles = tuserroldao.get_matriz_roles(us_id=us_id)

        return {'estado': 200, 'matriz': matrizroles}
示例#4
0
    def crear_usuario(self,
                      user_name,
                      nomapel,
                      password,
                      rpassword,
                      roles=None):
        """
        Registra un nuevo usuario en el sistema
        :param user_name:
        :param password:
        :param rpassword:
        :param roles:
        :return:
        """

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")
        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")
        if not cadenas.es_nonulo_novacio(password):
            raise ErrorValidacionExc("Debe ingresar la clave inicial")
        if not cadenas.es_nonulo_novacio(rpassword):
            raise ErrorValidacionExc("Ingrese la confirmación del clave")

        if self.existe(user_name):
            raise ErrorValidacionExc(
                "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                .format(user_name))

        if password is None or len(password.strip()) < 4:
            raise ErrorValidacionExc(
                "Por favor ingrese la clave, debe ser mínimo de 4 caracteres")

        if (password != rpassword):
            raise ErrorValidacionExc(
                "Las claves ingresadas no coinciden, favor verificar")

        tuser = TUser()
        tuser.us_name = user_name
        tuser.us_pass = password
        tuser.us_datecreated = datetime.now()
        tuser.us_status = 0  #
        tuser.us_statusclave = 0
        tuser.us_nomapel = nomapel.upper()

        self.dbsession.add(tuser)
        self.dbsession.flush()

        #Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=tuser.us_id, roles_list=roles)
示例#5
0
    def update_nomapel(self, id_user, nomapel, user_name, roles, user_edit):
        """
        Actualiza el nombre del usuario
        :param id_user:
        :param us_nomapel:
        :return:
        """

        if not cadenas.es_nonulo_novacio(nomapel):
            raise ErrorValidacionExc(
                "Debe ingresar los apellidos y nombres del usuario")

        if not cadenas.es_nonulo_novacio(user_name):
            raise ErrorValidacionExc("Debe ingresar el nombre de usuario")

        tuser = self.dbsession.query(TUser).filter(
            TUser.us_id == id_user).first()

        form = {}
        form['us_nomapel'] = nomapel
        form['user_name'] = user_name

        if tuser is not None:

            tuser_cloned = copy.copy(tuser)

            if cadenas.strip(user_name) != cadenas.strip(tuser.us_name):
                if self.existe(user_name):
                    raise ErrorValidacionExc(
                        "Ya existe una cuenta de usuario con el nombre:{0}, elija otro"
                        .format(user_name))

            tuser.us_nomapel = nomapel.upper()
            tuser.us_name = user_name

            tauditdao = TAuditDao(self.dbsession)
            list_cambios = checkcambioutil.valor_cambiado(
                tuser_cloned.__json__(), form)
            if list_cambios is not None and len(list_cambios) > 0:
                for row in list_cambios:
                    col = row['col']
                    valorant = row['valorant']
                    valordesp = row['valordesp']
                    tauditdao.crea_accion_update(enums.TBL_USUARIOS, col,
                                                 user_edit, valorant,
                                                 valordesp, tuser.us_id)

        # Registro de la matriz de roles
        tuserroldao = TUserRolDao(self.dbsession)
        tuserroldao.asociar(us_id=id_user,
                            roles_list=roles,
                            user_crea=user_edit)