From 29304bcd036f75472816b49523c15c1f3c29298c Mon Sep 17 00:00:00 2001 From: workpc Date: Wed, 14 May 2025 10:04:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=9F=E6=B2=B9=E6=97=A5=E5=BA=A6=E7=89=B9?= =?UTF-8?q?=E5=BE=81=E9=A2=84=E8=AD=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config_jingbo.py | 7 +++++++ lib/dataread.py | 26 ++++++++++++++++++++++++++ main_yuanyou.py | 13 +++++++++++-- 3 files changed, 44 insertions(+), 2 deletions(-) diff --git a/config_jingbo.py b/config_jingbo.py index 8c514fa..e5c094a 100644 --- a/config_jingbo.py +++ b/config_jingbo.py @@ -206,6 +206,9 @@ query_data_list_item_nos_url = f"http://{server_host}:8080/jingbo-dev/api/wareho push_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/dw/dataValue/pushDataValueList" # 上传停更数据到市场信息平台 push_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/crudeSaveOrupdate" +# 获取预警数据中取消订阅指标ID +get_waring_data_value_list_url = f"http://{server_host}:8080/jingbo-dev/api/basicBuiness/crudeOilWarning/dataList" + login_data = { "data": { @@ -299,6 +302,10 @@ push_waring_data_value_list_data = { "funcOperation": "同步" } + +get_waring_data_value_list_data = { + "data": "8", "funcModule": "商品数据同步", "funcOperation": "同步"} + # 八大维度数据项编码 bdwd_items = { 'ciri': 'yyycbdwdcr', diff --git a/lib/dataread.py b/lib/dataread.py index fcec16a..5f83674 100644 --- a/lib/dataread.py +++ b/lib/dataread.py @@ -1224,6 +1224,14 @@ class Config: def push_waring_data_value_list_data( self): return global_config['push_waring_data_value_list_data'] + @property + def get_waring_data_value_list_url( + self): return global_config['get_waring_data_value_list_url'] + + @property + def get_waring_data_value_list_data( + self): return global_config['get_waring_data_value_list_data'] + @property def bdwd_items(self): return global_config['bdwd_items'] @@ -2251,6 +2259,24 @@ def get_high_low_data(df): return df +def get_waring_data(): + '''获取取消订阅的指标数据''' + # 获取token + token = get_head_auth_report() + # 发送请求 + headers = {"Authorization": token} + config.logger.info('获取取消订阅指标ID中...') + items_res = requests.post(url=config.get_waring_data_value_list_url, headers=headers, + json=config.get_waring_data_value_list_data, timeout=(3, 35)) + json_data = json.loads(items_res.text) + json_data = json_data['data'] + quxiaodingyueidlist = [] + for i in json_data: + quxiaodingyueidlist.append(i['indicatorId']) + config.logger.info(f"获取到的数据:{quxiaodingyueidlist}") + return quxiaodingyueidlist + + # 时间特征,年,月,一年的多少天,周几,第几周,第几季度,每月的第几天, 每季度的第几天,是否每月的第一天,是否每月的最后一天,是否每季度的第一天,是否每季度的最后一天,是否每年的第一天,是否每年的最后一天 def addtimecharacteristics(df, dataset): """ diff --git a/main_yuanyou.py b/main_yuanyou.py index 74fb1c6..b42d539 100644 --- a/main_yuanyou.py +++ b/main_yuanyou.py @@ -63,10 +63,14 @@ global_config.update({ 'push_data_value_list_url': push_data_value_list_url, 'push_data_value_list_data': push_data_value_list_data, - # 上传数据项 + # 上传预警数据 'push_waring_data_value_list_url': push_waring_data_value_list_url, 'push_waring_data_value_list_data': push_waring_data_value_list_data, + # 获取取消订阅的数据 + 'get_waring_data_value_list_url': get_waring_data_value_list_url, + 'get_waring_data_value_list_data': get_waring_data_value_list_data, + # eta 配置 'APPID': APPID, 'SECRET': SECRET, @@ -381,7 +385,7 @@ def predict_main(): if True: logger.info('发送特征预警') # 获取取消订阅的指标ID - + quxiaodingyueidlist = get_waring_data() # 上传预警信息到数据库 warning_data_df = df_zhibiaoliebiao.copy() warning_data_df = warning_data_df[warning_data_df['停更周期'] > 3][[ @@ -393,6 +397,11 @@ def predict_main(): warning_data_df['warningDate'] = datetime.date.today().strftime( "%Y-%m-%d %H:%M:%S") warning_data_df['dataSource'] = 8 + # 去掉取消订阅的指标 + print(warning_data_df.shape) + warning_data_df = warning_data_df[~warning_data_df['indicatorId'].isin( + quxiaodingyueidlist)] + print(warning_data_df.shape) data = warning_data_df.to_json(orient='records', force_ascii=False) data = data.replace('日度', '1') data = data.replace('周度', '2')