From 9e6c3c4290524dac10d1ec6c3e933f85437027ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=80=C3=AE=C3=97=C3=9A=C3=95=C3=B1?= Date: Wed, 24 Aug 2022 16:13:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E4=BA=8B=E4=BB=B6=E9=A6=96?= =?UTF-8?q?=E6=AC=A1=E8=A7=A6=E5=8F=91=E9=97=B4=E9=9A=94=E5=88=86=E6=9E=90?= =?UTF-8?q?1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/api_v1/endpoints/query.py | 2 ++ models/behavior_analysis.py | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/api/api_v1/endpoints/query.py b/api/api_v1/endpoints/query.py index b8652a6..c1970a7 100644 --- a/api/api_v1/endpoints/query.py +++ b/api/api_v1/endpoints/query.py @@ -1717,6 +1717,8 @@ async def first_event_model( res_msg = { 'level': true_step, 'list': list_data, + 'start_date': res['start_date'], + 'end_date': res['end_date'], 'p': p_data } return schemas.Msg(code=0, msg='ok', data=res_msg) diff --git a/models/behavior_analysis.py b/models/behavior_analysis.py index ad6ca9f..bf1b79a 100644 --- a/models/behavior_analysis.py +++ b/models/behavior_analysis.py @@ -361,7 +361,7 @@ class BehaviorAnalysis: return event_filters, user_filters - async def handler_filts(self, *filters,nu=0): + async def handler_filts(self, *filters, nu=0): """ :param filters: (filts:list,relation:str) @@ -568,7 +568,7 @@ class BehaviorAnalysis: """事件分析生成sql会经过""" sqls = [] event_time_col = getattr(self.event_tbl.c, '#event_time') - for idx,event in enumerate(self.events): + for idx, event in enumerate(self.events): operator_ = event.get('operator_val', '') # 排头显示名 event_name_display = event.get('eventNameDisplay') @@ -947,7 +947,16 @@ ORDER BY level event_end = self.events[1] # 查询事件 start_event_name = event_start.get('eventName', 'create_account') end_event_name = event_end.get('eventName', 'pay') - sql_diff = self.event_view.get('event_diff', 'minute') # 类型选择 'year','month','day','hour','minute','second' + diff_dict = { + 'year': 'year', + 'P1M': 'year', + 'P1D': 'year', + 'PT1H': 'year', + 'PT1M': 'minute', + 'second': 'second' + } + view_diff = self.event_view.get('event_diff', 'PT1M') # 类型选择 'year','month','day','hour','minute','second' + sql_diff = diff_dict.get(view_diff, 'minute') # end_where = event_end.get('filts', []) # end_where_str = '' # if end_where: