|
@@ -270,31 +270,43 @@ def export_script_file(item: List[QueryWordItem]):
|
|
|
def get_script_config_lst(item: ScriptConfigLst):
|
|
|
try:
|
|
|
end_date = item.end_date + timedelta(days=1)
|
|
|
+ org_df = pd.DataFrame()
|
|
|
sql = f"select * from ctop_ai_script_query_word_config where config_id in " \
|
|
|
f"(select distinct(config_id) config_id from ctop_ai_script_query_word_config " \
|
|
|
f"where start_time >= '{item.start_date}' and start_time < '{end_date}' " \
|
|
|
f"and ('{item.search_word}' = '' or query_word like '%%{item.search_word}%%') ) "
|
|
|
|
|
|
org_df = pd.read_sql(sql, ai_word_engine)
|
|
|
+ if not org_df.empty:
|
|
|
+ g_df = org_df.groupby('config_id').apply(lambda x: pd.Series({'query_word_lst': list(x['query_word'].unique()),
|
|
|
+ 'operator': x['operator'].min(),
|
|
|
+ 'create_time': str(x['start_time'].min()),
|
|
|
+ 'user_id': x['user_id'].min()}))
|
|
|
+ g_df.reset_index(drop=False, inplace=True)
|
|
|
+ g_df.sort_values(by='create_time', ascending=False, inplace=True)
|
|
|
+ g_df['number'] = list(range(1, len(g_df) + 1))
|
|
|
+ total_num = g_df.shape[0]
|
|
|
+ detail = g_df.iloc[(item.page_num - 1) * item.page_size: item.page_num * item.page_size].to_dict('records')
|
|
|
+ response = {'code': 0,
|
|
|
+ "message": "查询成功",
|
|
|
+ "success": True,
|
|
|
+ "result": detail,
|
|
|
+ "total_num": total_num,
|
|
|
+ "page_num": item.page_num,
|
|
|
+ "page_size": item.page_size}
|
|
|
+ logger.info(f"request body: {item}, response body: {response}")
|
|
|
+ return response
|
|
|
+ else:
|
|
|
+ response = {'code': 0,
|
|
|
+ "message": "没有符合条件的数据",
|
|
|
+ "success": True,
|
|
|
+ "result": [],
|
|
|
+ "total_num": 0,
|
|
|
+ "page_num": item.page_num,
|
|
|
+ "page_size": item.page_size}
|
|
|
+ logger.info(f"request body: {item}, response body: {response}")
|
|
|
+ return response
|
|
|
|
|
|
- g_df = org_df.groupby('config_id').apply(lambda x: pd.Series({'query_word_lst': list(x['query_word'].unique()),
|
|
|
- 'operator': x['operator'].min(),
|
|
|
- 'create_time': str(x['start_time'].min()),
|
|
|
- 'user_id': x['user_id'].min()}))
|
|
|
- g_df.reset_index(drop=False, inplace=True)
|
|
|
- g_df.sort_values(by='create_time', ascending=False, inplace=True)
|
|
|
- g_df['number'] = list(range(1, len(g_df) + 1))
|
|
|
- total_num = g_df.shape[0]
|
|
|
- detail = g_df.iloc[(item.page_num - 1) * item.page_size: item.page_num * item.page_size].to_dict('records')
|
|
|
- response = {'code': 0,
|
|
|
- "message": "查询成功",
|
|
|
- "success": True,
|
|
|
- "result": detail,
|
|
|
- "total_num": total_num,
|
|
|
- "page_num": item.page_num,
|
|
|
- "page_size": item.page_size}
|
|
|
- logger.info(f"request body: {item}, response body: {response}")
|
|
|
- return response
|
|
|
except:
|
|
|
response = {"code": -1,
|
|
|
"message": traceback.format_exc(),
|