1
This commit is contained in:
parent
39faa3322c
commit
b30df136f3
@ -260,3 +260,64 @@ async def update_api_list(
|
|||||||
await crud.api_list.update_api(db, add_data)
|
await crud.api_list.update_api(db, add_data)
|
||||||
|
|
||||||
return schemas.Msg(code=0, msg='ok', data=1)
|
return schemas.Msg(code=0, msg='ok', data=1)
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/account_owner_list")
|
||||||
|
async def account_owner_list(request: Request,
|
||||||
|
game: str,
|
||||||
|
db: AsyncIOMotorDatabase = Depends(get_database),
|
||||||
|
current_user: schemas.UserDB = Depends(deps.get_current_user)) -> schemas.Msg:
|
||||||
|
"""获取账号owner权限"""
|
||||||
|
account_infos = await crud.user.find_many(db, {},
|
||||||
|
{'_id': False, 'name': True, 'nickname': True,
|
||||||
|
f'data_where.{game}': True})
|
||||||
|
resp = []
|
||||||
|
for account_info in account_infos:
|
||||||
|
resp.append(
|
||||||
|
{
|
||||||
|
'name': account_info.get('name'),
|
||||||
|
'nickname': account_info.get('nickname'),
|
||||||
|
'owner_list': ''
|
||||||
|
}
|
||||||
|
)
|
||||||
|
for item in account_info.get('data_where', {}).get(game, []):
|
||||||
|
if item.get('columnName') == 'owner_name':
|
||||||
|
resp[-1]['owner_list'] = ','.join(item.get('ftv', []))
|
||||||
|
break
|
||||||
|
return schemas.Msg(code=0, msg='ok', data=resp)
|
||||||
|
|
||||||
|
|
||||||
|
@router.post("/update_account_owner")
|
||||||
|
async def account_owner_list(request: Request,
|
||||||
|
game: str,
|
||||||
|
data_in: schemas.OwnerList,
|
||||||
|
db: AsyncIOMotorDatabase = Depends(get_database),
|
||||||
|
current_user: schemas.UserDB = Depends(deps.get_current_user)) -> schemas.Msg:
|
||||||
|
"""设置账号owner权限"""
|
||||||
|
set_data = {
|
||||||
|
"columnName": "owner_name",
|
||||||
|
"tableType": "event",
|
||||||
|
"comparator": "in",
|
||||||
|
"ftv": data_in.owners
|
||||||
|
}
|
||||||
|
is_exists = await crud.user.find_one(db, {'name': data_in.account_name,
|
||||||
|
f'data_where.{game}': {'$exists': True},
|
||||||
|
})
|
||||||
|
if is_exists:
|
||||||
|
if await crud.user.find_one(db, {'name': data_in.account_name,
|
||||||
|
f'data_where.{game}': {'$exists': True},
|
||||||
|
f'data_where.{game}.columnName': 'owner_name'
|
||||||
|
}):
|
||||||
|
await crud.user.update_one(db, {'name': data_in.account_name,
|
||||||
|
f'data_where.{game}': {'$exists': True},
|
||||||
|
f'data_where.{game}.columnName': 'owner_name'
|
||||||
|
}, {'$set': {f'data_where.{game}.$': set_data}})
|
||||||
|
else:
|
||||||
|
await crud.user.update_one(db, {'name': data_in.account_name,
|
||||||
|
f'data_where.{game}': {'$exists': True},
|
||||||
|
}, {'$push': {f'data_where.{game}': set_data}})
|
||||||
|
else:
|
||||||
|
await crud.user.update_one(db, {'name': data_in.account_name,
|
||||||
|
}, {'$set': {f'data_where.{game}': [set_data]}})
|
||||||
|
|
||||||
|
return schemas.Msg(code=0, msg='ok')
|
||||||
|
@ -150,6 +150,8 @@ class XAnalysis:
|
|||||||
sa.Column('date') >= self.event_view['startTime'].split(' ')[0],
|
sa.Column('date') >= self.event_view['startTime'].split(' ')[0],
|
||||||
sa.Column('date') <= self.event_view['endTime'].split(' ')[0]
|
sa.Column('date') <= self.event_view['endTime'].split(' ')[0]
|
||||||
]
|
]
|
||||||
|
if quota == '#distinct_id':
|
||||||
|
where.append(sa.Column('role_idx') == 1)
|
||||||
qry = sa.select().where(*where)
|
qry = sa.select().where(*where)
|
||||||
sql = str(qry.compile(compile_kwargs={"literal_binds": True}))
|
sql = str(qry.compile(compile_kwargs={"literal_binds": True}))
|
||||||
where_str = sql.split('WHERE ')[1]
|
where_str = sql.split('WHERE ')[1]
|
||||||
@ -164,6 +166,7 @@ class XAnalysis:
|
|||||||
where_account = self.handler_filts((self.account_filters, 'and'), self.ext_filters)
|
where_account = self.handler_filts((self.account_filters, 'and'), self.ext_filters)
|
||||||
where_account_str = 1
|
where_account_str = 1
|
||||||
if where_account:
|
if where_account:
|
||||||
|
|
||||||
qry = sa.select().where(*where_account)
|
qry = sa.select().where(*where_account)
|
||||||
sql = str(qry.compile(compile_kwargs={"literal_binds": True}))
|
sql = str(qry.compile(compile_kwargs={"literal_binds": True}))
|
||||||
where_account_str = sql.split('WHERE ')[1]
|
where_account_str = sql.split('WHERE ')[1]
|
||||||
|
@ -30,3 +30,8 @@ class EditRole(BaseModel):
|
|||||||
role_id: str = Field(..., description='要编辑的id')
|
role_id: str = Field(..., description='要编辑的id')
|
||||||
name: str = None
|
name: str = None
|
||||||
desc: str = None
|
desc: str = None
|
||||||
|
|
||||||
|
|
||||||
|
class OwnerList(BaseModel):
|
||||||
|
owners: list
|
||||||
|
account_name: str
|
||||||
|
Loading…
Reference in New Issue
Block a user