def index(request): if request.user.is_superuser: record_list = Record.objects.all() show_operator = True elif len(Job.objects(users=str(request.user))) != 0: record_list = [] job_list = [job.name for job in Job.objects(users=str(request.user)).values_list('builders')] for record in Record.objects.all(): if record.job in job_list: record_list.append(record) show_operator = True else: record_list = Record.objects.filter(user=str(request.user)) show_operator = False job_list = [] operator_list = [] result_list = [] for record in record_list: record.start_time = (datetime.utcfromtimestamp(int(record.start_time)) + timedelta(hours=8)).\ strftime('%Y-%m-%d %H:%M:%S') job_list.append(record.job) operator_list.append(record.user) result_list.append(record.result) if record.finish_time != 0: record.finish_time = (datetime.utcfromtimestamp(int(record.finish_time)) + timedelta(hours=8)).\ strftime('%Y-%m-%d %H:%M:%S') else: record.finish_time = '' job_list = sorted(set(job_list)) operator_list = sorted(set(operator_list)) result_list = sorted(set(result_list)) context = { 'record_list': record_list[::-1], 'job_list': job_list, 'operator_list': operator_list, 'result_list': result_list, 'user': request.user, 'show_operator': show_operator, } return render(request, 'history/index.html', context)
def index(request): if request.user.is_superuser: job_list = Job.objects.all() server_list = Server.objects.all() else: job_list = Job.objects(users=str(request.user)) server_list = Server.objects(users=str(request.user)) user_list = User.objects.all() context = { 'job_list': job_list, 'server_list': server_list, 'user_list': user_list } return render(request, 'permission/index.html', context)
def record_filter(request): filter_kwargs = { 'job': request.POST.get('job_name', None), 'user': request.POST.get('operator', None), 'result': request.POST.get('result', None), 'start_time__gte': request.POST.get('date_after', None), 'finish_time__lte': request.POST.get('date_before', None) } for key in filter_kwargs.keys(): if filter_kwargs[key] is None: del filter_kwargs[key] if 'start_time__gte' in filter_kwargs: date_str = str(filter_kwargs['start_time__gte']) date = datetime.strptime(date_str, '%Y-%m-%d') - timedelta(hours=8) filter_kwargs['start_time__gte'] = unicode(calendar.timegm(date.utctimetuple())) if 'finish_time__lte' in filter_kwargs: date_str = str(filter_kwargs['finish_time__lte']) + ' 23:59:59' date = datetime.strptime(date_str, '%Y-%m-%d %H:%M:%S') - timedelta(hours=8) filter_kwargs['finish_time__lte'] = unicode(calendar.timegm(date.utctimetuple())) if len(set(filter_kwargs.values())) == 0: if request.user.is_superuser: record_list = Record.objects.all() show_operator = True elif len(Job.objects(users=str(request.user))) != 0: record_list = [] job_list = [job.name for job in Job.objects(users=str(request.user)).values_list('builders')] for record in Record.objects.all(): if record.job in job_list: record_list.append(record) show_operator = True else: record_list = Record.objects.filter(user=str(request.user)) show_operator = False else: if request.user.is_superuser: record_list = Record.objects.filter(**filter_kwargs) show_operator = True elif len(Job.objects(users=str(request.user))) != 0: record_list = [] job_list = [job.name for job in Job.objects(users=str(request.user)).values_list('builders')] for record in Record.objects.filter(**filter_kwargs): if record.job in job_list: record_list.append(record) show_operator = True else: record_list = Record.objects.filter(user=str(request.user)) show_operator = False job_list = [] operator_list = [] result_list = [] for record in record_list: record.start_time = (datetime.utcfromtimestamp(int(record.start_time)) + timedelta(hours=8)).\ strftime('%Y-%m-%d %H:%M:%S') job_list.append(record.job) operator_list.append(record.user) result_list.append(record.result) if record.finish_time != 0: record.finish_time = (datetime.utcfromtimestamp(int(record.finish_time)) + timedelta(hours=8)).\ strftime('%Y-%m-%d %H:%M:%S') else: record.finish_time = '' job_list = sorted(set(job_list)) operator_list = sorted(set(operator_list)) result_list = sorted(set(result_list)) context = { 'record_list': record_list[::-1], 'job_list': job_list, 'operator_list': operator_list, 'result_list': result_list, 'user': request.user, 'show_operator': show_operator, } return render(request, 'history/index.html', context)
def edit_job_user(request): if request.method == 'POST': Job.objects(builders__name=request.POST.get('job_name', '')).\ update_one(set__users=list(request.POST.getlist('job_users[]'))) return HttpResponse()
def get_job_user(request): try: job = Job.objects(builders___name=request.POST.get(job_name, '')).first() return HttpResponse(', '.join([str(user) for user in job.users])) except: return HttpResponse('')