Beispiel #1
0
def get_accounts(mongo_id,
                 keyword=None,
                 page_num=None,
                 page_size=None,
                 operator=None):
    '''
    获取Account列表
    '''
    base_query = MongoAccountModel.objects.filter(mongo_id=mongo_id)
    if keyword:
        base_query = base_query.filter(username__icontains=keyword)
    total = base_query.count()
    objs = base_ctl.query_objs_by_page(base_query, page_num, page_size)
    has_password = False
    if operator and user_ctl.has_permission(
            operator.id, MongoAccountModel.PASSWORD_PERMISSION):
        has_password = True
    data_list = []
    for obj in objs:
        data = obj.to_dict(has_password=has_password)
        data_list.append(data)
    data = {
        'total': total,
        'data_list': data_list,
    }
    return data
Beispiel #2
0
 def _permission(self, user_id, url):
     '''
     权限验证
     '''
     from account.controllers.user import has_permission
     if not has_permission(user_id, url):
         raise errors.CommonError('权限不足,无法进行此操作')
Beispiel #3
0
def get_account(obj_id, operator=None):
    '''
    获取Account详情
    '''
    obj = base_ctl.get_obj(RdsAccountModel, obj_id)
    has_password = False
    if operator and user_ctl.has_permission(operator.id, RdsAccountModel.PASSWORD_PERMISSION):
        has_password = True
    data = obj.to_dict(has_password=has_password)
    data['rds'] = obj.rds.to_dict()
    return data
Beispiel #4
0
def get_jenkins_server(obj_id, operator=None):
    '''
    获取Jenkins服务
    '''
    obj = base_ctl.get_obj(JenkinsServerModel, obj_id)
    has_password = False
    if operator and user_ctl.has_permission(
            operator.id, JenkinsServerModel.PASSWORD_PERMISSION):
        has_password = True
    data = obj.to_dict(has_password=has_password)
    return data
Beispiel #5
0
def get_ldap_config(operator=None):
    '''
    获取LDAP配置信息
    '''
    obj = LdapConfigModel.objects.first()
    has_password = False
    if operator and user_ctl.has_permission(operator.id, LdapConfigModel.PASSWORD_PERMISSION):
        has_password = True
    if obj:
        data = obj.to_dict(has_password=has_password)
    else:
        data = LdapConfigModel.none_to_dict()
    return data
Beispiel #6
0
def get_jenkins_servers(page_num=None, page_size=None, operator=None):
    '''
    获取Jenkins服务列表
    '''
    base_query = JenkinsServerModel.objects
    total = base_query.count()
    objs = base_ctl.query_objs_by_page(base_query, page_num, page_size)
    has_password = False
    if operator and user_ctl.has_permission(
            operator.id, JenkinsServerModel.PASSWORD_PERMISSION):
        has_password = True
    data_list = []
    for obj in objs:
        data = obj.to_dict(has_password=has_password)
        data_list.append(data)
    data = {
        'total': total,
        'data_list': data_list,
    }
    return data
Beispiel #7
0
def get_database_accounts(obj_id, page_num=None, page_size=None, operator=None):
    '''
    获取Database关联账号列表
    '''
    base_query = RdsDatabaseAccountModel.objects.filter(database_id=obj_id)
    total = base_query.count()
    objs = base_ctl.query_objs_by_page(base_query, page_num, page_size)
    has_password = False
    if operator and user_ctl.has_permission(operator.id, RdsAccountModel.PASSWORD_PERMISSION):
        has_password = True
    data_list = []
    for obj in objs:
        data = obj.to_dict()
        data['account'] = obj.account.to_dict(has_password=has_password)
        data_list.append(data)
    data = {
        'total': total,
        'data_list': data_list,
    }
    return data