控制显隐指标
This commit is contained in:
parent
aec4ebf825
commit
362a1cb1d2
@ -148,7 +148,12 @@ async def event_model(
|
|||||||
await analysis.init(data_where=current_user.data_where)
|
await analysis.init(data_where=current_user.data_where)
|
||||||
sqls = await analysis.event_model_sql()
|
sqls = await analysis.event_model_sql()
|
||||||
res = []
|
res = []
|
||||||
for item in sqls:
|
is_hide = []
|
||||||
|
|
||||||
|
for idx, item in enumerate(sqls):
|
||||||
|
if item.get('is_show') == False:
|
||||||
|
is_hide.append(idx)
|
||||||
|
|
||||||
q = {
|
q = {
|
||||||
'groups': [],
|
'groups': [],
|
||||||
'values': [],
|
'values': [],
|
||||||
@ -262,6 +267,7 @@ async def event_model(
|
|||||||
item['values'] = np.array(item['values'])[sort_key].tolist()
|
item['values'] = np.array(item['values'])[sort_key].tolist()
|
||||||
item['sum'] = np.array(item['sum'])[sort_key].tolist()
|
item['sum'] = np.array(item['sum'])[sort_key].tolist()
|
||||||
item['avg'] = np.array(item['avg'])[sort_key].tolist()
|
item['avg'] = np.array(item['avg'])[sort_key].tolist()
|
||||||
|
res = [item for idx, item in enumerate(res) if idx not in is_hide]
|
||||||
|
|
||||||
return schemas.Msg(code=0, msg='ok', data=res)
|
return schemas.Msg(code=0, msg='ok', data=res)
|
||||||
|
|
||||||
|
@ -220,7 +220,6 @@ class BehaviorAnalysis:
|
|||||||
# self.event_tbl = sa.Table('event_view', metadata, *[sa.Column(column) for column in columns])
|
# self.event_tbl = sa.Table('event_view', metadata, *[sa.Column(column) for column in columns])
|
||||||
self.event_tbl = sa.Table('event', metadata, *[sa.Column(column) for column in columns])
|
self.event_tbl = sa.Table('event', metadata, *[sa.Column(column) for column in columns])
|
||||||
|
|
||||||
|
|
||||||
async def handler_filts(self, *filters):
|
async def handler_filts(self, *filters):
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@ -244,7 +243,7 @@ class BehaviorAnalysis:
|
|||||||
elif item['tableType'] == 'event':
|
elif item['tableType'] == 'event':
|
||||||
where = event_filter
|
where = event_filter
|
||||||
elif item['tableType'] == 'user_label':
|
elif item['tableType'] == 'user_label':
|
||||||
user_cluster_def=UserClusterDef(self.game,item['columnName'],self.data_where)
|
user_cluster_def = UserClusterDef(self.game, item['columnName'], self.data_where)
|
||||||
await user_cluster_def.init()
|
await user_cluster_def.init()
|
||||||
sub_qry = user_cluster_def.to_sql_qry()
|
sub_qry = user_cluster_def.to_sql_qry()
|
||||||
if comparator == 'in':
|
if comparator == 'in':
|
||||||
@ -252,7 +251,6 @@ class BehaviorAnalysis:
|
|||||||
else:
|
else:
|
||||||
event_filter.append(sa.Column('#account_id').notin_(sub_qry))
|
event_filter.append(sa.Column('#account_id').notin_(sub_qry))
|
||||||
|
|
||||||
|
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
continue
|
continue
|
||||||
@ -260,7 +258,6 @@ class BehaviorAnalysis:
|
|||||||
tbl = getattr(self, f'{item["tableType"]}_tbl')
|
tbl = getattr(self, f'{item["tableType"]}_tbl')
|
||||||
col = getattr(tbl.c, item['columnName'])
|
col = getattr(tbl.c, item['columnName'])
|
||||||
|
|
||||||
|
|
||||||
ftv = item['ftv']
|
ftv = item['ftv']
|
||||||
if comparator == '==':
|
if comparator == '==':
|
||||||
if len(ftv) > 1:
|
if len(ftv) > 1:
|
||||||
@ -379,6 +376,7 @@ class BehaviorAnalysis:
|
|||||||
|
|
||||||
for event in self.events:
|
for event in self.events:
|
||||||
event_name_display = event.get('eventNameDisplay')
|
event_name_display = event.get('eventNameDisplay')
|
||||||
|
is_show = event.get('is_show', True)
|
||||||
|
|
||||||
select_exprs = []
|
select_exprs = []
|
||||||
if self.time_particle != 'total':
|
if self.time_particle != 'total':
|
||||||
@ -420,7 +418,8 @@ class BehaviorAnalysis:
|
|||||||
'end_date': self.end_date[:10],
|
'end_date': self.end_date[:10],
|
||||||
'event_name': event.get('eventNameDisplay'),
|
'event_name': event.get('eventNameDisplay'),
|
||||||
'format': event.get('format') or 'float',
|
'format': event.get('format') or 'float',
|
||||||
'date_range': self.date_range
|
'date_range': self.date_range,
|
||||||
|
'is_show': is_show,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
continue
|
continue
|
||||||
@ -482,7 +481,7 @@ class BehaviorAnalysis:
|
|||||||
'time_particle': self.time_particle,
|
'time_particle': self.time_particle,
|
||||||
'start_date': self.start_date[:10],
|
'start_date': self.start_date[:10],
|
||||||
'end_date': self.end_date[:10],
|
'end_date': self.end_date[:10],
|
||||||
|
'is_show': is_show,
|
||||||
})
|
})
|
||||||
|
|
||||||
return sqls
|
return sqls
|
||||||
@ -583,9 +582,9 @@ ORDER BY level
|
|||||||
|
|
||||||
if analysis in ['times', 'number_of_days', 'number_of_hours']:
|
if analysis in ['times', 'number_of_days', 'number_of_hours']:
|
||||||
if self.time_particle == 'total':
|
if self.time_particle == 'total':
|
||||||
qry = sa.select( *self.groupby, values_col) \
|
qry = sa.select(*self.groupby, values_col) \
|
||||||
.where(and_(*where)) \
|
.where(and_(*where)) \
|
||||||
.group_by( *self.groupby, e_account_id_col)
|
.group_by(*self.groupby, e_account_id_col)
|
||||||
else:
|
else:
|
||||||
qry = sa.select(event_date_col, *self.groupby, values_col) \
|
qry = sa.select(event_date_col, *self.groupby, values_col) \
|
||||||
.where(and_(*where)) \
|
.where(and_(*where)) \
|
||||||
@ -606,10 +605,10 @@ ORDER BY level
|
|||||||
elif event.get('quota'):
|
elif event.get('quota'):
|
||||||
event_attr_col = getattr(self.event_tbl.c, event['quota'])
|
event_attr_col = getattr(self.event_tbl.c, event['quota'])
|
||||||
if self.time_particle == 'total':
|
if self.time_particle == 'total':
|
||||||
qry = sa.select( e_account_id_col,
|
qry = sa.select(e_account_id_col,
|
||||||
settings.CK_FUNC[analysis](event_attr_col).label('values')) \
|
settings.CK_FUNC[analysis](event_attr_col).label('values')) \
|
||||||
.where(and_(*where)) \
|
.where(and_(*where)) \
|
||||||
.group_by( *self.groupby, e_account_id_col)
|
.group_by(*self.groupby, e_account_id_col)
|
||||||
else:
|
else:
|
||||||
qry = sa.select(event_date_col, e_account_id_col,
|
qry = sa.select(event_date_col, e_account_id_col,
|
||||||
settings.CK_FUNC[analysis](event_attr_col).label('values')) \
|
settings.CK_FUNC[analysis](event_attr_col).label('values')) \
|
||||||
@ -817,7 +816,7 @@ group by a.reg_date) log on reg.date=log.reg_date
|
|||||||
'sql': sql,
|
'sql': sql,
|
||||||
'date_range': self.date_range,
|
'date_range': self.date_range,
|
||||||
'unit_num': self.unit_num,
|
'unit_num': self.unit_num,
|
||||||
'retention_n':retention_n,
|
'retention_n': retention_n,
|
||||||
'filter_item_type': filter_item_type,
|
'filter_item_type': filter_item_type,
|
||||||
'filter_item': filter_item,
|
'filter_item': filter_item,
|
||||||
'time_particle': self.time_particle,
|
'time_particle': self.time_particle,
|
||||||
|
Loading…
Reference in New Issue
Block a user