Esempio n. 1
0
    def put(self, request, *args, **kwargs):
        """
        修改开启、关闭注册状态
        """
        try:
            user_id = request.user.user_id
            enterprise_id = request.user.enterprise_id
            admin = enterprise_user_perm_repo.get_user_enterprise_perm(
                user_id=user_id, enterprise_id=enterprise_id)
            is_regist = request.data.get("is_regist")
            if admin:

                if is_regist is False:
                    # 修改全局配置
                    config_service.update_config("REGISTER_STATUS", "no")

                    return Response(general_message(200, "close register",
                                                    "关闭注册"),
                                    status=200)
                else:
                    config_service.update_config("REGISTER_STATUS", "yes")
                    return Response(general_message(200, "open register",
                                                    "开启注册"),
                                    status=200)
            else:
                return Response(general_message(400, "no jurisdiction",
                                                "没有权限"),
                                status=400)
        except Exception as e:
            logger.exception(e)
            result = error_message(e.message)
            return Response(result, status=result["code"])
Esempio n. 2
0
 def make_user_as_admin_for_enterprise(self, user_id, enterprise_id):
     user_perm = enterprise_user_perm_repo.get_user_enterprise_perm(
         user_id, enterprise_id)
     if not user_perm:
         return enterprise_user_perm_repo.create_enterprise_user_perm(
             user_id, enterprise_id, "admin")
     return user_perm
Esempio n. 3
0
 def make_user_as_admin_for_enterprise(self, user_id, enterprise_id):
     user_perm = enterprise_user_perm_repo.get_user_enterprise_perm(
         user_id, enterprise_id)
     if not user_perm:
         token = self.generate_key()
         return enterprise_user_perm_repo.create_enterprise_user_perm(
             user_id, enterprise_id, "admin", token)
     return user_perm
Esempio n. 4
0
 def get_administrator_user_token(self, user):
     perm_list = enterprise_user_perm_repo.get_user_enterprise_perm(user.user_id, user.enterprise_id)
     if not perm_list:
         return None
     perm = perm_list[0]
     if not perm.token:
         perm.token = self.generate_key()
         perm.save()
     return perm.token
Esempio n. 5
0
 def get_administrator_user_by_token(self, token):
     perm = user_access_services.check_user_access_key(token)
     if not perm:
         perm = enterprise_user_perm_repo.get_by_token(token)
     if not perm:
         return None
     user = self.get_user_by_user_id(perm.user_id)
     permList = enterprise_user_perm_repo.get_user_enterprise_perm(
         user.user_id, user.enterprise_id)
     if not permList:
         return None
     return user
Esempio n. 6
0
 def is_user_admin_in_current_enterprise(self, current_user, enterprise_id):
     """判断用户在该企业下是否为管理员"""
     if current_user.enterprise_id != enterprise_id:
         return False
     user_perms = enterprise_user_perm_repo.get_user_enterprise_perm(current_user.user_id, enterprise_id)
     if not user_perms:
         users = user_repo.get_enterprise_users(enterprise_id).order_by("user_id")
         if users:
             admin_user = users[0]
             # 如果有,判断用户最开始注册的用户和当前用户是否为同一人,如果是,添加数据返回true
             if admin_user.user_id == current_user.user_id:
                 enterprise_user_perm_repo.create_enterprise_user_perm(current_user.user_id, enterprise_id, "admin")
                 return True
             else:
                 return False
     else:
         return True
 def get_user_in_enterprise_perm(self, user, enterprise_id):
     return enterprise_user_perm_repo.get_user_enterprise_perm(
         user.user_id, enterprise_id)