This commit is contained in:
Dmitriy Andreev 2021-03-20 21:49:49 +03:00
commit d451ed15fe
6 changed files with 13 additions and 6 deletions

View File

@ -44,7 +44,7 @@ sudo apt install make
pip install --upgrade pip
pip install -r requirements.txt
./manage.py migrate
./manage.py shell -c "from django.contrib.auth import get_user_model; get_user_model().objects.create_superuser('vasya', '1@abc.net', 'promprog')"
./manage.py loaddata data.json
./manage.py runserver
```
Создать токен

View File

@ -191,6 +191,8 @@ ZENDESK_GROUPS = {
SOLVED_TICKETS_EMAIL = 'd.krikov@ngenix.net'
ZENDESK_MAX_AGENTS = 3
REST_FRAMEWORK = {
# Use Django's standard `django.contrib.auth` permissions,
# or allow read-only access for unauthenticated users.
@ -200,4 +202,3 @@ REST_FRAMEWORK = {
}
ONE_DAY = 12 # Количество часов в 1 рабочем дне

View File

@ -443,7 +443,7 @@ class StatisticData:
if first_log.old_role == ROLES['engineer']:
self.statistic[first_log.change_time.date()] += get_timedelta(first_log).total_seconds()
if last_log.new_role == ROLES['engineer']:
if last_log.new_role == ROLES['engineer']: #TODO отдельная функция
self.fill_daterange(last_log.change_time.date() + timedelta(days=1), self.end_date + timedelta(days=1))
if last_log.change_time.date() == timezone.now().date():
self.statistic[last_log.change_time.date()] += (
@ -455,7 +455,7 @@ class StatisticData:
if self.end_date == timezone.now().date():
self.statistic[self.end_date] = get_timedelta(None, timezone.now().time()).total_seconds()
for log_index in range(len(self.data) - 1):
for log_index in range(len(self.data) - 1): #TODO отдельная функция
if self.data[log_index].new_role == ROLES['engineer']:
current_log, next_log = self.data[log_index], self.data[log_index + 1]
if current_log.change_time.date() != next_log.change_time.date():

View File

@ -20,6 +20,10 @@
{% block content %}
<div class="container-md">
<div class="new-section">
<p class="row page-description">Свободных Мест: {{ licences_remaining }}</p>
</div>
{% block form %}
<form method="post">
{% csrf_token %}

View File

@ -14,7 +14,7 @@
<div class="container-md">
<div class="new-section">
<p class="row page-description">Основаная информация о странице</p>
<p class="row page-description">Свободных Мест: {{ licences_remaining }}</p>
</div>
<div class="row justify-content-center new-section">

View File

@ -19,7 +19,7 @@ from rest_framework import viewsets
from rest_framework.response import Response
from zenpy.lib.api_objects import User as ZenpyUser
from access_controller.settings import EMAIL_HOST_USER, ZENDESK_ROLES
from access_controller.settings import EMAIL_HOST_USER, ZENDESK_ROLES, ZENDESK_MAX_AGENTS
from main.extra_func import ZendeskAdmin
from main.extra_func import check_user_exist, update_profile, get_user_organization, \
make_engineer, make_light_agent, get_users_list, update_users_in_model, count_users, \
@ -131,6 +131,7 @@ def work_page(request, id):
context = {
'engineers': engineers,
'agents': light_agents,
'licences_remaining': max(0, ZENDESK_MAX_AGENTS - len(engineers)),
'pagename': 'Управление правами'
}
return render(request, 'pages/work.html', context)
@ -203,6 +204,7 @@ class AdminPageView(LoginRequiredMixin, PermissionRequiredMixin, FormView):
UserProfile, role='agent')
context['users'] = users
context['engineers'], context['light_agents'] = count_users(get_users_list())
context['licences_remaining'] = max(0, ZENDESK_MAX_AGENTS - context['engineers'])
return context # TODO: need to get profile page url