views.py 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #coding=utf-8
  2. import traceback
  3. import json
  4. from django.utils import timezone
  5. from libs import utils
  6. from libs.http import JSONError, JSONResponse,DataGridJSONResponse
  7. from apps.account.decorators import token_required
  8. from django.db import transaction, IntegrityError
  9. from apps.exceptions import CustomError
  10. from apps.foundation.models import BizLog
  11. from django.db.models import Q
  12. from django.conf import settings
  13. from .models import *
  14. from .serializers import *
  15. from .filters import *
  16. @token_required
  17. def branch_list(request):
  18. f = BranchFilter(request.GET, queryset=Branch.objects.filter())
  19. rows, total = utils.get_page_data(request, f.qs)
  20. serializer = BranchSerializer(rows, many=True)
  21. return DataGridJSONResponse(serializer.data, total)
  22. @token_required
  23. def branch_save(request):
  24. id = request.GET.get('id')
  25. data = json.loads(request.body)
  26. try:
  27. with transaction.atomic():
  28. serializer = BranchSerializer.factory(request.user, data, id)
  29. serializer.validSave()
  30. return JSONResponse(serializer.data)
  31. except CustomError as e:
  32. return JSONError(e.get_error_msg())
  33. except Exception as e:
  34. traceback.print_exc()
  35. return JSONError(u'保存失败!')
  36. @token_required
  37. def coupon_list(request):
  38. f = BranchFilter(request.GET, queryset=Coupon.objects.filter(branch=request.user.branch))
  39. rows, total = utils.get_page_data(request, f.qs)
  40. serializer = CouponSerializer(rows, many=True)
  41. return DataGridJSONResponse(serializer.data, total)
  42. @token_required
  43. def coupon_save(request):
  44. id = request.GET.get('id')
  45. data = json.loads(request.body)
  46. try:
  47. with transaction.atomic():
  48. data['branch'] = request.user.branch_id
  49. serializer = CouponSerializer.factory(request.user, data, id)
  50. serializer.validSave()
  51. return JSONResponse(serializer.data)
  52. except CustomError as e:
  53. return JSONError(e.get_error_msg())
  54. except Exception as e:
  55. traceback.print_exc()
  56. return JSONError(u'保存失败!')