1.给计费点新增对应中文名和对应总金额
This commit is contained in:
parent
2fc593f097
commit
62779d0f3d
@ -141,6 +141,7 @@ async def event_model(
|
||||
game: str,
|
||||
data_in: schemas.CkQuery,
|
||||
ckdb: CKDrive = Depends(get_ck_db),
|
||||
db: AsyncIOMotorDatabase = Depends(get_database),
|
||||
rdb: RedisDrive = Depends(get_redis_pool),
|
||||
analysis: BehaviorAnalysis = Depends(BehaviorAnalysis),
|
||||
current_user: schemas.UserDB = Depends(deps.get_current_user)
|
||||
@ -218,7 +219,40 @@ async def event_model(
|
||||
q['date_range'] = [f'{i}' for i in df.set_index(groupby).index]
|
||||
else:
|
||||
q['date_range'] = ['合计']
|
||||
|
||||
# 暂时只执行像素的计费点加别名
|
||||
if game == 'xiangsu':
|
||||
if item['groupby'][0] == 'proid' and analysis.events[0]['event_name'] == 'pay':
|
||||
# 将对应英文的中文意思按位置一一对应返回给前端
|
||||
proid_dict = await crud.proid_map.get_all_show_name(db, game)
|
||||
res_list = []
|
||||
for i in q['date_range']:
|
||||
name = proid_dict[i]
|
||||
res_list.append(name)
|
||||
q['proid_name'] = res_list
|
||||
# 将proid字段和金额money按对应关系组合成字典并算出对应的总额返回给前端
|
||||
money_dict = await crud.proid_map.get_all_show_money(db, game)
|
||||
add_money = []
|
||||
number = q['values'][0]
|
||||
next = -1
|
||||
for i in q['date_range']:
|
||||
next += 1
|
||||
mongey = money_dict[i]
|
||||
add = number[next] * mongey
|
||||
add_money.append(add)
|
||||
q['proid_money'] = add_money
|
||||
# 首充金额分布
|
||||
# if item['groupby'][0] == 'money' and analysis.events[0]['event_name'] == 'pay':
|
||||
# # 将proid字段和金额money按对应关系组合成字典并算出对应的总额返回给前端
|
||||
# money_dict = await crud.proid_map.get_all_show_money(db, game)
|
||||
# add_money = []
|
||||
# number = q['values'][0]
|
||||
# next = -1
|
||||
# for i in q['date_range']:
|
||||
# next += 1
|
||||
# mongey = money_dict[i]
|
||||
# add = number[next] * mongey
|
||||
# add_money.append(add)
|
||||
# q['proid_money'] = add_money
|
||||
res.append(q)
|
||||
continue
|
||||
|
||||
|
@ -15,3 +15,4 @@ from .crud_check_data import check_data
|
||||
from .user_label import user_label
|
||||
from .select_map import select_map
|
||||
from .crud_project_number import project_number
|
||||
from .crud_proid_map import proid_map
|
29
crud/crud_proid_map.py
Normal file
29
crud/crud_proid_map.py
Normal file
@ -0,0 +1,29 @@
|
||||
import pymongo
|
||||
from bson import ObjectId
|
||||
from motor.motor_asyncio import AsyncIOMotorDatabase
|
||||
|
||||
import schemas
|
||||
from crud.base import CRUDBase
|
||||
from schemas import *
|
||||
|
||||
__all__ = 'proid_map',
|
||||
|
||||
|
||||
class CRUDProidmap(CRUDBase):
|
||||
# 将两个字段按对应关系组合成字典返回
|
||||
async def get_all_show_name(self, db: AsyncIOMotorDatabase, game: str):
|
||||
cursor = self.find(db, {'game': game})
|
||||
res = {}
|
||||
async for item in self.to_list(cursor):
|
||||
res[item['proid']] = item['name']
|
||||
return res
|
||||
|
||||
#将proid字段和金额money按对应关系组合成字典返回
|
||||
async def get_all_show_money(self, db: AsyncIOMotorDatabase, game: str):
|
||||
cursor = self.find(db, {'game': game})
|
||||
res = {}
|
||||
async for item in self.to_list(cursor):
|
||||
res[item['proid']] = item['money']
|
||||
return res
|
||||
|
||||
proid_map = CRUDProidmap('proid_map')
|
@ -19,3 +19,4 @@ from .check_data import *
|
||||
from .userlabel import *
|
||||
from .select_map import *
|
||||
from .project_number import *
|
||||
from .proid_map import *
|
0
schemas/proid_map.py
Normal file
0
schemas/proid_map.py
Normal file
Loading…
Reference in New Issue
Block a user