Пример #1
0
 def get_data(self):
     account_id = self.request.session.get('account')['account_id']
     result = req("invoice/list/%s" % account_id)
     result1 = req("invoice/summary/%s" % account_id)['summary']
     invoices_list = result[u'invoiceList']['invoices']
     title_list = [{"name": "发票管理", "url": "/center/invoice_manange"}]
     return {
         'invoices': invoices_list,
         "title_list": title_list,
         'summary': result1
     }
Пример #2
0
def get_address_detail_by_addr_id(request):
    account_id = request.session.get('account')['account_id']
    address_id = request.GET['address_id']
    result = req('address/list/%s' % account_id)
    addr_list = result[u"addresses"]
    m = [i for i in addr_list if i[u'address_id'] == int(address_id)][0]
    return HttpResponse(json.dumps(m))
Пример #3
0
def collect_instead_recharge_log(request):
    get_para = request.GET
    api_query_para = ''
    account_id = request.session.get('account')['account_id']

    print account_id

    #获取query 参数
    for k in get_para:
        if k == 'amount_to_search':
            if get_para[k] == 'all':
                continue
            else:
                tem = get_para[k].split('-')
                api_query_para += '&min_amount=%s' % tem[0].rstrip('+')
                if len(tem) == 2:
                    api_query_para += '&max_amount=%s' % tem[1]
        elif k == 'order':
            continue
        else:
            if get_para[k]:
                if k == 'started_at' or k == 'ended_at':
                    api_query_para += '&%s=%s' % (k, get_para[k][0:10])
                else:
                    api_query_para += '&%s=%s' % (k, get_para[k])
    api_query_para = api_query_para.lstrip('&')

    result = req('recharge/getinsteadrechargelist/%s?%s' %
                 (account_id, api_query_para))
    data = {'rows': result['insteadRechargeList'], 'total': result['count']}
    return HttpResponse(json.dumps(data))
def getbillList(request):
    account_id = request.session.get('account')['account_id']
    # account_id='123hdfsfbsdf7uuieruiteb'
    pageSize = int(request.GET['limit'])
    pageNo = int(request.GET['offset']) / pageSize + 1
    dateFrom = request.GET['dateFrom']
    dateTo = request.GET['dateTo']
    bill_type = request.GET.get('type')
    url = "/bill/list/%s?pageNo=%s&pageSize=%s" % (account_id, pageNo,
                                                   pageSize)
    if (len(dateFrom) == 0) or (len(dateTo) == 0):
        if (len(dateFrom) == 0) and (len(dateTo) != 0):
            ended_at = getformatdate(dateTo) + '-01'
            url += '&ended_at=' + ended_at
        elif (len(dateFrom) != 0) and (len(dateTo) == 0):
            started_at = getformatdate(dateFrom) + '-01'
            url += '&started_at=' + started_at
    else:
        started_at = getformatdate(dateFrom) + '-01'
        ended_at = getformatdate(dateTo) + '-01'
        url += '&started_at=' + started_at + '&ended_at=' + ended_at
    if bill_type:
        url += '&bill_type=%s' % bill_type
    result = req(url)
    data = result['billList']['bills']
    #for i in range(len(data)):
    #    if len(data[i]['ended_at'])!=0:
    #        data[i]['ended_at']=data[i]['ended_at'].split()[0]
    #    if len(data[i]['started_at'])!=0:
    #        data[i]['started_at']=data[i]['started_at'].split()[0]
    data2 = {'total': result['billList']['total'], 'rows': data}
    return HttpResponse(json.dumps(data2))
Пример #5
0
    def post(self, request, *args, **kwargs):
        account_id = request.session.get('account')['account_id']
        post_data = request.POST

        dict_acquire = {
            'address_id': post_data['address_id'],
            'type': post_data['type'],
            'title': post_data['title'],
            'amount': post_data['amount'],
            'prove': post_data['prove'],
            'status': 'apply'
        }
        data_json = json.dumps({'invoice': dict_acquire})
        result = req('/invoice/create/%s' % account_id,
                     method='POST',
                     data=data_json)
        Logger(request).create(
            resource_type="invoice",
            action_name="Create invoice",
            resource_name="invoice",
            config="type:" + post_data['type'] + ";title :" +
            post_data['title'] + "; amount:" + post_data['amount'],
            status="Success",
            region_id="Billing",
            project_id=request.session.get('account')['project_id'],
            project_name=request.session.get('account')['project_id'],
            user_id=request.session.get('account')['user_id'],
            user_name=request.session.get('account')['username'])
        return HttpResponse(result)
Пример #6
0
 def get_data(self):
     account_id=self.request.session.get('account')['account_id']
     result = req('account/subaccountamountsum/%s'%account_id)
     res = {}
     title_list = [{"name":"子帐号账户管理"}]
     res["title_list"] = title_list
     if result['success'] == 'success':
         res['sunAccountAmountSum'] = result['sunAccountAmountSum']
     return res
Пример #7
0
def getDiscountByRegionId(request):
    account_id = request.GET['account_id']
    region_id = request.GET['region_id']
    discount = {"region_id": region_id}
    for billing_type in const().billing_item:
        billing_type = billing_type.split('_')[0]
        discount[billing_type + '_discount'] = 1
    discountItems = req('/discount/list/%s?region_id=%s' %
                        (account_id, region_id))['discountList']
    for discountItem in discountItems:
        discount[discountItem['billing_item']['billing_item'].split('_')[0] +
                 "_discount"] = discountItem['discount_ratio']
    discountItems = req('/discount/list/%s?region_id=%s' %
                        (account_id, 'RegionCdn'))['discountList']
    for discountItem in discountItems:
        discount[discountItem['billing_item']['billing_item'].split('_')[0] +
                 "_discount"] = discountItem['discount_ratio']
    return HttpResponse(json.dumps(discount))
Пример #8
0
 def get_data(self):
     account_id = self.request.GET['sub_account_id']
     name = self.request.GET['name']
     data = {'account_id':account_id, 'name':name}
     result = req('/account/detail/%s' % account_id)
     if result['success'] == 'success':
         data['account'] = result['account']
     title_list = [{"name":"子账号消耗管理", "url":"/center/subComsumption"}, {"name":"历史消耗"}, {"name":name}]
     data["title_list"] = title_list
     return data
Пример #9
0
def prepareInvoiceData(request):
    account_id = request.session.get('account')['account_id']
    limit = request.GET['limit']
    page_no = int(request.GET['offset']) / (int(limit)) + 1
    result = req("invoice/list/%s?page_no=%s&page_size=%s" %
                 (account_id, page_no, limit))
    data = {
        "total": result[u'invoiceList']["total"],
        'rows': result[u'invoiceList']['invoices']
    }
    return HttpResponse(json.dumps(data))
Пример #10
0
 def get_data(self):
     account_id = self.request.GET['sub_account_id']
     name = self.request.GET['name']
     data = {'account_id':account_id, 'name':name}
     started_at = datetime.datetime.strftime(datetime.datetime.utcnow(), '%Y-%m') + '-01'
     result = req('/consumption/getamountsummary/%s?started_at=%s' % (account_id, started_at))
     if result['success'] == 'success':
         data.update(result['amountsummary'])
     data.update({'started_at':started_at})
     title_list = [{"name":"子账号消耗管理", "url":"/center/subComsumption"}, {"name":name}]
     data["title_list"] = title_list
     return data
Пример #11
0
 def get_data(self):
     bill_id = self.request.GET['bill_id']
     account_id = self.request.GET['account_id']
     no = self.request.GET['no']
     name = self.request.GET['name']
     data = {'bill_id':bill_id, 'account_id':account_id, 'no':no, 'name':name}
     result = req('/bill/detail/%s' % bill_id)
     if result['success'] == 'success':
         data.update(result['bill'])
     title_list = [{"name":"子账号消耗管理", "url":"/center/subComsumption"}, {"name":"历史消费", "url":"/center/subComsumption/consumptionhistory?account_id=" + account_id + "&name=" + name}, {"name":name}, {"name":no}]
     data["title_list"] = title_list
     return data
Пример #12
0
def getSubComsumptionList(request):
    pageSize = int(request.GET['limit'])
    pageNo = int(request.GET['offset']) / pageSize + 1
    account_id=request.session.get('account')['account_id']
    url = "/account/subaccountconsumptionlist/"+account_id+"?pageNo=" + str(pageNo) + "&pageSize=" + str(pageSize)
    if request.GET.has_key('name'):
        url += '&name=' + request.GET['name']
    if request.GET.has_key('type'):
        url += '&type=' + request.GET['type']
    result = req(url)
    data = {'total':result['subAccountConsumptionList']['total'], 'rows':result['subAccountConsumptionList']['accounts']}
    return HttpResponse(json.dumps(data))
Пример #13
0
def getBillList(request):
    pageSize = int(request.GET['limit'])
    pageNo = int(request.GET['offset']) / pageSize + 1
    account_id = request.GET['account_id']
    url = "/bill/list/%s?pageNo=%s&pageSize=%s" % (account_id, pageNo, pageSize)
    if request.GET.has_key('started_at'):
        url += '&started_at=' + request.GET['started_at'] + '-01'
    if request.GET.has_key('ended_at'):
        url += '&ended_at=' + request.GET['ended_at'] + '-01'
    result = req(url)
    data = {'total':result['billList']['total'], 'rows':result['billList']['bills']}
    return HttpResponse(json.dumps(data))
Пример #14
0
 def get_data(self):
     request = self.request
     account_id = request.GET["account_id"]
     account = req('/account/subaccountdetail/%s' %
                   account_id)['subAccountDetail']
     data = {"childaccount": account, "account_id": account_id}
     title_list = [{
         "name": "子账号管理",
         "url": "/center/account_manage"
     }, {
         "name": account['name']
     }]
     data["title_list"] = title_list
     return data
Пример #15
0
def getDiscountList(request):
    account_id = request.GET['account_id']
    data = []
    regions = req('/common/getregionlist')['regionList']
    for region in regions:
        discount = {
            "region_id": region['region_id'],
            "region_desc": region["region_desc"]
        }
        for billing_type in const().billing_item:
            billing_type = billing_type.split('_')[0]
            discount[billing_type + '_discount'] = 1
        discountItems = req('/discount/list/%s?region_id=%s' %
                            (account_id, region['region_id']))['discountList']
        for discountItem in discountItems:
            discount[discountItem['billing_item']['billing_item'].split('_')[0]
                     + "_discount"] = discountItem['discount_ratio']
        discountItems = req('/discount/list/%s?region_id=%s' %
                            (account_id, 'RegionCdn'))['discountList']
        for discountItem in discountItems:
            discount[discountItem['billing_item']['billing_item'].split('_')[0]
                     + "_discount"] = discountItem['discount_ratio']
        data.append(discount)
    return HttpResponse(json.dumps(data))
def getrechargeRecordList(request):
    account_id = request.session.get('account')['account_id']
    payment_type = request.GET['payment_type']
    dateFrom = request.GET['dateFrom']
    dateTo = request.GET['dateTo']
    pageSize = int(request.GET['limit'])
    pageNo = int(request.GET['offset']) / pageSize + 1
    url = "/recharge/getorderrechargelist/%s?pageSize=%s&pageNo=%s" % (
        account_id, pageSize, pageNo)
    if payment_type == 'all':
        if (len(dateFrom) == 0) or (len(dateTo) == 0):
            if (len(dateFrom) != 0) and (len(dateTo) == 0):
                started_at = getformatdate(dateFrom)
                url += '&started_at=' + started_at
            elif (len(dateFrom) == 0) and (len(dateTo) != 0):
                ended_at = getformatdate(dateTo)
                url += '&ended_at=' + ended_at
        else:
            started_at = getformatdate(dateFrom)
            ended_at = getformatdate(dateTo)
            url += '&started_at=' + started_at + '&ended_at=' + ended_at
    else:
        if (len(dateFrom) == 0) or (len(dateTo) == 0):
            if (len(dateFrom) != 0) and (len(dateTo) == 0):
                started_at = getformatdate(dateFrom)
                url += '&started_at=' + started_at + '&payment_type=' + payment_type
            elif (len(dateFrom) == 0) and (len(dateTo) != 0):
                ended_at = getformatdate(dateTo)
                url += '&ended_at=' + ended_at + '&payment_type=' + payment_type
            else:
                url += '&payment_type=' + payment_type
        else:
            started_at = getformatdate(dateFrom)
            ended_at = getformatdate(dateTo)
            url += '&started_at=' + started_at + '&ended_at=' + ended_at + '&payment_type=' + payment_type
    result = req(url)
    if result['success'] == 'success':
        total = result['billList']['total']
        data = result['billList']['bills']
        for i in range(len(data)):
            if data[i]['payment_type'] == 'gift':
                data[i]['payment_type'] = '赠送'
            else:
                data[i]['payment_type'] = '充值'
        return HttpResponse(json.dumps({'total': total, 'rows': data}))
    else:
        return HttpResponse(json.dumps({'total': 0, 'rows': []}))
Пример #17
0
 def get_data(self):
     account_id = self.request.session.get('account')['account_id']
     result = req("address/list/%s" % account_id)
     result1 = result['addresses']
     length_limit = 24
     #将其中的'-'号抽取出来
     for m in result1:
         addr_fraglist = m['address'].split('|')
         m['address'] = ''.join(addr_fraglist)
     for i in result1:
         if len(i['address']) > length_limit:
             k = i['address'][0:length_limit] + '...'
             i['address_1'] = k
             i['display1'] = 'none'
             i['display2'] = 'inline'
         else:
             i['display1'] = 'inline'
             i['display2'] = 'none'
     return {'result1': result1}
Пример #18
0
def get_invoice_summary(request):
    account_id = request.session.get('account')['account_id']
    result = req("invoice/summary/%s" % account_id)['summary']
    if not result['bill_amount']:
        result['bill_amount'] = 0.00
    if not result['invoice_amount']:
        result['invoice_amount'] = 0.00

    result['bill_amount'] = float(result['bill_amount'])
    result['invoice_amount'] = float(result['invoice_amount'])

    result['invoice_amount_avail'] = result['bill_amount'] - result[
        'invoice_amount']

    result['bill_amount'] = '%.2f' % (result['bill_amount'])
    result['invoice_amount'] = '%.2f' % (result['invoice_amount'])
    result['invoice_amount_avail'] = '%.2f' % result['invoice_amount_avail']

    print result
    return HttpResponse(json.dumps(result))
 def get_data(self):
     bill_id = self.request.GET['bill_id']
     result = req("bill/detail/%s" % bill_id)
     amount = result['bill']['amount']
     bill_no = result['bill']['no']
     title_list = [{
         "name": "账单",
         "url": "/center/bill"
     }, {
         "name": bill_no,
         "url": "/center/bill/detail?bill_id=" + bill_id
     }]
     dateFrom = result['bill']['started_at']
     dateTo = result['bill']['ended_at']
     return {
         'bill_id': bill_id,
         'amount': amount,
         'dateFrom': dateFrom,
         'dateTo': dateTo,
         "title_list": title_list
     }
def getbillDetail(request):
    bill_id = request.GET['bill_id']
    result = req("/bill/detail/%s" % bill_id)
    return HttpResponse(json.dumps(result['bill']['bill_items']))
Пример #21
0
def index(request):
    result = req("account/list")
    return HttpResponse(json.dumps(result))
Пример #22
0
def getConsumptionSummary(request):
    account_id = request.GET['account_id']
    result = req("/consumption/getconsumptionsummary/%s" % account_id)
    return HttpResponse(json.dumps(result['consumptionsummary']))
Пример #23
0
def editDiscountByRegionId(request):
    try:
        post_data_req = request.POST
        post_data = post_data_req.copy()
        account_id = post_data.pop('account_id')[0]
        region_id = post_data.pop('region_id')[0]
        cdnflow_discount = post_data.pop('cdn_discount')[0]
        cdnbandwidth_discount = cdnflow_discount

        cdn_billing_items = req(
            '/billingItem/list?region_id=RegionCdn')['billing_itemList']
        billing_items = req('/billingItem/list?region_id=%s' %
                            region_id)['billing_itemList']
        cdn_region_discounts = req('/discount/list/%s?region_id=%s' %
                                   (account_id, 'RegionCdn'))['discountList']
        region_discounts = req('/discount/list/%s?region_id=%s' %
                               (account_id, region_id))['discountList']
        '''cdnflow 折扣'''
        #        cdnflow=req('/discount/detail/%s?region_id=%s&billing_item=%s'%(account_id,'RegionCdn','cdnflow_1_G'))
        cdnflow = get_discount(cdn_region_discounts, 'cdnflow_1_G')
        if cdnflow:
            data_req = {
                'discount_id': cdnflow['discount_id'],
                'discount_ratio': cdnflow_discount
            }
            req('/discount/update/%s' % account_id,
                method="PUT",
                data=json.dumps({'discount': data_req}))
        else:
            billing_item = get_billing_item(cdn_billing_items, 'cdnflow_1_G')
            data_req = {
                'billing_item_id': billing_item['billing_item_id'],
                'discount_ratio': cdnflow_discount
            }
            req('/discount/create/%s' % account_id,
                method="POST",
                data=json.dumps({'discount': data_req}))
        '''cdnbandwidth 折扣'''
        cdnbandwidth = get_discount(cdn_region_discounts, 'cdnbandwidth_1_M')
        if cdnbandwidth:
            data_req = {
                'discount_id': cdnbandwidth['discount_id'],
                'discount_ratio': cdnbandwidth_discount
            }
            req('/discount/update/%s' % account_id,
                method="PUT",
                data=json.dumps({'discount': data_req}))
        else:
            billing_item = get_billing_item(cdn_billing_items,
                                            'cdnbandwidth_1_M')
            data_req = {
                'billing_item_id': billing_item['billing_item_id'],
                'discount_ratio': cdnbandwidth_discount
            }
            req('/discount/create/%s' % account_id,
                method="POST",
                data=json.dumps({'discount': data_req}))

        for billing_item in const().billing_item:
            if post_data.has_key(billing_item.split('_')[0] + '_discount'):
                discount_ratio = post_data[billing_item.split('_')[0] +
                                           '_discount']
                discount_req = get_discount(region_discounts, billing_item)
                if discount_req:
                    data_req = {
                        'discount_id': discount_req['discount_id'],
                        'discount_ratio': discount_ratio
                    }
                    req('/discount/update/%s' % account_id,
                        method="PUT",
                        data=json.dumps({'discount': data_req}))
                else:
                    billing_item_req = get_billing_item(
                        billing_items, billing_item)
                    data_req = {
                        'billing_item_id': billing_item_req['billing_item_id'],
                        'discount_ratio': discount_ratio
                    }
                    req('/discount/create/%s' % account_id,
                        method="POST",
                        data=json.dumps({'discount': data_req}))
        Logger(request).create(
            resource_type="discount",
            action_name="Update discount",
            resource_name="discount",
            config=outJson(post_data_req),
            status="Success",
            region_id="Billing",
            project_id=request.session.get('account')['project_id'],
            project_name=request.session.get('account')['project_id'],
            user_id=request.session.get('account')['user_id'],
            user_name=request.session.get('account')['username'])
        return HttpResponse(json.dumps({'success': 'success'}))
    except Exception:
        return HttpResponse(json.dumps({'success': 'error', 'msg': '服务器报错'}))
Пример #24
0
    def get_data(self):
        result = req("invoice/list/2e7d7572a02e4a13852d675973c3e8bf")
        result1 = HttpResponse(json.dumps(result))
        invoices_list = result[u'invoiceList']['invoices']

        return {'invoices': invoices_list}
Пример #25
0
def instead_recharge_view(request):
    account_id = request.session.get('account')['account_id']
    totalamount = req('recharge/getinsteadamount/%s' %
                      account_id)['totalamount']
    return render(request, 'insteadrecharge/insteadrecharge.html',
                  {'totalamount': totalamount})
Пример #26
0
    def post(self, request, *args, **kwargs):
        post_data = request.POST
        account_id = request.session.get('account')['account_id']

        if 'delete' in post_data:
            req("/address/delete/%s" % post_data['account_id'],
                method="DELETE")
            Logger(request).create(
                resource_type="address",
                action_name="Delete address",
                resource_name="address",
                config="address_id :" + post_data['account_id'],
                status="Success",
                region_id="Billing",
                project_id=request.session.get('account')['project_id'],
                project_name=request.session.get('account')['project_id'],
                user_id=request.session.get('account')['user_id'],
                user_name=request.session.get('account')['username'])
            return HttpResponse('received account delete request')
        elif 'update' in post_data:
            dict_acquire = {
                'name': post_data['name'],
                'post_code': post_data['zip'],
                "address": post_data['addr'],
                'status': 'using',
                'phone': post_data["phone"],
                'mobile': post_data["mobile"],
                'address_id': int(post_data['address_id'])
            }
            data_json = json.dumps({"address": dict_acquire})
            result = req("/address/update/%s" % account_id,
                         method='PUT',
                         data=data_json)
            Logger(request).create(
                resource_type="address",
                action_name="Update address",
                resource_name="address",
                config="address_id :" + post_data['address_id'] +
                "; address:" + post_data['addr'],
                status="Success",
                region_id="Billing",
                project_id=request.session.get('account')['project_id'],
                project_name=request.session.get('account')['project_id'],
                user_id=request.session.get('account')['user_id'],
                user_name=request.session.get('account')['username'])
            return HttpResponse('success')
        else:
            dict_acquire = {
                'name': post_data['name'],
                'post_code': post_data['zip'],
                "address": post_data['addr'],
                'status': 'using',
                'phone': post_data["phone"],
                'mobile': post_data["mobile"]
            }
            data_json = json.dumps({"address": dict_acquire})
            result = req("/address/create/%s" % account_id,
                         method='POST',
                         data=data_json)
            Logger(request).create(
                resource_type="address",
                action_name="Create address",
                resource_name="address",
                config="address:" + post_data['addr'] + ";name:" +
                post_data['name'],
                status="Success",
                region_id="Billing",
                project_id=request.session.get('account')['project_id'],
                project_name=request.session.get('account')['project_id'],
                user_id=request.session.get('account')['user_id'],
                user_name=request.session.get('account')['username'])
            return HttpResponse('success')
Пример #27
0
def getBillDetail(request):
    bill_id = request.GET['bill_id']
    result = req("/bill/billitemlist/%s" % bill_id)
    return HttpResponse(json.dumps(result['billitemList']))