cloudpss 4.1.1b8__py3-none-any.whl → 4.5.0__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/__init__.py +2 -3
- cloudpss/asyncio/__init__.py +8 -0
- cloudpss/asyncio/job/__init__.py +5 -0
- cloudpss/asyncio/job/job.py +116 -0
- cloudpss/asyncio/job/messageStreamReceiver.py +121 -0
- cloudpss/asyncio/job/messageStreamSender.py +45 -0
- cloudpss/asyncio/model/__init__.py +5 -0
- cloudpss/asyncio/model/model.py +257 -0
- cloudpss/asyncio/model/revision.py +41 -0
- cloudpss/asyncio/model/topology.py +34 -0
- cloudpss/asyncio/utils/__init__.py +6 -0
- cloudpss/{utils → asyncio/utils}/httpAsyncRequest.py +2 -2
- cloudpss/function/functionExecution.py +36 -3
- cloudpss/ieslab/DataManageModel.py +131 -9
- cloudpss/ieslab/EvaluationModel.py +80 -9
- cloudpss/ieslab/IESLabOpt.py +235 -0
- cloudpss/ieslab/IESLabPlan.py +82 -4
- cloudpss/ieslab/IESLabSimulation.py +59 -32
- cloudpss/ieslab/PlanModel.py +276 -33
- cloudpss/ieslab/__init__.py +2 -1
- cloudpss/job/job.py +136 -141
- cloudpss/job/jobReceiver.py +8 -2
- cloudpss/job/messageStreamReceiver.py +42 -99
- cloudpss/job/messageStreamSender.py +5 -42
- cloudpss/job/{view/EMTView.py → result/EMTResult.py} +11 -13
- cloudpss/job/result/IESLabSimulationResult.py +5 -0
- cloudpss/job/result/IESLabTypicalDayResult.py +136 -0
- cloudpss/job/{view/IESView.py → result/IESResult.py} +2 -2
- cloudpss/job/{view/PowerFlowView.py → result/PowerFlowResult.py} +2 -2
- cloudpss/job/result/__init__.py +39 -0
- cloudpss/job/{view/view.py → result/result.py} +37 -8
- cloudpss/model/implements/diagram.py +113 -0
- cloudpss/model/jobDefinitions.py +6 -6
- cloudpss/model/model.py +232 -209
- cloudpss/model/revision.py +30 -35
- cloudpss/model/topology.py +13 -15
- cloudpss/runner/IESLabEvaluationResult.py +14 -6
- cloudpss/runner/IESLabPlanResult.py +91 -35
- cloudpss/runner/IESLabTypicalDayResult.py +62 -50
- cloudpss/runner/MessageStreamReceiver.py +5 -100
- cloudpss/runner/result.py +6 -1
- cloudpss/runner/runner.py +77 -48
- cloudpss/utils/IO.py +1 -1
- cloudpss/utils/graphqlUtil.py +3 -2
- cloudpss/utils/httprequests.py +16 -8
- cloudpss/version.py +1 -1
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.5.0.dist-info}/METADATA +2 -2
- cloudpss-4.5.0.dist-info/RECORD +70 -0
- cloudpss/dslab/__init__.py +0 -2
- cloudpss/dslab/dataManageModel.py +0 -275
- cloudpss/dslab/dslab.py +0 -210
- cloudpss/dslab/files/__init__.py +0 -2
- cloudpss/dslab/files/curveData.py +0 -140229
- cloudpss/dslab/files/files.py +0 -27
- cloudpss/dslab/financialAnalysisModel.py +0 -137
- cloudpss/job/jobMachine.py +0 -11
- cloudpss/job/jobPolicy.py +0 -129
- cloudpss/job/jobQueue.py +0 -14
- cloudpss/job/jobTres.py +0 -6
- cloudpss/job/view/IESLabSimulationView.py +0 -5
- cloudpss/job/view/IESLabTypicalDayView.py +0 -27
- cloudpss/job/view/__init__.py +0 -42
- cloudpss/runner/DSLabResult.py +0 -92
- cloudpss-4.1.1b8.dist-info/RECORD +0 -71
- /cloudpss/{utils → asyncio/utils}/AsyncIterable.py +0 -0
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.5.0.dist-info}/WHEEL +0 -0
- {cloudpss-4.1.1b8.dist-info → cloudpss-4.5.0.dist-info}/top_level.txt +0 -0
cloudpss/dslab/files/files.py
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
from .curveData import 基准出力曲线, 基准出力曲线2, 基准出力曲线3, 负荷曲线, 策略曲线, 运行策略曲线
|
2
|
-
|
3
|
-
extra_paths = {
|
4
|
-
'光伏': 基准出力曲线,
|
5
|
-
'光伏曲线': 基准出力曲线,
|
6
|
-
'风机': 基准出力曲线,
|
7
|
-
'风机曲线': 基准出力曲线,
|
8
|
-
'燃气': 基准出力曲线2,
|
9
|
-
'燃气曲线': 基准出力曲线,
|
10
|
-
'水电': 基准出力曲线2,
|
11
|
-
'水电曲线': 基准出力曲线,
|
12
|
-
'火电': 基准出力曲线2,
|
13
|
-
'火电曲线': 基准出力曲线,
|
14
|
-
'生物质发电': 基准出力曲线2,
|
15
|
-
'生物质发电曲线': 基准出力曲线,
|
16
|
-
'垃圾电厂': 基准出力曲线2,
|
17
|
-
'垃圾电厂曲线': 基准出力曲线,
|
18
|
-
'负荷分类': 负荷曲线,
|
19
|
-
'负荷用户': 负荷曲线,
|
20
|
-
'储能运行策略': 运行策略曲线,
|
21
|
-
}
|
22
|
-
|
23
|
-
def getCurveData(kind):
|
24
|
-
if kind in extra_paths:
|
25
|
-
return extra_paths[kind]
|
26
|
-
else :
|
27
|
-
return []
|
@@ -1,137 +0,0 @@
|
|
1
|
-
import time
|
2
|
-
from cloudpss.runner.runner import Runner, HttpRunner, DSLabRunner
|
3
|
-
from cloudpss.runner.DSLabResult import DSLabResult
|
4
|
-
from ..utils import request
|
5
|
-
import json
|
6
|
-
|
7
|
-
class DSLabFinancialAnalysisModel(object):
|
8
|
-
_baseUri = 'api/dslab/rest/pe/'
|
9
|
-
|
10
|
-
_kindNameMap = {
|
11
|
-
"投资组成": "investmentbanchandproportion",
|
12
|
-
"资金来源": "capitalsource",
|
13
|
-
"资产形式": "assetformation",
|
14
|
-
"生产成本": "productioncost",
|
15
|
-
"流动资金及财务费用": "workingcapitalandfinancialexpenses",
|
16
|
-
"税率及附加": "projectcalculation",
|
17
|
-
}
|
18
|
-
|
19
|
-
# 财务评价基础参数接口默认值
|
20
|
-
_financialParasDefaultValues = {
|
21
|
-
"资产形式": {
|
22
|
-
"fixedAssetsRatio": "95",
|
23
|
-
"residualRrate": "5",
|
24
|
-
"depreciationPeriod": "15",
|
25
|
-
"reimbursementPeriod": "5"
|
26
|
-
},
|
27
|
-
"生产成本": {
|
28
|
-
'annualSalary': "8",
|
29
|
-
'capacity': "4",
|
30
|
-
'insuranceRate': "0.25",
|
31
|
-
'materialsExpenses': "5.0",
|
32
|
-
'otherExpenses': "1.0",
|
33
|
-
'welfareFactor': "0"
|
34
|
-
},
|
35
|
-
"流动资金及财务费用": {
|
36
|
-
"annualAPCirculationTimes": "12",
|
37
|
-
"annualARCirculationTimes": "12",
|
38
|
-
"annualCashCirculationTimes": "12",
|
39
|
-
"annualStockCirculationTimes": "12",
|
40
|
-
"interestRateAndWorkingCapital": "4",
|
41
|
-
"workingCapitalLoanRatio": "70"
|
42
|
-
},
|
43
|
-
"税率及附加": {
|
44
|
-
"aleatoricAccumulationFundRate": "0",
|
45
|
-
"basicDiscountRate": "8",
|
46
|
-
"cityMaintenanceConstructionTaxTate": "5",
|
47
|
-
"corporateIncomeTaxRate": "25",
|
48
|
-
"educationFeePlus": "5",
|
49
|
-
"electricityVATRate": "18",
|
50
|
-
"fuelBoughtVATRate": "10",
|
51
|
-
"hotColdVATRate": "12",
|
52
|
-
"legalAccumulationFundRate": "10",
|
53
|
-
"localEducationPlus": "2",
|
54
|
-
"materialBoughtVATRate": "17",
|
55
|
-
"steamSaleVATRate": "12"
|
56
|
-
}
|
57
|
-
}
|
58
|
-
|
59
|
-
def __init__(self, simulationId):
|
60
|
-
'''
|
61
|
-
初始化
|
62
|
-
'''
|
63
|
-
self.simulationId = simulationId
|
64
|
-
|
65
|
-
def _saveItemData(self, url, data):
|
66
|
-
'''
|
67
|
-
保存url链接对应的优化方案下财务评估模块的基础信息
|
68
|
-
:param url string类型,表示优化方案的接口链接
|
69
|
-
|
70
|
-
:return: dict 类型,代表方案对应的财务评价基础参数信息
|
71
|
-
'''
|
72
|
-
r = request('POST', url, None, data=json.dumps(data))
|
73
|
-
return json.loads(r.text)
|
74
|
-
|
75
|
-
def _fetchItemData(self, url, planID):
|
76
|
-
'''
|
77
|
-
获取planID对应的优化方案下财务评估模块的基础信息
|
78
|
-
:param planID int类型,表示优化方案的ID,数值位于0~优化方案数量之间
|
79
|
-
|
80
|
-
:return: dict 类型,为源数据的引用,代表方案对应的财务评价基础参数信息
|
81
|
-
'''
|
82
|
-
r = request('GET',
|
83
|
-
url,
|
84
|
-
params={
|
85
|
-
"planId": planID,
|
86
|
-
"simu": self.simulationId
|
87
|
-
})
|
88
|
-
return json.loads(r.text)
|
89
|
-
|
90
|
-
def run(self, planID) -> Runner[DSLabResult]:
|
91
|
-
'''
|
92
|
-
运行财务评价概览计算
|
93
|
-
|
94
|
-
:param planID int类型,表示优化方案的ID,数值位于0~优化方案数量之间
|
95
|
-
|
96
|
-
:return: Runner[DSLabResult]
|
97
|
-
'''
|
98
|
-
url = 'api/dslab/rest/saveDataToclickhouse'
|
99
|
-
try:
|
100
|
-
r = request('GET',
|
101
|
-
url,
|
102
|
-
params={
|
103
|
-
"planId": planID,
|
104
|
-
"simu": self.simulationId,
|
105
|
-
"CMD_TYPE": 'financialEvaluation'
|
106
|
-
})
|
107
|
-
data = json.loads(r.text)
|
108
|
-
return DSLabRunner({'rid': 'function/ieslab/evaluation'},
|
109
|
-
self.simulationId,
|
110
|
-
planId=planID,
|
111
|
-
cmdType='financialEvaluation')
|
112
|
-
except:
|
113
|
-
raise Exception('财务评价概览计算失败')
|
114
|
-
|
115
|
-
def GetFinancialParams(self, planID):
|
116
|
-
'''
|
117
|
-
获取planID对应的优化方案下财务评估模块的基础信息
|
118
|
-
:param planID int类型,表示优化方案的ID,数值位于0~优化方案数量之间
|
119
|
-
|
120
|
-
:return: dict 类型,为源数据的引用,代表方案对应的财务评价基础参数信息
|
121
|
-
'''
|
122
|
-
dict_result = dict()
|
123
|
-
for k, v in self._kindNameMap.items():
|
124
|
-
kind = self._kindNameMap.get(k, k)
|
125
|
-
url = f"{self._baseUri}{kind}"
|
126
|
-
list_data = self._fetchItemData(url, planID)
|
127
|
-
if not list_data :
|
128
|
-
data = {
|
129
|
-
"simu": self.simulationId,
|
130
|
-
"planId": planID,
|
131
|
-
}
|
132
|
-
if k in self._financialParasDefaultValues:
|
133
|
-
data.update(self._financialParasDefaultValues[k])
|
134
|
-
dict_result[v] = self._saveItemData(url, data)
|
135
|
-
else:
|
136
|
-
dict_result[v] = list_data
|
137
|
-
return dict_result
|
cloudpss/job/jobMachine.py
DELETED
cloudpss/job/jobPolicy.py
DELETED
@@ -1,129 +0,0 @@
|
|
1
|
-
from cloudpss.job.jobQueue import JobQueue
|
2
|
-
from cloudpss.job.jobTres import JobTres
|
3
|
-
from cloudpss.utils.graphqlUtil import graphql_request
|
4
|
-
|
5
|
-
|
6
|
-
class JobPolicy(object):
|
7
|
-
|
8
|
-
def __init__(self, id, name, users, functions, tres, minPriority,
|
9
|
-
maxPriority, maxDuration, createTime, updateTime, visibility,
|
10
|
-
queue):
|
11
|
-
self.id = id
|
12
|
-
self.name = name
|
13
|
-
self.users = users
|
14
|
-
self.functions = functions
|
15
|
-
print(tres)
|
16
|
-
self.tres = []
|
17
|
-
for tre in tres:
|
18
|
-
self.tres.append(JobTres(**tre)) # type: ignore
|
19
|
-
self.minPriority = minPriority
|
20
|
-
self.maxPriority = maxPriority
|
21
|
-
self.maxDuration = maxDuration
|
22
|
-
self.createTime = createTime
|
23
|
-
self.updateTime = updateTime
|
24
|
-
self.visibility = visibility
|
25
|
-
self.queue = JobQueue(**queue) # type: ignore
|
26
|
-
|
27
|
-
@staticmethod
|
28
|
-
def fetch(id):
|
29
|
-
query = '''query($input:JobPolicyInput!)
|
30
|
-
{
|
31
|
-
jobPolicy(input:$input)
|
32
|
-
{
|
33
|
-
id
|
34
|
-
name
|
35
|
-
users
|
36
|
-
functions
|
37
|
-
tres {
|
38
|
-
cpu
|
39
|
-
ecpu
|
40
|
-
mem
|
41
|
-
}
|
42
|
-
minPriority
|
43
|
-
maxPriority
|
44
|
-
maxDuration
|
45
|
-
createTime
|
46
|
-
updateTime
|
47
|
-
visibility
|
48
|
-
queue {
|
49
|
-
id
|
50
|
-
name
|
51
|
-
scheduler
|
52
|
-
machines {
|
53
|
-
id
|
54
|
-
name
|
55
|
-
tres {
|
56
|
-
cpu
|
57
|
-
ecpu
|
58
|
-
mem
|
59
|
-
}
|
60
|
-
valid
|
61
|
-
}
|
62
|
-
createTime
|
63
|
-
updateTime
|
64
|
-
load
|
65
|
-
}
|
66
|
-
}
|
67
|
-
|
68
|
-
}'''
|
69
|
-
variables = {'input': {'id': id}}
|
70
|
-
r = graphql_request(query, variables)
|
71
|
-
print (r)
|
72
|
-
if 'errors' in r:
|
73
|
-
raise Exception(r['errors'])
|
74
|
-
return JobPolicy(**r['data']['jobPolicy'])
|
75
|
-
|
76
|
-
@staticmethod
|
77
|
-
def fetchMany(input):
|
78
|
-
query = '''query($input:JobPoliciesInput!)
|
79
|
-
{
|
80
|
-
jobPolicies(input:$input)
|
81
|
-
{
|
82
|
-
items {
|
83
|
-
id
|
84
|
-
name
|
85
|
-
users
|
86
|
-
functions
|
87
|
-
tres {
|
88
|
-
cpu
|
89
|
-
ecpu
|
90
|
-
mem
|
91
|
-
}
|
92
|
-
minPriority
|
93
|
-
maxPriority
|
94
|
-
maxDuration
|
95
|
-
createTime
|
96
|
-
updateTime
|
97
|
-
visibility
|
98
|
-
queue {
|
99
|
-
id
|
100
|
-
name
|
101
|
-
scheduler
|
102
|
-
machines {
|
103
|
-
id
|
104
|
-
name
|
105
|
-
tres {
|
106
|
-
cpu
|
107
|
-
ecpu
|
108
|
-
mem
|
109
|
-
}
|
110
|
-
valid
|
111
|
-
}
|
112
|
-
createTime
|
113
|
-
updateTime
|
114
|
-
load
|
115
|
-
}
|
116
|
-
}
|
117
|
-
cursor
|
118
|
-
count
|
119
|
-
total
|
120
|
-
}
|
121
|
-
}'''
|
122
|
-
variables = {'input': input}
|
123
|
-
r = graphql_request(query, variables)
|
124
|
-
if 'errors' in r:
|
125
|
-
raise Exception(r['errors'])
|
126
|
-
policies = []
|
127
|
-
for policy in r['data']['jobPolicies']['items']:
|
128
|
-
policies.append(JobPolicy(**policy))
|
129
|
-
return policies
|
cloudpss/job/jobQueue.py
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
from cloudpss.job.jobMachine import JobMachine
|
2
|
-
|
3
|
-
|
4
|
-
class JobQueue(object):
|
5
|
-
|
6
|
-
def __init__(self, id, name, scheduler, machines, createTime, updateTime,
|
7
|
-
load):
|
8
|
-
self.id = id
|
9
|
-
self.name = name
|
10
|
-
self.scheduler = scheduler
|
11
|
-
self.machines = [JobMachine(**m) for m in machines]
|
12
|
-
self.createTime = createTime
|
13
|
-
self.updateTime = updateTime
|
14
|
-
self.load = load
|
cloudpss/job/jobTres.py
DELETED
@@ -1,27 +0,0 @@
|
|
1
|
-
from .IESView import IESView
|
2
|
-
|
3
|
-
class IESLabTypicalDayView(IESView):
|
4
|
-
def GetTypicalDayNum():
|
5
|
-
'''
|
6
|
-
获取当前result的典型日数量
|
7
|
-
|
8
|
-
:return: int类型,代表典型日数量
|
9
|
-
'''
|
10
|
-
def GetTypicalDayInfo(dayID):
|
11
|
-
'''
|
12
|
-
获取dayID对应典型日的基础信息
|
13
|
-
|
14
|
-
:params: dayID int类型,表示典型日的ID,数值位于 0~典型日数量 之间
|
15
|
-
|
16
|
-
:return: dict类型,代表典型日的基础信息,包括典型日所代表的日期范围、典型日的名称等
|
17
|
-
'''
|
18
|
-
def GetTypicalDayCurve(dayID, dataType):
|
19
|
-
'''
|
20
|
-
获取dayID对应典型日下dataType参数的时序曲线
|
21
|
-
|
22
|
-
:params: dayID int类型,表示典型日的ID,数值位于 0~典型日数量 之间
|
23
|
-
:params: dataType enum类型,标识辐照强度、环境温度、土壤温度、建筑物高度风速、风机高度风速、电负荷、热负荷、冷负荷的参数类型
|
24
|
-
|
25
|
-
:return: list<float>类型,代表以1h为时间间隔的该参数的日内时序曲线
|
26
|
-
'''
|
27
|
-
pass
|
cloudpss/job/view/__init__.py
DELETED
@@ -1,42 +0,0 @@
|
|
1
|
-
from .IESView import IESView
|
2
|
-
from .view import View
|
3
|
-
from .EMTView import EMTView
|
4
|
-
from .PowerFlowView import PowerFlowView
|
5
|
-
from .IESLabSimulationView import IESLabSimulationView
|
6
|
-
from .IESLabTypicalDayView import IESLabTypicalDayView
|
7
|
-
from ..messageStreamReceiver import MessageStreamReceiver
|
8
|
-
from ..messageStreamSender import MessageStreamSender
|
9
|
-
__all__ = [
|
10
|
-
'View','EMTView','PowerFlowView','IESLabSimulationView','IESView','IESLabTypicalDayView'
|
11
|
-
]
|
12
|
-
|
13
|
-
VIEW = {
|
14
|
-
'function/CloudPSS/emtp': EMTView,
|
15
|
-
'function/CloudPSS/emtps': EMTView,
|
16
|
-
'function/CloudPSS/sfemt': EMTView,
|
17
|
-
'function/CloudPSS/power-flow': PowerFlowView,
|
18
|
-
'function/CloudPSS/ies-simulation': IESView,
|
19
|
-
'function/CloudPSS/ies-optimization': IESView,
|
20
|
-
'function/ies/ies-optimization': IESView,
|
21
|
-
'function/CloudPSS/three-phase-powerFlow': PowerFlowView,
|
22
|
-
'function/ies/ies-simulation': IESLabSimulationView,
|
23
|
-
'function/ies/ies-gmm':IESLabTypicalDayView,
|
24
|
-
'function/CloudPSS/ieslab-simulation': IESLabSimulationView,
|
25
|
-
'function/CloudPSS/ieslab-gmm':IESLabTypicalDayView,
|
26
|
-
'function/CloudPSS/ieslab-optimization': IESView,
|
27
|
-
}
|
28
|
-
|
29
|
-
|
30
|
-
def getViewClass(rid: str) -> View:
|
31
|
-
"""
|
32
|
-
获取仿真结果视图
|
33
|
-
|
34
|
-
:param rid: 仿真任务的 rid
|
35
|
-
:param db: 仿真任务的数据库
|
36
|
-
|
37
|
-
:return: 仿真结果视图
|
38
|
-
|
39
|
-
>>> view = get_view('function/CloudPSS/emtp', db)
|
40
|
-
>>> view.getPlots()
|
41
|
-
"""
|
42
|
-
return VIEW.get(rid, View)
|
cloudpss/runner/DSLabResult.py
DELETED
@@ -1,92 +0,0 @@
|
|
1
|
-
import json
|
2
|
-
from ..utils.httprequests import request
|
3
|
-
|
4
|
-
class DSLabResult(object):
|
5
|
-
_baseUri = "api/dslab/rest/"
|
6
|
-
_kindNameMap = {
|
7
|
-
"利润与利润分配": "getEconomyResult",
|
8
|
-
"财务计划现金": "getFinancialPlanCashFlowResult",
|
9
|
-
"资产负债": "getLiabilityAssetsResult",
|
10
|
-
"投资使用计划与资金筹措": "getInvestPlanDataResult",
|
11
|
-
"借款还本付息计划": "getLoanRepaymentPlanResult",
|
12
|
-
"流动资金估算": "getFlowCashEvaluteResult",
|
13
|
-
"资产折旧与摊销估算": "getFlowCashEvaluteResult",
|
14
|
-
"总成本费用估算表": "getSumCostResult",
|
15
|
-
"项目总投资现金流量": "getSumInvestFlowCashResult",
|
16
|
-
"项目资本金现金流量": "getProjectCashFlowResult",
|
17
|
-
"营业收入、税金、附加和增值税估算": "getIncomeTaxResult",
|
18
|
-
}
|
19
|
-
|
20
|
-
def __init__(self, simulationId, taskId=None, **keywords) -> None:
|
21
|
-
"""
|
22
|
-
初始化
|
23
|
-
"""
|
24
|
-
self.simulationId = simulationId
|
25
|
-
self.timeId = keywords.get("timeId", 0)
|
26
|
-
self.planId = keywords.get("planId", 0)
|
27
|
-
self.cmdType = keywords.get("cmdType", None)
|
28
|
-
|
29
|
-
def _fetchItemData(self, url, planID):
|
30
|
-
"""
|
31
|
-
获取planID对应的优化方案下resultType财务评估结果
|
32
|
-
|
33
|
-
:param planID int 类型,表示优化方案的ID,数值位于0~优化方案数量之间
|
34
|
-
:param resultType enum 类型,表示财务评价结果表格的类型
|
35
|
-
|
36
|
-
:return: dict 类型,为源数据的引用,代表方案对应的财务评价基础参数信息
|
37
|
-
"""
|
38
|
-
r = request(
|
39
|
-
"GET", url, params={"simu": self.simulationId, "planId": planID, "time": 0}
|
40
|
-
)
|
41
|
-
data = json.loads(r.text)
|
42
|
-
return data
|
43
|
-
|
44
|
-
def status(self):
|
45
|
-
"""
|
46
|
-
获取运行状态
|
47
|
-
|
48
|
-
:return: boolean 类型
|
49
|
-
"""
|
50
|
-
result = self.GetOverviewResult()
|
51
|
-
if result is None or type(result) is list:
|
52
|
-
return False
|
53
|
-
return True
|
54
|
-
|
55
|
-
def GetFinancialResult(self, resultType):
|
56
|
-
"""
|
57
|
-
获取planID对应的优化方案下resultType财务评估结果
|
58
|
-
:param planID int 类型,表示优化方案的ID,数值位于0~优化方案数量之间
|
59
|
-
:param resultType enum 类型,表示财务评价结果表格的类型
|
60
|
-
|
61
|
-
:return: dict 类型,为源数据的引用,代表方案对应的财务评价基础参数信息
|
62
|
-
|
63
|
-
"""
|
64
|
-
assert resultType in self._kindNameMap, "数据类型不存在"
|
65
|
-
kind = self._kindNameMap.get(resultType, resultType)
|
66
|
-
url = f"{self._baseUri}{kind}"
|
67
|
-
list = self._fetchItemData(url, self.planId)
|
68
|
-
dict_result = dict()
|
69
|
-
for val in list:
|
70
|
-
for k, v in val.items():
|
71
|
-
dict_result[k] = v
|
72
|
-
return dict_result["data"]
|
73
|
-
|
74
|
-
def GetOverviewResult(self):
|
75
|
-
"""
|
76
|
-
获取当前结果类对应的概览结果
|
77
|
-
|
78
|
-
:return: array类型,代表该方案对应的概览结果
|
79
|
-
"""
|
80
|
-
r = request(
|
81
|
-
"GET",
|
82
|
-
"api/dslab/rest/getOverviewResult",
|
83
|
-
params={
|
84
|
-
"simu": self.simulationId,
|
85
|
-
"planId": self.planId,
|
86
|
-
"time": self.timeId,
|
87
|
-
},
|
88
|
-
)
|
89
|
-
result = json.loads(r.text)
|
90
|
-
if len(result) > 0:
|
91
|
-
return result[0]["data"]
|
92
|
-
return None
|
@@ -1,71 +0,0 @@
|
|
1
|
-
cloudpss/__init__.py,sha256=EkdgEdD_kYmiXM8cGHX5sZwBnyo-cbNYx70qpUsThgI,835
|
2
|
-
cloudpss/verify.py,sha256=KF4Gd59DGvCyIEkRD7rNnekWw22XxJpi3DW6keb6j4c,1498
|
3
|
-
cloudpss/version.py,sha256=mogZeFwsT4HuCNqNb9b_s8HBY_IVBp1ICK-qzBLMisw,28
|
4
|
-
cloudpss/dslab/__init__.py,sha256=UdLDA9OArvLndHtumYAMMHdr5h8S6DrZCYkXIi2Mb4Y,45
|
5
|
-
cloudpss/dslab/dataManageModel.py,sha256=7sTRpAGnuSNtFsUb-VEDp5XzOlAZvidypkniHX32wLY,11527
|
6
|
-
cloudpss/dslab/dslab.py,sha256=oErLt0OQkCySLj0bqVGFRQ1Y8MyQSHG5pQDwNDOrKbc,8856
|
7
|
-
cloudpss/dslab/financialAnalysisModel.py,sha256=t9cZ03yWvLN5ojVeLp-UGgFBIFVU5wbnn5E0UHZA0ws,5062
|
8
|
-
cloudpss/dslab/files/__init__.py,sha256=l2g0VadtTiMW39zwCwHPHUC01Kbklb_nFUPVeQ16FwM,58
|
9
|
-
cloudpss/dslab/files/curveData.py,sha256=GU_DTTKjVn_ln9Hx0q9CFgfmNtokZi7b4DYSzGeP5dk,4291778
|
10
|
-
cloudpss/dslab/files/files.py,sha256=vS0VhAh1lb8oFw51E2rAsb0WpmqM9F9IprxNCAPqH1s,934
|
11
|
-
cloudpss/function/__init__.py,sha256=TNzChB-gQF6oB62F423evpUlgcp6s03D4pKKs89Lz4Q,1629
|
12
|
-
cloudpss/function/function.py,sha256=llomkfnTmKMiFJYJ2mKnmAEoIjTNVCnjCUUyiJMOV1s,29
|
13
|
-
cloudpss/function/functionExecution.py,sha256=YnuBl9dLoVYlPUrfse8_O-4uIAG0QrCIyQdDP2zaQt4,14645
|
14
|
-
cloudpss/function/job.py,sha256=LdzaTyjvBcMZIyLstSZnt79d2eREljx2HnNoilDp03A,13162
|
15
|
-
cloudpss/ieslab/DataManageModel.py,sha256=YMpwp04GmkaK1gCnzp5tNAoPwkVfa9AkJPviqNOat7s,19445
|
16
|
-
cloudpss/ieslab/EvaluationModel.py,sha256=SD7VB81wZnebGQWpx-eTQMQxe6ekFUFycQxz6RyYwOI,6721
|
17
|
-
cloudpss/ieslab/IESLabPlan.py,sha256=vWRExT0AE5VbR1DaQSINE65sbg0F6cXC7meXNT6Ap6Q,4940
|
18
|
-
cloudpss/ieslab/IESLabSimulation.py,sha256=IzbcPYWihatXLNduojH9r-guaqnyiWF8sivSjrrZoLY,3090
|
19
|
-
cloudpss/ieslab/PlanModel.py,sha256=Dk5ZS_8IASqzMlLeN_gIDk76Gm_ybXjGY4pULBsWvEw,4790
|
20
|
-
cloudpss/ieslab/__init__.py,sha256=kiyUaGRgtwqs0EI2dBBqLVK5V65u1PcY7YTFJX1T0yw,186
|
21
|
-
cloudpss/job/__init__.py,sha256=3UIFZYjJTzuckM61o8kim1c3PWt2SSHTL72jrGu5IzI,51
|
22
|
-
cloudpss/job/job.py,sha256=1CKhsB4zKCstdZ7PSep9K-M0yGptRN1ULZ_8M7z3HDs,8600
|
23
|
-
cloudpss/job/jobMachine.py,sha256=wtJ7X9Cu-4KGpYvxLbvCVWv5Ku0CvsgmfThK8knLfoI,268
|
24
|
-
cloudpss/job/jobPolicy.py,sha256=k5Ur9LYvTnWNgI9yqeCjs5E499DSOrYbYgywU8-zpC4,4083
|
25
|
-
cloudpss/job/jobQueue.py,sha256=31Q7NCjb_51d1JOokVyxIfP1r6S_A-ObySJKwt8MxR8,416
|
26
|
-
cloudpss/job/jobReceiver.py,sha256=kX59JLky86AXwgCWw0abfKu-yDWQ97YAV-sOObF5Kgk,740
|
27
|
-
cloudpss/job/jobTres.py,sha256=1wwdvwxpYKOfsZ1R95Wkhyg_QYMzqzKoaLJLdB-bD88,148
|
28
|
-
cloudpss/job/messageStreamReceiver.py,sha256=CxoGNUsRtvRDWUxaGU5c64jAB3FjvX2DPP7IZYr7dFk,6048
|
29
|
-
cloudpss/job/messageStreamSender.py,sha256=Sl4e1jCtxb62wZKm0tgwdWsg8sjOrYPRXXVz8eIO1bc,3797
|
30
|
-
cloudpss/job/view/EMTView.py,sha256=U-AF8OuKKJ9c1Q2yXJaNK6LNy_ZHpNi8tR2rn5KaocY,6838
|
31
|
-
cloudpss/job/view/IESLabSimulationView.py,sha256=_hD-fdEwC6U8hQYbXliNMEii0WxiteglQZuLOSQmMOM,76
|
32
|
-
cloudpss/job/view/IESLabTypicalDayView.py,sha256=Za57f9TYcBxYeKo8fnEcOjl517v1LMDN0ua537fxcjc,1168
|
33
|
-
cloudpss/job/view/IESView.py,sha256=yaSczWTjkEV6d6TPLkWjCq0ldN0JO-3sVurAnQR89Mo,3842
|
34
|
-
cloudpss/job/view/PowerFlowView.py,sha256=xg-KX37ENxYtEV7CRUszXfsyDmTsOKCh7agSg5K6EWQ,2089
|
35
|
-
cloudpss/job/view/__init__.py,sha256=j_X6aFeY-wa6_0r1EixE0rrvGz_67m4fIqOLmUbkxqY,1466
|
36
|
-
cloudpss/job/view/view.py,sha256=VJBy56BZ1avhF7gKHWbcW-ohT9my_VW48NqND_c0gSw,3453
|
37
|
-
cloudpss/model/__init__.py,sha256=SNq-bfwcQtDHtTNBYppfUEs8wkjfrQfGeywx7igmvOs,151
|
38
|
-
cloudpss/model/jobDefinitions.py,sha256=XqjaaWOLU7zlVHM7TQJbZ3rNBWfBY7eT-5aE6EAatcQ,3770
|
39
|
-
cloudpss/model/model.py,sha256=PnbjGHz4bql9kXYUc9UA7H2h3fC5LDPLj4P-xxQY_nE,26562
|
40
|
-
cloudpss/model/revision.py,sha256=bVF-nux2WdJkBCji5LIyo3Wcngla9YbFG8oyp4HATXs,4183
|
41
|
-
cloudpss/model/topology.py,sha256=W24pAQV9lJNOsx7QgRuf0O7KQxwurIgbE08DemfpDcM,2516
|
42
|
-
cloudpss/model/implements/__init__.py,sha256=88L_wF9SSzxsbtqwStWIPH4LxaKq7TVcssHQ62YBnls,67
|
43
|
-
cloudpss/model/implements/component.py,sha256=uNSpkZKChdXLiO40Ev4P3oQ1di2Hu4YjcBOb0I8Bf0c,734
|
44
|
-
cloudpss/model/implements/diagram.py,sha256=N5RrrywmxOmc2KvP0nC-NiECT1tEhgJZPtiNCfvYPuc,1063
|
45
|
-
cloudpss/model/implements/implement.py,sha256=Uld96tjXVDbVUNV8xscyy_nZWLHr3iP2DqA6S3p-XJE,954
|
46
|
-
cloudpss/project/__init__.py,sha256=fpskY-cJGmMcTg1naVzNPtJaRG1xmSc2CFjDTin64Cw,51
|
47
|
-
cloudpss/project/project.py,sha256=uFhOnM8ngo1_ZYz2uArtORKZquYNdOIVLXU_q1MDFI4,17698
|
48
|
-
cloudpss/runner/DSLabResult.py,sha256=xJqKA3e1KSXQmLDe9_T6fG1exdE9j7EjfIfvBMmqiJ8,3422
|
49
|
-
cloudpss/runner/IESLabEvaluationResult.py,sha256=uFNLiN5kzlzSGlLIq3ybuRwB-ufYytflVrXV5g7voOU,5841
|
50
|
-
cloudpss/runner/IESLabPlanResult.py,sha256=dCyTbMtITy9XDjE42knrpJrvaH7dvFgfQMZbx9hybRs,6862
|
51
|
-
cloudpss/runner/IESLabTypicalDayResult.py,sha256=3egAzmv32sr4wKaVgLxsM75ScSb08F4-iLEbuPkoi_c,8001
|
52
|
-
cloudpss/runner/MessageStreamReceiver.py,sha256=MBc1HLU_3SOBKvi8rlEiEqhUSiBsQRzMVhEmS4MCKj8,5883
|
53
|
-
cloudpss/runner/__init__.py,sha256=FxiYYmssbZgRjieySzi43yPiWEF6eNos2UsoFQeD2H8,341
|
54
|
-
cloudpss/runner/receiver.py,sha256=QU0RsbCt0EK7sCLHzfj8_QQsuPNfqXxpZi5JKm6roxA,4162
|
55
|
-
cloudpss/runner/result.py,sha256=MkoTQly7FjKj9mde3bnv4vBDfGJ2U4eK-HhxxdwmemE,13125
|
56
|
-
cloudpss/runner/runner.py,sha256=DQOvHkdaI7lqcDdW2eEBY4UZPsgg__6vYFT8bUtm8Js,7820
|
57
|
-
cloudpss/runner/storage.py,sha256=zFET_zwPIOF2Cnh9sgFiS0HFxV1OmVsU34bGUQ6PpkA,4162
|
58
|
-
cloudpss/runner/transform.py,sha256=krOgTZiJSJAb5QSwerAqlbC4Ma0PKi__0WOZlAxw4O8,11613
|
59
|
-
cloudpss/utils/AsyncIterable.py,sha256=AIWYrTnmjsIfOowE3asZlexdHNhpK2gm7aucfyyVoQw,781
|
60
|
-
cloudpss/utils/IO.py,sha256=Uh1NOlBn15Jl5_aWS2QRO2-QsKlFT9o8DPtP8-8Z2PA,5314
|
61
|
-
cloudpss/utils/__init__.py,sha256=jWVHSOqJQWU0fpg2UbWSEQoLCb2Uys-vH5Uqkb0ihNA,326
|
62
|
-
cloudpss/utils/dataEncoder.py,sha256=5PUPb844eOGgFnYrMM8bdjdKH_MZz0lk-67uo8TvwEo,885
|
63
|
-
cloudpss/utils/graphqlUtil.py,sha256=swl6XT1UmUQHdHjMWw3M0i8meEmVKNQvX0SHsbgg8TU,255
|
64
|
-
cloudpss/utils/httpAsyncRequest.py,sha256=jMV1yMpx6jkAoh93Syn9vedmmt2IR86F8_-0xqf9SGU,2689
|
65
|
-
cloudpss/utils/httprequests.py,sha256=1VtGuQAybeHAcpQfsXBPRPaNHiJfvoexmUuGmfKqoTY,1733
|
66
|
-
cloudpss/utils/matlab.py,sha256=SLwVt790BjklJK2XNELt9R2n_1ej9Y8QsTIdFkKXLWE,795
|
67
|
-
cloudpss/utils/yamlLoader.py,sha256=bv_vPDK_e0n_vZ5FwpDJ_NJWqMAwfU3AbhkvQIxPCy4,2677
|
68
|
-
cloudpss-4.1.1b8.dist-info/METADATA,sha256=wWJJG-Ze24wFUIvTk7BMhoxRIkh1sxnjMqzxND3TpuU,2393
|
69
|
-
cloudpss-4.1.1b8.dist-info/WHEEL,sha256=G16H4A3IeoQmnOrYV4ueZGKSjhipXx8zc8nu9FGlvMA,92
|
70
|
-
cloudpss-4.1.1b8.dist-info/top_level.txt,sha256=wS9qPU4-aWM9ouzMOx34Nlq-GkdQKpr9vBskwut1BD8,9
|
71
|
-
cloudpss-4.1.1b8.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|