from normalization.constant import * from CoolProp.CoolProp import PropsSI from calculation.system_performance import DischargeTempModified, PerformanceCalculation class CalculationProcess(object): def __init__(self, dict_input): self.dict_input = dict_input self.is_success = 0 self.results = {} self.results_depict = '' def pre_to_temp(self): if self.dict_input["evapPre"] and not self.dict_input["evapTemp"]: self.dict_input["evapTemp"] = PropsSI('T', 'P', self.dict_input['evapTemp']*1000, 'Q', 1, self.dict_input['refrigerant']) - 273.15 if self.dict_input["condPre"] and not self.dict_input["condTemp"]: self.dict_input["condTemp"] = PropsSI('T', 'P', self.dict_input['condTemp']*1000, 'Q', 1, self.dict_input['refrigerant']) - 273.15 def judge_null(self): Num = 0 self.pre_to_temp() for k in self.dict_input: if self.dict_input[k] == '': Num += 1 return Num def cop_calculation(self): dtm = DischargeTempModified(self.dict_input) self.dict_input = dtm.discharge_temp_modified() pc=PerformanceCalculation(self.dict_input) self.is_success, self.results_depict, self.results = pc.performance_calculation() return None def main_process(self): number_null = self.judge_null() if number_null > 0: self.results_depict = '输入参数存在空值,无计算结果' else: if self.dict_input['unitStatus'] == 0: self.results_depict = '冷机处于关机状态,无计算结果' else: self.cop_calculation() if self.is_success == 1: dict_results = DictResultsNormal(self.results, self.results_depict) else: dict_results = DictResultsAbnormal(self.dict_input, self.results_depict) return dict_results