ep-sdk-4pd 3.0.5.dev0__tar.gz → 4.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/PKG-INFO +1 -1
  2. ep_sdk_4pd-4.0.0/ep_sdk_4pd/__init__.py +1 -0
  3. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd/ep_data.py +87 -8
  4. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd/ep_system.py +2 -2
  5. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd.egg-info/PKG-INFO +1 -1
  6. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/setup.py +1 -1
  7. ep_sdk_4pd-3.0.5.dev0/ep_sdk_4pd/__init__.py +0 -1
  8. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/README.md +0 -0
  9. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd/models.py +0 -0
  10. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd.egg-info/SOURCES.txt +0 -0
  11. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd.egg-info/dependency_links.txt +0 -0
  12. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd.egg-info/requires.txt +0 -0
  13. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/ep_sdk_4pd.egg-info/top_level.txt +0 -0
  14. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/setup.cfg +0 -0
  15. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test.py +0 -0
  16. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_call_train_done.py +0 -0
  17. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_get_run_strategy.py +0 -0
  18. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_get_system_date.py +0 -0
  19. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_history_data.py +0 -0
  20. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_model1.py +0 -0
  21. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_model_output_dir.py +0 -0
  22. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_predict_data.py +0 -0
  23. {ep_sdk_4pd-3.0.5.dev0 → ep_sdk_4pd-4.0.0}/tests/test_/350/212/202/347/202/271/345/235/207/345/200/274_v2.py" +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ep_sdk_4pd
3
- Version: 3.0.5.dev0
3
+ Version: 4.0.0
4
4
  Summary: 4paradigm Electricity Platform Service SDK Library for Python
5
5
  Home-page: https://gitlab.4pd.io/electricityproject/electricity-platform-sdk
6
6
  Author: 4paradigm Electricity Platform SDK
@@ -0,0 +1 @@
1
+ __version__ = '4.0.0'
@@ -1,5 +1,6 @@
1
1
  import json
2
2
  import os
3
+ import time
3
4
  from datetime import timedelta, datetime
4
5
 
5
6
  import requests
@@ -9,13 +10,13 @@ from ep_sdk_4pd.ep_system import EpSystem
9
10
  from ep_sdk_4pd.models import HistoryDataRequest, PredictDataRequest
10
11
 
11
12
  # test 地址
12
- endpoint = 'http://172.27.88.56:6001'
13
+ # endpoint = 'http://172.27.88.56:6001'
13
14
 
14
15
  # prod 地址
15
16
  # endpoint = 'http://172.27.88.56:6601'
16
17
 
17
18
  # 外网 地址
18
- # endpoint = 'http://82.157.231.254'
19
+ endpoint = 'http://82.157.231.254'
19
20
 
20
21
  Authorization = 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJlbGVjdHJpY2l0eS1wbGF0Zm9ybSIsInN1YiI6IjEyMyIsImlhdCI6MTc0NjYwNjQ4NSwianRpIjoiMTIzXzE3NDY1Nzc2ODUxNDYiLCJ0eXBlIjoiYWNjZXNzIn0.Clrz_8j3aJlXTWPX-4DS0NxXN9idTcUIc0AtXOMIjd8'
21
22
 
@@ -61,25 +62,103 @@ class EpData:
61
62
  'content-type': request.content_type,
62
63
  'Authorization': Authorization
63
64
  }
64
-
65
+ scopes = request.scope.split(",")
66
+ assert len(scopes) > 0 or "scope 参数错误"
67
+ gfs_resp = None
68
+ if 'gfs' in scopes:
69
+ gfs_resp = EpData.history_large_gfs_data(request=request)
70
+ if gfs_resp.code != 200:
71
+ return gfs_resp
72
+ scopes.remove('gfs')
73
+ if len(scopes) == 0:
74
+ return gfs_resp
65
75
  payload = {
66
- 'scope': request.scope,
76
+ 'scope': ",".join(scopes),
67
77
  'system_date': request.system_date,
68
78
  'days': request.days,
69
79
  'strategy_id': request.strategy_id
70
80
  }
71
-
72
81
  response = requests.request(
73
82
  method=request.method,
74
83
  url=full_url,
75
84
  headers=headers,
76
85
  data=json.dumps(payload),
77
86
  )
87
+ code = response.json().get('code', None)
88
+ data = response.json().get('data', None)
89
+ message = response.json().get('message', None)
90
+ if code == 200 and gfs_resp:
91
+ data.update(gfs_resp.data)
92
+ return ep_sdk_4pd_models.HistoryDataResponse(response=ep_sdk_4pd_models.BaseResponse(**{
93
+ 'code': code,
94
+ 'data': data,
95
+ 'message': message
96
+ }))
78
97
 
98
+ @staticmethod
99
+ def history_large_gfs_data(
100
+ request: ep_sdk_4pd_models.HistoryDataRequest = None,
101
+ ) -> ep_sdk_4pd_models.HistoryDataResponse:
102
+ """
103
+ 由于 gfs 数据可能会比较长,这里处理一下 将长时间的数据进行切分 然后进行组装。
104
+ 如果 request.days > 31 那么就将时间按照 31天的时间长度 进行切分
105
+ """
106
+ unit = 31
107
+ full_url = f'{endpoint}{request.api}'
108
+ headers = {
109
+ 'content-type': request.content_type,
110
+ 'Authorization': Authorization
111
+ }
112
+ ret = list()
113
+ code = 200
114
+ data = None
115
+ message = None
116
+ days = request.days
117
+ date = datetime.strptime(request.system_date, "%Y-%m-%d")
118
+ while True:
119
+ if days > unit:
120
+ days -= unit
121
+ d = unit
122
+ else:
123
+ d = days
124
+ days = 0
125
+
126
+ for _ in range(0, 3):
127
+ payload = {
128
+ 'scope': "gfs",
129
+ 'system_date': date.strftime("%Y-%m-%d"),
130
+ 'days': d,
131
+ 'strategy_id': request.strategy_id
132
+ }
133
+ response = requests.request(
134
+ method=request.method,
135
+ url=full_url,
136
+ headers=headers,
137
+ data=json.dumps(payload),
138
+ )
139
+ code = response.json().get('code', None)
140
+ data = response.json().get('data', None)
141
+ message = response.json().get('message', None)
142
+ if code == 200:
143
+ date -= timedelta(days=unit)
144
+ ret.extend(data['gfs'])
145
+ break
146
+ else:
147
+ time.sleep(0.1)
148
+ else:
149
+ return ep_sdk_4pd_models.HistoryDataResponse(response=ep_sdk_4pd_models.BaseResponse(
150
+ code=code,
151
+ data=data,
152
+ message=message,
153
+ ))
154
+ if days == 0:
155
+ break
79
156
  base_resp = ep_sdk_4pd_models.BaseResponse(
80
- code=response.json().get('code', None),
81
- data=response.json().get('data', None),
82
- message=response.json().get('message', None),
157
+ code=code,
158
+ data={
159
+ "gfs": ret
160
+ },
161
+ message=message,
83
162
  )
84
163
  return ep_sdk_4pd_models.HistoryDataResponse(response=base_resp)
85
164
 
@@ -12,13 +12,13 @@ from ep_sdk_4pd import models as ep_sdk_4pd_models
12
12
  from ep_sdk_4pd.models import RunStrategyRequest, CallTrainDoneRequest, RsaKeyRequest
13
13
 
14
14
  # test 地址
15
- endpoint = 'http://172.27.88.56:6001'
15
+ # endpoint = 'http://172.27.88.56:6001'
16
16
 
17
17
  # prod 地址
18
18
  # endpoint = 'http://172.27.88.56:6601'
19
19
 
20
20
  # 外网 地址
21
- # endpoint = 'http://82.157.231.254'
21
+ endpoint = 'http://82.157.231.254'
22
22
 
23
23
  Authorization = 'Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJlbGVjdHJpY2l0eS1wbGF0Zm9ybSIsInN1YiI6IjEyMyIsImlhdCI6MTc0NjYwNjQ4NSwianRpIjoiMTIzXzE3NDY1Nzc2ODUxNDYiLCJ0eXBlIjoiYWNjZXNzIn0.Clrz_8j3aJlXTWPX-4DS0NxXN9idTcUIc0AtXOMIjd8'
24
24
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ep_sdk_4pd
3
- Version: 3.0.5.dev0
3
+ Version: 4.0.0
4
4
  Summary: 4paradigm Electricity Platform Service SDK Library for Python
5
5
  Home-page: https://gitlab.4pd.io/electricityproject/electricity-platform-sdk
6
6
  Author: 4paradigm Electricity Platform SDK
@@ -8,7 +8,7 @@ DESCRIPTION = '4paradigm Electricity Platform Service SDK Library for Python'
8
8
  AUTHOR = '4paradigm Electricity Platform SDK'
9
9
  AUTHOR_EMAIL = ''
10
10
  URL = 'https://gitlab.4pd.io/electricityproject/electricity-platform-sdk'
11
- VERSION = '3.0.5.dev0'
11
+ VERSION = '4.0.0'
12
12
  REQUIRES = ['requests']
13
13
 
14
14
  LONG_DESCRIPTION = ''
@@ -1 +0,0 @@
1
- __version__ = '3.0.5.dev0'
File without changes
File without changes