Browse Source

FIXBUG: Добавил отсутствующие обработки исключений

devel
bashmak 9 years ago
parent
commit
84a8691868
  1. 25
      clientsideapp/views.py

25
clientsideapp/views.py

@ -43,18 +43,23 @@ def services(request):
def buy_service(request, srv_id):
abon = get_object_or_404(Abon, id=request.user.pk)
service = get_object_or_404(Tariff, id=srv_id)
try:
current_service = abon.active_tariff()
if request.method == 'POST':
abon.pick_tariff(service, request.user, 'Покупка тарифного плана через личный кабинет, тариф "%s"'
% service)
messages.success(request, 'Вы подписались на новую услугу. Она встала на очередь подключений. '
'Когда закончится ваша текущая услуга, то включится эта')
return redirect('client_side:services')
else:
return render_to_text('clientsideapp/modal_service_buy.html', {
'service': service,
'current_service': current_service
}, request=request)
except LogicError as e:
messages.error(request, e)
except NasFailedResult as e:
messages.error(request, e)
return redirect('client_side:services')
@login_required
@ -62,6 +67,7 @@ def complete_service(request, srv_id):
abtar = get_object_or_404(AbonTariff, id=srv_id)
service = abtar.tariff
try:
if request.method == 'POST':
# досрочно завершаем услугу
finish_confirm = request.POST.get('finish_confirm')
@ -77,15 +83,20 @@ def complete_service(request, srv_id):
)
else:
messages.error(request, 'Действие не подтверждено')
return redirect('client_side:services')
else:
time_use = RuTimedelta(timezone.now() - abtar.time_start)
return render_to_text('clientsideapp/modal_complete_service.html', {
'service': service,
'abtar': abtar,
'time_use': time_use
}, request=request)
except LogicError as e:
messages.error(request, e)
except NasFailedResult as e:
messages.error(request, e)
except NasNetworkError:
messages.error(request, 'Временные неполадки')
return redirect('client_side:services')
@login_required
@ -107,6 +118,10 @@ def unsubscribe_service(request, srv_id):
}, request=request)
except AbonTariff.DoesNotExist:
messages.error(request, 'Указанная подписка на услугу не найдена')
except NasFailedResult as e:
messages.error(request, e)
except NasNetworkError:
messages.error(request, 'Временные неполадки')
return redirect('client_side:services')

Loading…
Cancel
Save