Пример #1
0
	def calculateNeededGallons():
		
		result = []
		
		recentWateringGallons = DataManager.getPreviousWateringAmounts(pymysql.connect(host='localhost',
	    		user='******',
    			password='',
        		db='Garden',
       		 	charset='utf8mb4',
        		cursorclass=pymysql.cursors.DictCursor))
		sectorTargets = DataManager.getTargetCapacity(pymysql.connect(host='localhost',
    			user='******',
    			password='',
        		db='Garden',
        		charset='utf8mb4',
        		cursorclass=pymysql.cursors.DictCursor))
		previousRain = DataManager.getLatestRainfall(pymysql.connect(host='localhost',
    			user='******',
    			password='',
        		db='Garden',
        		charset='utf8mb4',
    			cursorclass=pymysql.cursors.DictCursor))
	    	predictedRain = DataManager.getPredictedRainfall(pymysql.connect(host='localhost',
    			user='******',
    			password='',
        		db='Garden',
        		charset='utf8mb4',
    	    	cursorclass=pymysql.cursors.DictCursor))
		currentMoistures = DataManager.getLatestMoisture(pymysql.connect(host='localhost',
    			user='******',
    			password='',
        		db='Garden',
        		charset='utf8mb4',
        		cursorclass=pymysql.cursors.DictCursor))
		
		for x in range(0, 4):
			
			currentGallons = (previousRain * 280) + recentWateringGallons[x + 1]
			
			if currentMoistures[x] > sectorTargets[x]:
				result.insert(x, 0)
			elif currentGallons > 280:
				result.insert(x, 0)
			else:
				if (predictedRain[1] * 280) * (predictedRain[0]/Decimal(100)) + currentGallons > 280:
					result.insert(x, 0)
				else:
					result.insert(x, 280 - ((predictedRain[1] * 280) * (predictedRain[0]/Decimal(100)) + currentGallons))
			
			print((predictedRain[1] * 280) * (predictedRain[0]/Decimal(100)) + currentGallons)
			
		return result