1.给计费点新增对应中文名和对应总金额
This commit is contained in:
parent
2fc593f097
commit
62779d0f3d
@ -141,6 +141,7 @@ async def event_model(
|
|||||||
game: str,
|
game: str,
|
||||||
data_in: schemas.CkQuery,
|
data_in: schemas.CkQuery,
|
||||||
ckdb: CKDrive = Depends(get_ck_db),
|
ckdb: CKDrive = Depends(get_ck_db),
|
||||||
|
db: AsyncIOMotorDatabase = Depends(get_database),
|
||||||
rdb: RedisDrive = Depends(get_redis_pool),
|
rdb: RedisDrive = Depends(get_redis_pool),
|
||||||
analysis: BehaviorAnalysis = Depends(BehaviorAnalysis),
|
analysis: BehaviorAnalysis = Depends(BehaviorAnalysis),
|
||||||
current_user: schemas.UserDB = Depends(deps.get_current_user)
|
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]
|
q['date_range'] = [f'{i}' for i in df.set_index(groupby).index]
|
||||||
else:
|
else:
|
||||||
q['date_range'] = ['合计']
|
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)
|
res.append(q)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
|
@ -14,4 +14,5 @@ from .crud_role import role
|
|||||||
from .crud_check_data import check_data
|
from .crud_check_data import check_data
|
||||||
from .user_label import user_label
|
from .user_label import user_label
|
||||||
from .select_map import select_map
|
from .select_map import select_map
|
||||||
from .crud_project_number import project_number
|
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')
|
@ -18,4 +18,5 @@ from .role import *
|
|||||||
from .check_data import *
|
from .check_data import *
|
||||||
from .userlabel import *
|
from .userlabel import *
|
||||||
from .select_map import *
|
from .select_map import *
|
||||||
from .project_number 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