|
@@ -4,12 +4,12 @@
|
|
# @Time :2025/3/28 16:20
|
|
# @Time :2025/3/28 16:20
|
|
# @Author :David
|
|
# @Author :David
|
|
# @Company: shenyang JY
|
|
# @Company: shenyang JY
|
|
-import os, requests, json
|
|
|
|
|
|
+import os, requests, json, time, traceback
|
|
import pandas as pd
|
|
import pandas as pd
|
|
import numpy as np
|
|
import numpy as np
|
|
from common.database_dml_koi import get_data_from_mongo
|
|
from common.database_dml_koi import get_data_from_mongo
|
|
from pymongo import MongoClient
|
|
from pymongo import MongoClient
|
|
-from flask import Flask,request,jsonify
|
|
|
|
|
|
+from flask import Flask,request,jsonify, g
|
|
from datetime import datetime
|
|
from datetime import datetime
|
|
# from common.logs import Log
|
|
# from common.logs import Log
|
|
# logger = Log('post-processing').logger
|
|
# logger = Log('post-processing').logger
|
|
@@ -17,13 +17,19 @@ from logging import getLogger
|
|
logger = getLogger('xx')
|
|
logger = getLogger('xx')
|
|
current_path = os.path.dirname(__file__)
|
|
current_path = os.path.dirname(__file__)
|
|
API_URL = "http://ds2:18080/accuracyAndBiasByJSON"
|
|
API_URL = "http://ds2:18080/accuracyAndBiasByJSON"
|
|
|
|
+app = Flask('cdq_coe_gen——service')
|
|
|
|
|
|
|
|
|
|
-def iterate_coe(pre_data, point, col_power, col_pre):
|
|
|
|
|
|
+@app.before_request
|
|
|
|
+def update_config():
|
|
|
|
+ # ------------ 整理参数,整合请求参数 ------------
|
|
|
|
+ g.coe = {}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+def iterate_coe(pre_data, point, col_power, col_pre, coe):
|
|
"""
|
|
"""
|
|
更新16个点系数
|
|
更新16个点系数
|
|
"""
|
|
"""
|
|
- coe = {}
|
|
|
|
T = 'T' + str(point + 1)
|
|
T = 'T' + str(point + 1)
|
|
best_acc, best_score1, best_coe_m, best_coe_n = 0, 0, 0, 0
|
|
best_acc, best_score1, best_coe_m, best_coe_n = 0, 0, 0, 0
|
|
best_score, best_acc1, best_score_m, best_score_n = 999, 0, 0, 0
|
|
best_score, best_acc1, best_score_m, best_score_n = 999, 0, 0, 0
|
|
@@ -154,6 +160,34 @@ def history_error(data, col_power, col_pre):
|
|
# data.to_csv('J01080原始数据.csv', index=False)
|
|
# data.to_csv('J01080原始数据.csv', index=False)
|
|
return data
|
|
return data
|
|
|
|
|
|
|
|
+@app.route('/data_nwp_ftp', methods=['POST'])
|
|
|
|
+def get_nwp_from_ftp():
|
|
|
|
+ # 获取程序开始时间
|
|
|
|
+ start_time = time.time()
|
|
|
|
+ result = {}
|
|
|
|
+ success = 0
|
|
|
|
+ args = {}
|
|
|
|
+ coe = g.coe
|
|
|
|
+ try:
|
|
|
|
+ args = request.values.to_dict()
|
|
|
|
+ logger.info(args)
|
|
|
|
+ data = get_data_from_mongo(args).sort_values(by='dateTime', ascending=True)
|
|
|
|
+ pre_data = history_error(data, col_power='realPower', col_pre='dq')
|
|
|
|
+ for point in range(0, 16, 1):
|
|
|
|
+ iterate_coe(pre_data, point, 'realPower', 'dq', coe)
|
|
|
|
+ success = 1
|
|
|
|
+ except Exception as e:
|
|
|
|
+ my_exception = traceback.format_exc()
|
|
|
|
+ my_exception.replace("\n", "\t")
|
|
|
|
+ result['msg'] = my_exception
|
|
|
|
+ logger.info("调系数出错:{}".format(my_exception))
|
|
|
|
+ end_time = time.time()
|
|
|
|
+ result['success'] = success
|
|
|
|
+ result['args'] = args
|
|
|
|
+ result['coe'] = coe
|
|
|
|
+ result['start_time'] = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(start_time))
|
|
|
|
+ result['end_time'] = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(end_time))
|
|
|
|
+ return result
|
|
|
|
|
|
if __name__ == "__main__":
|
|
if __name__ == "__main__":
|
|
args = {
|
|
args = {
|