def get(self, request): """ 点击被测评人中的修改 :param request: :return: """ ret = BaseResponse() try: # 单位 department = Department.objects.values('department') for each in department: each['value'] = each['department'] # 职务 zhiwu = Zhiwu.objects.filter(id__in=[2, 3, 4, 5]).values('name') for each in zhiwu: each['value'] = each['name'] # 职级 rank = Rank.objects.values('rank', 'number') condition = { 'department': department, 'zhiwu': zhiwu, 'rank': rank } ret.info = condition return Response(ret.dict) except Exception as e: pass
def post(self, request): """ 生成折线图 :param request: :return: """ ret = BaseResponse() recieve = request.data data = [] try: result = recieve['result'] # 结果 category = recieve['category'] # 分类 department = recieve['department'] # 单位 index = recieve['index'] # 指标 if category == 'xueyuan': lst = [] for i in index: index_name = xygbIndexWeight.objects.filter( code='00{}'.format(i[5:])).values_list('index', flat=True)[0] lst.append(str(index_name)) elif category == 'jiguan': lst = [] for i in index: index_name = jggbIndexWeight.objects.filter( code='00{}'.format(i[5:])).values_list('index', flat=True)[0] lst.append(index_name) elif category == 'zhishudanwei': lst = [] for i in index: index_name = zsdwgbIndexWeight.objects.filter( code='00{}'.format(i[5:])).values_list('index', flat=True)[0] lst.append(index_name) for i in result: score = [] for index_id in index: if i.get(index_id, None): score.append(i[index_id]) data.append({'label': i['beiceping_id__name'], 'data': score}) options = { 'type': 'line', 'title': { 'text': department }, 'bgColor': '#fbfbfb', 'labels': lst, 'datasets': data } ret.code = 201 ret.data = '数据加载成功' ret.info = options except Exception as e: ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) return Response(ret.dict)
def post(self, request): """ 班子考核结果报表 :param request: :return: """ ret = BaseResponse() data = request.data try: year = data['year'] # 年份(前台默认传过来当前年份) beiceping = data['beiceping'] # 单位 if not year: year = datetime.datetime.now().year # 当前年份 if beiceping: obj = Bzresult.objects.filter(year=year, beiceping=beiceping).values() else: obj = Bzresult.objects.filter( year=year).values().order_by('rankingOfAll') if not obj: ret.code = 208 ret.data = '没有对应内容' return Response(ret.dict) ret.code = 201 ret.data = '数据加载成功' ret.info = obj except Exception as e: ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) return Response(ret.dict)
def get(self, request): """ 返回班子信息 :param request: :return: """ ret = BaseResponse() data = {} try: data['tableName'] = [ {'index': 'department_id', 'name': '被测评单位'}, {'index': 'number_id', 'name': '单位名'}, {'index': 'type', 'name': '类别'}, {'index': 'cePing', 'name': '是否测评'}, ] obj = BzTjInfo.objects.values() data['obj'] = list(obj) except Exception as e: ret.code = 0 ret.error = '加载失败' return JsonResponse(ret.dict) ret.code = 1 ret.data = '加载成功' ret.info = data return JsonResponse(ret.dict)
def get(self, request): """ 点击考核结果查询,点击班子按钮,会将各种查询条件反馈到前台 :param request: :return: """ ret = BaseResponse() condition = {} # 存储各种条件 name = [{ 'name': '被测评单位', 'index': 'beiceping_id__department' }, { 'name': '人数', 'index': 'count' }, { 'name': '得分', 'index': 'score' }] department = request.GET.get('department') try: if department == 'xueyuan': dep = Department.objects.filter(category='学院').values( 'department') # 单位名 index = xybzIndexWeight.objects.filter( index__isnull=False, weight__isnull=False).values('index') # 学院班子指标 for i in range(0, len(index)): name.append({ 'name': '{}'.format(index[i]['index']), 'index': 'index{}'.format(i + 1) }) elif department == 'zhishudanwei': dep = Department.objects.filter(category='直属单位').values( 'department') # 单位名 index = zsdwbzIndexWeight.objects.filter( index__isnull=False, weight__isnull=False).values('index') # 直属单位班子指标 index19 = BzCpWeight.objects.filter(code='001').values_list( 'name', flat=True)[0] # 校领导权重 index20 = BzCpWeight.objects.filter(code='002').values_list( 'name', flat=True)[0] # 党政负责人权重 index21 = BzCpWeight.objects.filter(code='003').values_list( 'name', flat=True)[0] # 单位职工师生代表权重 for i in range(0, len(index)): name.append({ 'name': '{}'.format(index[i]['index']), 'index': 'index{}'.format(i + 1) }) name.append({'name': '{}'.format(index19), 'index': 'index19'}) name.append({'name': '{}'.format(index20), 'index': 'index20'}) name.append({'name': '{}'.format(index21), 'index': 'index21'}) for i in range(0, len(index)): index[i]['id'] = 'index{}'.format(i + 1) condition['dep'] = dep condition['index'] = index condition['table_name'] = name ret.info = condition except Exception as e: pass return Response(ret.dict)
def get(self, request): """ 点击测评人中的修改 :param request: :return: """ ret = BaseResponse() try: # 单位 department = Department.objects.values('department') for each in department: each['value'] = each['department'] # 职务 zhiwu = Zhiwu.objects.values('name') for each in zhiwu: each['value'] = each['name'] # 职级 rank = Rank.objects.values('rank', 'number') # 岗位 post = BzTjInfo.objects.values('department', 'number') # 特殊人员身份 special = SpecialStatus.objects.values('name', 'code') condition = { 'department': department, 'zhiwu': zhiwu, 'rank': rank, 'post': post, 'special': special, 'status': [ { 'label': '已测评', 'value': 1 }, { 'label': '未测评', 'value': 0 }, ] } ret.info = condition return Response(ret.dict) except Exception as e: pass
def post(self, request): """ 登录接口 :param request: :return: """ ret = BaseResponse() data = {} username = request.data.get('username') pwd = request.data.get('password') role = request.data.get('role') # 超级管理员或者二级管理员 hash_pwd = hashlib.md5(pwd.encode()).hexdigest() try: user_obj = User.objects.filter(username=username, password=hash_pwd).first() if not user_obj: ret.code = 101 ret.error = '用户名或密码错误' return JsonResponse(ret.dict) elif user_obj: if str(user_obj.roles) == role: data['role'] = role data['dep'] = str(user_obj.department) # 登录成功 # 将权限信息写入到session # 1.查当前登录用户拥有的权限 permission_list = User.objects.filter(username=username).values_list('roles__permissions__url').distinct() # 2.将权限信息写入到session request.session[settings.PERMISSION_SESSION_KEY] = list(permission_list) request.session['cepingId'] = username request.session['role'] = role # 增加这个是为了只对二级管理员处理 if role == '二级管理员': request.session['department'] = str(user_obj.department) data['username'] = username # 生成token # user_obj.token = uuid.uuid4() # user_obj.save() ret.code = 103 ret.info = data ret.data = '登录成功' else: ret.code = 110 ret.data = '请选择正确的身份权限' return JsonResponse(ret.dict) except Exception as e: ret.code = 102 ret.error = '登录失败' return JsonResponse(ret.dict) return JsonResponse(ret.dict)
def get(self, request): """ 账户信息 :param request: :return: """ ret = BaseResponse() data = {} try: super_ad = list(User.objects.filter(roles_id=1).values('username')) lower_ad = list(User.objects.filter(roles_id=2).values('username', 'department__department')) data['super'] = super_ad data['lower'] = lower_ad ret.code = 201 ret.data = '数据加载成功' ret.info = data except Exception as e: ret.code = 202 ret.data = '数据加载失败' return JsonResponse(ret.dict) return JsonResponse(ret.dict)
def get(self, request): """ 点击考核结果查询的测评情况,会将各个单位加载出来 :param request: :return: """ ret = BaseResponse() department = request.GET.get('department') try: if department == 'xueyuan': dep = Department.objects.filter(category='学院').values( 'department') # 学院单位名 elif department == 'jiguan': dep = Department.objects.filter(category='机关').values( 'department') # 机关单位名 elif department == 'zhishudanwei': dep = Department.objects.filter(category='直属单位').values( 'department') # 直属单位单位名 ret.info = dep except Exception as e: pass return Response(ret.dict)
def post(self, request): """ 追踪测评情况,点击查询按钮 :param request: :return: """ ret = BaseResponse() data = request.data status_result = {} category = data['category'] # 学院、机关、直属单位 department = data['department'] # 单位名 try: if department: status_finish = Ceping.objects.filter( department__category=category, department=department, status=1).values('department_id', 'IDcard', 'name') status_unfinish = Ceping.objects.filter( department__category=category, department=department, status=0).values('department_id', 'IDcard', 'name') else: status_finish = Ceping.objects.filter( department__category=category, status=1).values('department_id', 'IDcard', 'name') status_unfinish = Ceping.objects.filter( department__category=category, status=0).values('department_id', 'IDcard', 'name') status_result['finish'] = status_finish status_result['unfinish'] = status_unfinish except Exception as e: ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) ret.code = 201 ret.data = '数据加载成功' ret.info = status_result return Response(ret.dict)
def get(self, request): """ 干部返回前台数据 :param request: :return: """ ret = BaseResponse() data = {} try: data['flag'] = [{'flag': '正处'}, {'flag': '副处'}] data['category'] = [ { 'category': '机关' }, { 'category': '学院' }, { 'category': '直属单位' }, ] year_obj = Gbresult.objects.values('year').distinct() # 返回年份 data['year'] = year_obj xyDep_obj = Department.objects.filter( category='学院').values('department') for each in xyDep_obj: each['value'] = each['department'] each['label'] = each['department'] jgDep_obj = Department.objects.filter( category='机关').values('department') for each in jgDep_obj: each['value'] = each['department'] each['label'] = each['department'] zsdwDep_obj = Department.objects.filter( category='直属单位').values('department') for each in zsdwDep_obj: each['value'] = each['department'] each['label'] = each['department'] data['options'] = \ [{ 'value': 'jiguan', 'label': '机关', 'children': jgDep_obj }, { 'value': 'xueyuan', 'label': '学院(科研机构)', 'children': xyDep_obj }, { 'value': 'zhishudanwei', 'label': '直属单位', 'children': zsdwDep_obj }] tablename_obj = [{ "name": "name", 'index': '姓名' }, { "name": "IDcard", 'index': '一卡通' }, { "name": "department", 'index': '单位' }, { "name": "category", 'index': '单位类别' }, { "name": "beiKaoHe", 'index': '标识' }, { "name": "year", 'index': '年份' }, { "name": "index1", 'index': '指标1' }, { "name": "index2", 'index': '指标2' }, { "name": "index3", 'index': '指标3' }, { "name": "index4", 'index': '指标4' }, { "name": "index5", 'index': '指标5' }, { "name": "index6", 'index': '指标6' }, { "name": "index7", 'index': '指标7' }, { "name": "index8", 'index': '指标8' }, { "name": "index9", 'index': '指标9' }, { "name": "index10", 'index': '指标10' }, { "name": "index11", 'index': '指标11' }, { "name": "index12", 'index': '指标12' }, { "name": "index13", 'index': '指标13' }, { "name": "index14", 'index': '指标14' }, { "name": "index15", 'index': '指标15' }, { "name": "index16", 'index': '指标16' }, { "name": "index17", 'index': '指标17' }, { "name": "index18", 'index': '指标18' }, { "name": "index19", 'index': '指标19' }, { "name": "index20", 'index': '指标20' }, { "name": "index21", 'index': '指标21' }, { "name": "index22", 'index': '指标22' }, { "name": "index23", 'index': '指标23' }, { "name": "score", 'index': '分数' }, { "name": "rankingOfLine", 'index': '条线排名' }, { "name": "rankingOfDep", 'index': '本单位排名' }, { "name": "rankingofCategory", 'index': '所属机构排名' }, { "name": "rankingOfAll", 'index': '全校排名' }, { "name": "TopTen", 'index': '前10%' }, { "name": "LastTen", 'index': '后10%' }, { "name": "Excellent", 'index': '优秀' }] data['tablename'] = tablename_obj ret.info = data except Exception as e: pass return Response(ret.dict)
def get(self, request): """ 班子返回前台数据 :param request: :return: """ ret = BaseResponse() data = {} try: year_obj = Bzresult.objects.values('year').distinct() # 返回年份 xyDep_obj = Department.objects.filter( category='学院').values('department') for each in xyDep_obj: each['value'] = each['department'] each['label'] = each['department'] zsdwDep_obj = Department.objects.filter( category='直属单位').values('department') for each in zsdwDep_obj: each['value'] = each['department'] each['label'] = each['department'] data['options'] = \ [{ 'value': 'xueyuan', 'label': '学院', 'children': xyDep_obj }, { 'value': 'zhishudanwei', 'label': '直属单位', 'children': zsdwDep_obj }] tablename_obj = [{ "name": "beiceping", 'index': '单位名' }, { "name": "year", 'index': '年份' }, { "name": "index1", 'index': '指标1' }, { "name": "index2", 'index': '指标2' }, { "name": "index3", 'index': '指标3' }, { "name": "index4", 'index': '指标4' }, { "name": "index5", 'index': '指标5' }, { "name": "index6", 'index': '指标6' }, { "name": "index7", 'index': '指标7' }, { "name": "index8", 'index': '指标8' }, { "name": "index9", 'index': '指标9' }, { "name": "index10", 'index': '指标10' }, { "name": "index11", 'index': '指标11' }, { "name": "index12", 'index': '指标12' }, { "name": "index19", 'index': '指标19' }, { "name": "index20", 'index': '指标20' }, { "name": "index21", 'index': '指标21' }, { "name": "score", 'index': '分数' }, { "name": "rankingOfLine", 'index': '条线排名' }, { "name": "rankingOfAll", 'index': '全校排名' }, { "name": "TopTen", 'index': '前10%' }, { "name": "LastTen", 'index': '后10%' }, { "name": "Excellent", 'index': '优秀' }] data['year'] = year_obj data['tablename'] = tablename_obj ret.info = data except Exception as e: pass return Response(ret.dict)
def post(self, request): """ 干部or个人考核结果报表 :param request: :return: """ ret = BaseResponse() data = request.data condition = {} conditions = {} is_dep = 0 try: year = data['year'] # 年份(前台默认传过来当前年份) name = data['name'] # 姓名 department = data['department'] # 单位 category = data['category'] # 类别 flag = data['flag'] # 标识 if name: condition['name__icontains'] = name conditions['name__icontains'] = name if department: condition['department'] = department is_dep = 1 if flag: condition['beiKaoHe__contains'] = flag conditions['beiKaoHe__contains'] = flag if year: condition['year'] = year conditions['year'] = year elif not year: year = datetime.datetime.now().year # 当前年份 condition['year'] = year conditions['year'] = year if category: obj = Gbresult.objects.filter( **conditions).values().order_by('rankingofCategory') elif category == '' and is_dep == 1: obj = Gbresult.objects.filter( **condition).values().order_by('rankingOfDep') elif category == '' and is_dep == 0: obj = Gbresult.objects.filter( **condition).values().order_by('rankingOfAll') if not obj: table = {} verbosename = Gbresult._meta.fields # 获取被导入数据库的字段 for name in verbosename: table['{}'.format(name.name)] = '' ret.code = 208 ret.data = '没有对应内容' ret.info = [table] return Response(ret.dict) ret.code = 201 ret.data = '数据加载成功' ret.info = obj except Exception as e: ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) return Response(ret.dict)
def post(self, request): """ 结果表查询 班子条件搜索 :param request: :return: """ ret = BaseResponse() data = request.data try: category = data['category'] # 分类 department = data['department'] # 单位 index = data['index'] # 指标 # if not department: # ret.code = 207 # ret.data = '请输入查询条件' # return Response(ret.dict) if department: dep_num = Department.objects.filter( department=department).values_list('number', flat=True)[0] if category == 'xueyuan': if not department: lst = [ 'beiceping_id__department', 'count', 'score', 'index1', 'index2', 'index3', 'index4', 'index5', 'index6', 'index7', 'index8', 'index9', 'index10', 'index11', 'index12' ] result = xybzResult.objects.values(*lst) else: lst = ['beiceping_id__department', 'count', 'score'] for i in index: lst.append(i) result = xybzResult.objects.filter( beiceping_id=dep_num).values(*lst) elif category == 'zhishudanwei': if not department: lst = [ 'beiceping_id__department', 'count', 'score', 'index1', 'index2', 'index3', 'index4', 'index5', 'index6', 'index7', 'index8', 'index9', 'index10', 'index11', 'index12', 'index19', 'index20', 'index21' ] result = zsdwbzResult.objects.values(*lst) else: lst = [ 'beiceping_id__department', 'count', 'score', 'index19', 'index20', 'index21' ] for i in index: lst.append(i) result = zsdwbzResult.objects.filter( beiceping_id=dep_num).values(*lst) ret.info = result ret.code = 201 ret.data = '数据加载成功' except Exception as e: print(e) ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) return Response(ret.dict)
def post(self, request): """ 结果表查询 干部条件搜索 :param request: :return: """ ret = BaseResponse() condition = {} # 存储filter条件 id_lst = [] # 存储人员ID data = request.data try: category = data['category'] # 分类 department = data['department'] # 单位 zhiwu = data['zhiwu'] # 职务 level = data['level'] # 职级 name = data['name'] # 姓名 index = data['index'] # 指标 if department: dep_num = Department.objects.filter( department=department).values_list('number', flat=True)[0] # 单位名 condition['depNum_id'] = dep_num # 单位名 if zhiwu: condition['zhiwu'] = zhiwu # 职务 if level: condition['level'] = level # 级别关系 if name: beiceping_id = Beiceping.objects.filter( name__contains=name).values_list('IDcard') for i in range(0, len(beiceping_id)): id_lst.append(beiceping_id[i][0]) condition['beiceping_id__in'] = id_lst # 人员列表 if category == 'xueyuan': lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index19', 'index20', 'index21', 'index22' ] for i in index: lst.append(i) result = xygbResult.objects.filter(**condition).values(*lst) if len(condition) == 0: lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index1', 'index2', 'index3', 'index4', 'index5', 'index6', 'index7', 'index8', 'index9', 'index10', 'index11', 'index12', 'index13', 'index14', 'index15', 'index16', 'index17', 'index18', 'index19', 'index20', 'index21', 'index22' ] result = xygbResult.objects.values(*lst) elif category == 'jiguan': lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index19', 'index20', 'index21', 'index22', 'index23' ] for i in index: lst.append(i) result = jggbResult.objects.filter(**condition).values(*lst) if len(condition) == 0: lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index1', 'index2', 'index3', 'index4', 'index5', 'index6', 'index7', 'index8', 'index9', 'index10', 'index11', 'index12', 'index13', 'index14', 'index15', 'index16', 'index17', 'index18', 'index19', 'index20', 'index21', 'index22', 'index23' ] result = jggbResult.objects.values(*lst) elif category == 'zhishudanwei': lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index19', 'index20', 'index21', 'index22', 'index23' ] for i in index: lst.append(i) result = zsdwgbResult.objects.filter(**condition).values(*lst) if len(condition) == 0: lst = [ 'beiceping_id__name', 'level', 'depNum_id__department', 'zhiwu', 'count', 'score', 'index1', 'index2', 'index3', 'index4', 'index5', 'index6', 'index7', 'index8', 'index9', 'index10', 'index11', 'index12', 'index13', 'index14', 'index15', 'index16', 'index17', 'index18', 'index19', 'index20', 'index21', 'index22', 'index23' ] result = zsdwgbResult.objects.values(*lst) ret.info = result # if len(condition) == 0: # ret.code = 207 # ret.data = '请输入查询条件' # return Response(ret.dict) ret.code = 201 ret.data = '数据加载成功' except Exception as e: ret.code = 202 ret.error = '数据加载失败' return Response(ret.dict) return Response(ret.dict)
def get(self, request): """ 点击考核结果查询,点击干部按钮,会将各种查询条件反馈到前台 :param request: :return: """ ret = BaseResponse() condition = {} # 存储各种条件 name = [{ 'name': '被测评人', 'index': 'beiceping_id__name' }, { 'name': '职级', 'index': 'level' }, { 'name': '单位名', 'index': 'depNum_id__department' }, { 'name': '职务', 'index': 'zhiwu' }, { 'name': '人数', 'index': 'count' }, { 'name': '得分', 'index': 'score' }] department = request.GET.get('department') try: if department == 'xueyuan': dep = Department.objects.filter(category='学院').values( 'department') # 学院单位名 index = xygbIndexWeight.objects.filter( index__isnull=False, weight__isnull=False).values('index') # 学院干部指标 # 返回生成表格的表头 index19 = GbCpWeight.objects.filter(code='001').values_list( 'name', flat=True)[0] # 学院校领导 index20 = GbCpWeight.objects.filter(code='002').values_list( 'name', flat=True)[0] # 班子成员 index21 = GbCpWeight.objects.filter(code='003').values_list( 'name', flat=True)[0] # 学院师生 index22 = GbCpWeight.objects.filter(code='004').values_list( 'name', flat=True)[0] # 对口机关 for i in range(0, len(index)): name.append({ 'name': '{}'.format(index[i]['index']), 'index': 'index{}'.format(i + 1) }) name.append({'name': '{}'.format(index19), 'index': 'index19'}) name.append({'name': '{}'.format(index20), 'index': 'index20'}) name.append({'name': '{}'.format(index21), 'index': 'index21'}) name.append({'name': '{}'.format(index22), 'index': 'index22'}) elif department == 'jiguan': dep = Department.objects.filter(category='机关').values( 'department') # 机关单位名 index = jggbIndexWeight.objects.filter( index__isnull=False, weight__isnull=False).values('index') # 机关干部指标 index19 = GbCpWeight.objects.filter(code='005').values_list( 'name', flat=True)[0] # 机关校领导权重 index20 = GbCpWeight.objects.filter(code='006').values_list( 'name', flat=True)[0] # 党政处级权重 index21 = GbCpWeight.objects.filter(code='007').values_list( 'name', flat=True)[0] # 党政科级及职工权重 index22 = GbCpWeight.objects.filter(code='008').values_list( 'name', flat=True)[0] # 学院领导权重 index23 = GbCpWeight.objects.filter(code='009').values_list( 'name', flat=True)[0] # 学院相关权重 for i in range(0, len(index)): name.append({ 'name': '{}'.format(index[i]['index']), 'index': 'index{}'.format(i + 1) }) name.append({'name': '{}'.format(index19), 'index': 'index19'}) name.append({'name': '{}'.format(index20), 'index': 'index20'}) name.append({'name': '{}'.format(index21), 'index': 'index21'}) name.append({'name': '{}'.format(index22), 'index': 'index22'}) name.append({'name': '{}'.format(index23), 'index': 'index23'}) elif department == 'zhishudanwei': dep = Department.objects.filter(category='直属单位').values( 'department') # 直属单位单位名 index = zsdwgbIndexWeight.objects.filter( index__isnull=False, weight__isnull=False).values('index') # 直属单位干部指标 index19 = GbCpWeight.objects.filter(code='010').values_list( 'name', flat=True)[0] # 直属单位校领导权重 index20 = GbCpWeight.objects.filter(code='011').values_list( 'name', flat=True)[0] # 单位班子权重 index21 = GbCpWeight.objects.filter(code='012').values_list( 'name', flat=True)[0] # 相关人员权重 index22 = GbCpWeight.objects.filter(code='013').values_list( 'name', flat=True)[0] # 直属单位学院领导权重 index23 = GbCpWeight.objects.filter(code='014').values_list( 'name', flat=True)[0] # 直属单位学院相关权重 for i in range(0, len(index)): name.append({ 'name': '{}'.format(index[i]['index']), 'index': 'index{}'.format(i + 1) }) name.append({'name': '{}'.format(index19), 'index': 'index19'}) name.append({'name': '{}'.format(index20), 'index': 'index20'}) name.append({'name': '{}'.format(index21), 'index': 'index21'}) name.append({'name': '{}'.format(index22), 'index': 'index22'}) name.append({'name': '{}'.format(index23), 'index': 'index23'}) for i in range(0, len(index)): index[i]['id'] = 'index{}'.format(i + 1) zhiwu = Beiceping.objects.values('beiKaoHe').distinct() # 职务 rank = [{ 'rank': '上级' }, { 'rank': '同级' }, { 'rank': '下级' }, { 'rank': '全体' }] # 级别关系 condition['dep'] = dep condition['zhiwu'] = zhiwu condition['rank'] = rank condition['index'] = index condition['table_name'] = name ret.info = condition except Exception as e: pass return Response(ret.dict)