#coding=utf-8 import traceback import json from django.utils import timezone from libs import utils from libs.http import JSONError, JSONResponse,DataGridJSONResponse from apps.account.decorators import token_required from django.db import transaction, IntegrityError from apps.exceptions import CustomError from apps.foundation.models import BizLog from django.db.models import Q from django.conf import settings from .models import * from .serializers import * from .filters import * @token_required def branch_list(request): f = BranchFilter(request.GET, queryset=Branch.objects.filter()) rows, total = utils.get_page_data(request, f.qs) serializer = BranchSerializer(rows, many=True) return DataGridJSONResponse(serializer.data, total) @token_required def branch_save(request): id = request.GET.get('id') data = json.loads(request.body) try: with transaction.atomic(): serializer = BranchSerializer.factory(request.user, data, id) serializer.validSave() return JSONResponse(serializer.data) except CustomError as e: return JSONError(e.get_error_msg()) except Exception as e: traceback.print_exc() return JSONError(u'保存失败!')