cloudpss 4.0.1__py3-none-any.whl → 4.0.2__py3-none-any.whl
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.
- cloudpss/dslab/dataManageModel.py +13 -2
- cloudpss/dslab/dslab.py +65 -0
- cloudpss/utils/httprequests.py +1 -1
- cloudpss/version.py +1 -1
- {cloudpss-4.0.1.dist-info → cloudpss-4.0.2.dist-info}/METADATA +1 -1
- {cloudpss-4.0.1.dist-info → cloudpss-4.0.2.dist-info}/RECORD +8 -8
- {cloudpss-4.0.1.dist-info → cloudpss-4.0.2.dist-info}/WHEEL +0 -0
- {cloudpss-4.0.1.dist-info → cloudpss-4.0.2.dist-info}/top_level.txt +0 -0
@@ -182,16 +182,16 @@ class DataManageModel(object):
|
|
182
182
|
})
|
183
183
|
return json.loads(r.text)
|
184
184
|
|
185
|
-
def AddDataItem(self, kind, data):
|
185
|
+
def AddDataItem(self, kind, data, extra=None):
|
186
186
|
'''
|
187
187
|
向kind类型的数据库中添加内容为data的数据项
|
188
188
|
:params: kind str类型,数据的种类标识,包含:光伏、风机、燃气、水电、常规小火电、生物质发电、垃圾电厂、传输线、变压器、开关、负荷分类、负荷用户、储能配置、上网电价、输配电价、常数电价、阶梯电价、分时电价、分时阶梯电价
|
189
189
|
:params: data dict类型,表示添加的数据内容,其数据结构应满足对应数据项的结构要求
|
190
|
+
:params extra list类型,表示添加的基准出力曲线、负荷曲线、策略曲线数据
|
190
191
|
|
191
192
|
:return: list<dict>类型,返回该种类下所有数据项的列表
|
192
193
|
'''
|
193
194
|
assert (kind in self._kindUrlMap), "数据类型不存在"
|
194
|
-
extra = data.get('extra')
|
195
195
|
if extra is None or not extra:
|
196
196
|
extra = getCurveData(kind)
|
197
197
|
r = {
|
@@ -255,6 +255,17 @@ class DataManageModel(object):
|
|
255
255
|
assert (kind in self._kindUrlMap), "数据类型不存在"
|
256
256
|
url = f"{self._baseUri}rest/{kind}"
|
257
257
|
return self._fetchItemData(url)
|
258
|
+
|
259
|
+
def GetItemExtra(self, kind, uuid):
|
260
|
+
'''
|
261
|
+
获取kind类型对应数据项的基准出力曲线、负荷曲线、策略曲线数据
|
262
|
+
:params: kind str类型,数据的类型
|
263
|
+
:params: uuid str类型,数据的unique id
|
264
|
+
'''
|
265
|
+
assert (kind in self._kindUrlMap), "数据类型不存在"
|
266
|
+
url = f"{self._baseUri}rest/id/{uuid}"
|
267
|
+
data = self._fetchItemData(url)
|
268
|
+
return data.get('extra', None).get('data', None)
|
258
269
|
|
259
270
|
class DSLabDataManageModel(DataManageModel):
|
260
271
|
_baseUri = 'api/ies/'
|
cloudpss/dslab/dslab.py
CHANGED
@@ -143,3 +143,68 @@ class DSLab(object):
|
|
143
143
|
raise Exception("不是储能规划方案内核运行生成算法的计算方案")
|
144
144
|
return self.run(job=job, name=name)
|
145
145
|
|
146
|
+
@staticmethod
|
147
|
+
def createProjectGroup(name, description=None, createById=None):
|
148
|
+
'''
|
149
|
+
创建项目组
|
150
|
+
|
151
|
+
:params name: String 项目组名称
|
152
|
+
:params description: String 项目组描述 可选参数
|
153
|
+
:params createById Int 父项目组id 可选参数,如果是从已有项目组导入的项目组,必填此项
|
154
|
+
|
155
|
+
:return: Int 返回创建的项目组id
|
156
|
+
'''
|
157
|
+
try:
|
158
|
+
if createById is None:
|
159
|
+
isImport = 0
|
160
|
+
else:
|
161
|
+
isImport = 1
|
162
|
+
payload = {
|
163
|
+
'name': name,
|
164
|
+
'description': description,
|
165
|
+
'isImport': isImport,
|
166
|
+
'createById': createById,
|
167
|
+
}
|
168
|
+
r = request(
|
169
|
+
'POST', 'api/ies/rest/group', data=json.dumps(payload))
|
170
|
+
if r.ok:
|
171
|
+
r = request('GET', 'api/ies/rest/group')
|
172
|
+
groupList = json.loads(r.text)
|
173
|
+
id = groupList[len(groupList) -1].get('id', None)
|
174
|
+
return id
|
175
|
+
except Exception as e:
|
176
|
+
raise Exception('创建项目组失败')
|
177
|
+
|
178
|
+
@staticmethod
|
179
|
+
def createProject(name, gid, description=None, initialTerm=None, build=None, operate=None, yearsInOperation=None):
|
180
|
+
'''
|
181
|
+
创建项目
|
182
|
+
|
183
|
+
:params name: String 项目名称
|
184
|
+
:params gid: Int 父项目组id,
|
185
|
+
:params description: String 项目描述, 可选参数
|
186
|
+
:params initialTerm: String 项目起始年限,可选参数
|
187
|
+
:params build: String 项目建设期(年),可选参数
|
188
|
+
:params operate: String 项目生命周期(年),可选参数
|
189
|
+
:params yearsInOperation: String 已投运年限,可选参数
|
190
|
+
|
191
|
+
:return: Int 返回创建的项目id
|
192
|
+
'''
|
193
|
+
try:
|
194
|
+
payload = {
|
195
|
+
'name': name,
|
196
|
+
'gid': gid,
|
197
|
+
'description': description,
|
198
|
+
'config': {
|
199
|
+
'initialTerm': initialTerm,
|
200
|
+
'build': build,
|
201
|
+
'operate': operate,
|
202
|
+
'yearsInOperation': yearsInOperation,
|
203
|
+
}
|
204
|
+
}
|
205
|
+
r = request(
|
206
|
+
'POST', 'api/ies/rest/simulation', data=json.dumps(payload))
|
207
|
+
project = json.loads(r.text)
|
208
|
+
return project.get('resource', None)
|
209
|
+
except Exception as e:
|
210
|
+
raise Exception('创建项目失败')
|
cloudpss/utils/httprequests.py
CHANGED
@@ -24,7 +24,7 @@ def request(method, uri, baseUrl=None, params={}, token=None, **kwargs):
|
|
24
24
|
raise Exception(
|
25
25
|
'当前SDK版本(ver 3.X.X)与服务器版本(3.0.0 以下)不兼容,请更换服务器地址或更换SDK版本。')
|
26
26
|
os.environ['X_CLOUDPSS_VERSION'] = r.headers['X-Cloudpss-Version']
|
27
|
-
if float(r.headers['X-Cloudpss-Version'])
|
27
|
+
if float(r.headers['X-Cloudpss-Version']) >= 5:
|
28
28
|
raise Exception('当前SDK版本(ver '+__version__ +')与服务器版本(ver ' +
|
29
29
|
r.headers['X-Cloudpss-Version'] +
|
30
30
|
'.X.X)不兼容,请更换服务器地址或更换SDK版本(pip 使用 pip install -U cloudpss 命令更新, conda 使用 conda update cloudpss 命令更新)。')
|
cloudpss/version.py
CHANGED
@@ -1 +1 @@
|
|
1
|
-
__version__ = '4.0.
|
1
|
+
__version__ = '4.0.2'
|
@@ -1,10 +1,10 @@
|
|
1
1
|
cloudpss/__init__.py,sha256=Ov8K45KxSsPalPErvTRUb2GvPdJ3myucFqx7s37_YZo,777
|
2
2
|
cloudpss/verify.py,sha256=KF4Gd59DGvCyIEkRD7rNnekWw22XxJpi3DW6keb6j4c,1498
|
3
|
-
cloudpss/version.py,sha256=
|
3
|
+
cloudpss/version.py,sha256=X2FSVyXfKfCh487cbRC3bWEH0TAFIoyQIus2dzhKa3U,21
|
4
4
|
cloudpss/dslab/DSLabFinancialResult.py,sha256=7_ho5Xzm9ufcMXo1wCjxJe4VQxqod-6jpvVF3XjlXcw,3612
|
5
5
|
cloudpss/dslab/__init__.py,sha256=rm3bUFSet3KZYrkKo6pfMBNfjvR3U1rwnTnEA5sE87Q,44
|
6
|
-
cloudpss/dslab/dataManageModel.py,sha256=
|
7
|
-
cloudpss/dslab/dslab.py,sha256=
|
6
|
+
cloudpss/dslab/dataManageModel.py,sha256=_a_LiZvnOup71ehgRlI5Rzu1tMO9zSF5AVBlAWcRh90,10710
|
7
|
+
cloudpss/dslab/dslab.py,sha256=XqbciGqDd22d5u983ysQQpizHBwFzuVBeGcGdIr8Ksc,8848
|
8
8
|
cloudpss/dslab/financialAnalysisModel.py,sha256=o-s6rR74UIjj5V9oB9fjdyo3Q3ogtY3QPhxSXbiBHXk,5058
|
9
9
|
cloudpss/dslab/files/__init__.py,sha256=l2g0VadtTiMW39zwCwHPHUC01Kbklb_nFUPVeQ16FwM,58
|
10
10
|
cloudpss/dslab/files/curveData.py,sha256=InlQ_6ZfVkFdhK65PldvIbw_X7Pys2ci4jexZ0flL6c,4291324
|
@@ -61,10 +61,10 @@ cloudpss/utils/IO.py,sha256=Uh1NOlBn15Jl5_aWS2QRO2-QsKlFT9o8DPtP8-8Z2PA,5314
|
|
61
61
|
cloudpss/utils/__init__.py,sha256=NU5ZAeXH733nJKooH_1cdT9ntPEYRG4Kk3PA7P6bK_s,291
|
62
62
|
cloudpss/utils/dataEncoder.py,sha256=5PUPb844eOGgFnYrMM8bdjdKH_MZz0lk-67uo8TvwEo,885
|
63
63
|
cloudpss/utils/graphqlUtil.py,sha256=swl6XT1UmUQHdHjMWw3M0i8meEmVKNQvX0SHsbgg8TU,255
|
64
|
-
cloudpss/utils/httprequests.py,sha256
|
64
|
+
cloudpss/utils/httprequests.py,sha256=-RYi1Dc4QDqqupuw0x-lq74dFvCqPrZfCJKgrdolEpk,1643
|
65
65
|
cloudpss/utils/matlab.py,sha256=SLwVt790BjklJK2XNELt9R2n_1ej9Y8QsTIdFkKXLWE,795
|
66
66
|
cloudpss/utils/yamlLoader.py,sha256=KRlRkHFltOjqxa_sesdBLf1W5J7XTgvubszsSw-XR0U,2885
|
67
|
-
cloudpss-4.0.
|
68
|
-
cloudpss-4.0.
|
69
|
-
cloudpss-4.0.
|
70
|
-
cloudpss-4.0.
|
67
|
+
cloudpss-4.0.2.dist-info/METADATA,sha256=B5ede-aq6jNV-jXKAtp_qF_KDrz-Z2ZekA90onhHEVA,2318
|
68
|
+
cloudpss-4.0.2.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
|
69
|
+
cloudpss-4.0.2.dist-info/top_level.txt,sha256=wS9qPU4-aWM9ouzMOx34Nlq-GkdQKpr9vBskwut1BD8,9
|
70
|
+
cloudpss-4.0.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|