починил города
This commit is contained in:
parent
dd18dceb6d
commit
1768eb98a5
@ -5,6 +5,7 @@ from datetime import date as dt
|
|||||||
from .api_media_utils import *
|
from .api_media_utils import *
|
||||||
from .api_utils import *
|
from .api_utils import *
|
||||||
from .models import *
|
from .models import *
|
||||||
|
from arka.settings import CITIES_CHOICES, CITIES_CHOICES_DICT
|
||||||
|
|
||||||
|
|
||||||
def _make_model_validation_errors(validation_error: ValidationError, api_err=API_ERROR_OBJECT_VALIDATION):
|
def _make_model_validation_errors(validation_error: ValidationError, api_err=API_ERROR_OBJECT_VALIDATION):
|
||||||
@ -47,14 +48,15 @@ class ApiAccount:
|
|||||||
"id": user.id,
|
"id": user.id,
|
||||||
"name": user.name,
|
"name": user.name,
|
||||||
"surname": user.surname,
|
"surname": user.surname,
|
||||||
"phone": user.phone,
|
|
||||||
"email": user.email,
|
|
||||||
"about": user.about,
|
"about": user.about,
|
||||||
"city": {"code": user.city, "name": CITIES_CHOICES[user.city]} if user.city is not None else None,
|
"city": {"code": user.city, "name": CITIES_CHOICES_DICT[user.city]} if user.city is not None else None,
|
||||||
"register_datetime": int(time.mktime(user.register_datetime.timetuple())),
|
"register_datetime": int(time.mktime(user.register_datetime.timetuple())),
|
||||||
"role": user.role,
|
"role": user.role,
|
||||||
"verified": user.verified
|
"verified": user.verified
|
||||||
}
|
}
|
||||||
|
if self_using:
|
||||||
|
obj["phone"] = user.phone
|
||||||
|
obj["email"] = user.email
|
||||||
|
|
||||||
if hasattr(user, 'accountavatar'):
|
if hasattr(user, 'accountavatar'):
|
||||||
obj["avatar"] = user.accountavatar.photo.id if user.accountavatar.photo is not None else None
|
obj["avatar"] = user.accountavatar.photo.id if user.accountavatar.photo is not None else None
|
||||||
@ -188,7 +190,7 @@ class ApiAccount:
|
|||||||
ApiParamStr(name="executor_inn", required=False, regex="^(\\d{12}|\\d{10})$",
|
ApiParamStr(name="executor_inn", required=False, regex="^(\\d{12}|\\d{10})$",
|
||||||
description="ИНН исполнителя (только для роли исполнитель): "
|
description="ИНН исполнителя (только для роли исполнитель): "
|
||||||
"12 цифр если исполнитель - физ.лицо и 10 цифр если это юр. лицо"),
|
"12 цифр если исполнитель - физ.лицо и 10 цифр если это юр. лицо"),
|
||||||
ApiParamEnum(name="city", description="Город, в котором находится ползователь: {choices}",
|
ApiParamEnum(name="city", description="Город, в котором находится пользователь: {choices}",
|
||||||
required=False, choices=CITIES_CHOICES),
|
required=False, choices=CITIES_CHOICES),
|
||||||
ApiParamInt(name="photo", required=False, default=None,
|
ApiParamInt(name="photo", required=False, default=None,
|
||||||
description="ID медиа, которое будет использоваться в качестве фото профиля, "
|
description="ID медиа, которое будет использоваться в качестве фото профиля, "
|
||||||
@ -432,7 +434,7 @@ class ApiSecurity:
|
|||||||
ApiParamPassword(description="Пароль пользователя, нужен для подтверждения личности"),
|
ApiParamPassword(description="Пароль пользователя, нужен для подтверждения личности"),
|
||||||
ApiParamInt(name="session", description="ID сессии, которую надо деактивировать", value_min=0)
|
ApiParamInt(name="session", description="ID сессии, которую надо деактивировать", value_min=0)
|
||||||
],
|
],
|
||||||
returns="Вернет стандартный отъект в случае успеха")
|
returns="Вернет стандартный объект в случае успеха")
|
||||||
async def remove_session(access_token, password, session):
|
async def remove_session(access_token, password, session):
|
||||||
if not access_token.user.check_password(password):
|
if not access_token.user.check_password(password):
|
||||||
raise Exception(API_ERROR_INVALID_PASSWORD)
|
raise Exception(API_ERROR_INVALID_PASSWORD)
|
||||||
|
@ -8,7 +8,7 @@ from hashlib import sha512, sha256
|
|||||||
|
|
||||||
from django.db.models import Q
|
from django.db.models import Q
|
||||||
|
|
||||||
from arka.settings import CITIES_CHOICES, CITIES_FIELD_SIZE
|
from arka.settings import CITIES_CHOICES, CITIES_CHOICES_DICT, CITIES_FIELD_SIZE
|
||||||
from .api_errors import *
|
from .api_errors import *
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
@ -153,7 +153,9 @@ PHONE_VERIFICATION_ACCESS_KEY = os.getenv('PHONE_VERIFICATION_ACCESS_KEY', "EMPT
|
|||||||
|
|
||||||
# настройки выбора городов
|
# настройки выбора городов
|
||||||
with open('config/cities.json') as f:
|
with open('config/cities.json') as f:
|
||||||
CITIES_CHOICES = json.load(f)
|
__tmp = json.load(f)
|
||||||
for i in range(0, len(CITIES_CHOICES)):
|
CITIES_CHOICES = []
|
||||||
CITIES_CHOICES[i] = tuple(CITIES_CHOICES[i])
|
CITIES_CHOICES_DICT = __tmp['dict']
|
||||||
|
for i in range(0, len(__tmp['choices'])):
|
||||||
|
CITIES_CHOICES.append(tuple(__tmp['choices'][i]))
|
||||||
CITIES_FIELD_SIZE = 16
|
CITIES_FIELD_SIZE = 16
|
||||||
|
@ -1,6 +1,14 @@
|
|||||||
[
|
{
|
||||||
["moscow", "Москва"],
|
"choices": [
|
||||||
["mytishchi", "Мытищи"],
|
["moscow", "Москва"],
|
||||||
["belgorod", "Белгород"],
|
["mytishchi", "Мытищи"],
|
||||||
["orel", "Орел"]
|
["belgorod", "Белгород"],
|
||||||
]
|
["orel", "Орел"]
|
||||||
|
],
|
||||||
|
"dict": {
|
||||||
|
"moscow": "Москва",
|
||||||
|
"mytishchi": "Мытищи",
|
||||||
|
"belgorod": "Белгород",
|
||||||
|
"orel": "Орел"
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user