예제 #1
0
def charge_result_pp(request):
    """
    pp获得玩家的充值行为后,用此api通知我们
    第一步  验证pp 的请求参数
    第二步  给玩家充值
    """
    status = int(request.REQUEST['status'])
    #已经兑现过了
    if status == 1:
        return HttpResponse('success')
    
    #订单验证失败
    sign = request.REQUEST['sign']
    rc, pp_sign = decode_pp_callback(sign) 
    if rc or pp_sign == {}:
        return HttpResponse('fail')
    
    #订单是否处理过
    billno = pp_sign['billno']
    billno_req = request.REQUEST['billno']
    if billno_req != billno:
        return HttpResponse('fail')
    #是否是正确的玩家
    uid = pp_sign['roleid']
    
    mi_record = data_log_mod.get_log_model("OrderRecord").find({'oid':billno})
    if not mi_record:
        return HttpResponse('fail')
    item_id = mi_record[0].item_id
    oc_uid = mi_record[0].uid
    if oc_uid != uid:
        return HttpResponse('fail')

    rk_user = UserBase.get(oc_uid)
    if not rk_user:
        return HttpResponse('fail')
    
    data = charge_api(rk_user, billno, item_id, platform = 'pp',res_dict={},request = request, charge_way='pp')
    data_log_mod.set_log('ChargeResultLog', rk_user, **{'charge_way':'pp',
                                              'result':data['result'],'oid':billno,'item_id':item_id})
    if data['rc'] != 0:
        return HttpResponse('fail')
    return HttpResponse('success') 
예제 #2
0
def get_charge_record(uid,start_date,end_date,platform,item_id,charge_way=None):
    match_query = {}
    if uid:
        match_query['uid'] = uid
    if platform != 'all':
        match_query['platform'] = platform
    if start_date or end_date:
        match_query['createtime'] = {}
        if start_date:
            match_query['createtime']['$gte'] = '%s 00:00:00' % start_date
        if end_date:
            match_query['createtime']['$lte'] = '%s 23:59:59' % end_date
    if item_id != 'all':
        item_id = item_id.split('.')[-1]
        match_query['item_id'] = {'$regex':item_id}
    if charge_way != None and charge_way != 'all':
        if charge_way == '':
            match_query['charge_way'] = {"$in":['',None]}
        else:
            match_query['charge_way'] = charge_way
    match_query['sandbox'] = {"$in":[None]}
    group_code = {"$group":{ "_id" :{"$substr":["$createtime",0,13]}, "charge_sum": { "$sum" : "$price" },"charge_count":{"$sum" : 1} }}
    result = data_log_mod.get_log_model("ChargeRecord").aggregate([{"$match":match_query},group_code,{"$sort": SON([("_id", 1)])}])
    return result
예제 #3
0
from apps.config.game_config import game_config
from apps.logics import dungeon
from apps.logics.gacha import __select_gacha_thing
from apps.models.virtual.card import Card
from apps.admin.bulletin import Bulletin
import glob, datetime, time

import shutil
from apps.models import data_log_mod
from apps.common.utils import string_toDatetime
from apps.oclib import app
from apps.common import utils
from urllib import urlencode

from apps.models import data_log_mod
ChargeRecord = data_log_mod.get_log_model("ChargeRecord")
ConsumeRecord = data_log_mod.get_log_model("CoinConsume")


total_notice_versions = 10

@require_permission
def index(request):
    """
    """
    debug = settings.DEBUG
    data = {'support': False, 'debug':debug}
    data['app_name'] = ''
    data['notice_versions'] = range(total_notice_versions)
    return 'tool/index.html', data
예제 #4
0
from apps.models.user_login import UserLogin
from apps.common.utils import timestamp_toString

from apps.oclib import app as ocapp
from apps.admin.views.raw_db_data_list import raw_db_data_list
from apps.models.user_souls import UserSouls
from apps.logics import soul
from apps.logics import mystery_store
from apps.logics import pk_store
from apps.logics import mails
from apps.models.account_mapping import AccountMapping
from apps.models import data_log_mod
from pprint import pformat
from apps.admin import auth

ChargeRecord = data_log_mod.get_log_model("ChargeRecord")


@require_permission
def index(request):
    """
    用户管理导航页
    """
    status = request.GET.get("status")
    user_type = request.GET.get("user_type", '')
    return 'user/index.html', {
        "status": status,
        "user_type": user_type,
        'raw_db_data_list': sorted(raw_db_data_list),
    }
예제 #5
0
from apps.logics import dungeon
from apps.logics.gacha import __select_gacha_thing
from apps.models.virtual.card import Card
from apps.admin.bulletin import Bulletin
import glob, datetime, time

import shutil
from apps.models import data_log_mod
from apps.common.utils import string_toDatetime
from apps.oclib import app
from apps.common import utils
from urllib import urlencode

from apps.models import data_log_mod

ChargeRecord = data_log_mod.get_log_model("ChargeRecord")
ConsumeRecord = data_log_mod.get_log_model("CoinConsume")

total_notice_versions = 10


@require_permission
def index(request):
    """
    """
    debug = settings.DEBUG
    data = {'support': False, 'debug': debug}
    data['app_name'] = ''
    data['notice_versions'] = range(total_notice_versions)
    return 'tool/index.html', data
예제 #6
0
from apps.models.user_login import UserLogin
from apps.common.utils import timestamp_toString

from apps.oclib import app as ocapp
from apps.admin.views.raw_db_data_list import raw_db_data_list
from apps.models.user_souls import UserSouls
from apps.logics import soul
from apps.logics import mystery_store
from apps.logics import pk_store
from apps.logics import mails
from apps.models.account_mapping import AccountMapping
from apps.models import data_log_mod
from pprint import pformat
from apps.admin import auth

ChargeRecord = data_log_mod.get_log_model("ChargeRecord")

@require_permission
def index(request):
    """
    用户管理导航页
    """
    status = request.GET.get("status")
    user_type = request.GET.get("user_type",'')
    return 'user/index.html', {
            "status":status,
            "user_type":user_type,
            'raw_db_data_list': sorted(raw_db_data_list),
        }

@require_permission
예제 #7
0
#!/usr/bin/env python
# encoding: utf-8
"""
filename:consume_record.py
"""

from apps.models import data_log_mod
from bson.son import SON

ConsumeRecord = data_log_mod.get_log_model("ConsumeRecord")


def get_consume_record(uid,start_date,end_date,consume_type):
    match_query = {}
    if uid:
        match_query['uid'] = uid
    if start_date or end_date:
        match_query['createtime'] = {}
        if start_date:
            match_query['createtime']['$gte'] = '%s 00:00:00' % start_date
        if end_date:
            match_query['createtime']['$lte'] = '%s 23:59:59' % end_date
    if consume_type != 'all':
        match_query['consume_type'] = consume_type
    group_code = {"$group":{ "_id" :{"$substr":["$createtime",0,13]}, "item_sum": { "$sum" : "$num" },"item_count":{"$sum" : 1} }}
    result = ConsumeRecord.aggregate([{"$match":match_query},group_code,{"$sort": SON([("_id", 1)])}])

    return result

def get_charge_record(uid,start_date,end_date,platform,item_id,charge_way=None):
    match_query = {}