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
def _permission(self, user_id, url): ''' 权限验证 ''' from account.controllers.user import has_permission if not has_permission(user_id, url): raise errors.CommonError('权限不足,无法进行此操作')
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
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
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
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
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