def start(self): buildingsManager = BuildingsManager() days = [] startDate = datetime.strptime(self.startDate, '%Y-%m-%d') for i in range(0, self.numberOfDays): days.append( (startDate + timedelta(days=i)).strftime("%Y-%m-%d")) for room in buildingsManager.getRooms(self.buildingName)["rooms"]: roomName = room["roomName"] if self.roomFilter: if not roomName in self.roomFilter: continue simulationResult = {} for day in days: roomSimulator = RoomSimulator(buildingName = self.buildingName, roomName = roomName, currentDate = day) simulationResult[day] = roomSimulator.start() if not os.path.exists("tools/simulation/results/"): os.makedirs("tools/simulation/results/") out_file = open("tools/simulation/results/" + roomName + ".json","w") out_file.write(json.dumps(simulationResult, separators=(',', ':'))) out_file.close()
def buildingRooms(username=None, buildingName=None): if request.method == "POST": sessionKey = validateInput(request.form["sessionKey"]) userUuid = validateInput(request.form["userUuid"]) try: session = SessionManager() session.checkSessionValidity(sessionKey, userUuid) buildingsManager = BuildingsManager() buildingsManager.checkUserBinding(buildingName, username) return returnResult(buildingsManager.getRooms(buildingName=buildingName, username=username)) except Exception as e: return returnError(e)