예제 #1
0
파일: handlers.py 프로젝트: acettt/yandex
	def post(self):
		camp_id=self.request.form.get('camp_id')
		amn=float(self.request.form.get('amount'))
		plan=float(self.request.form.get('plan'))
		logging.debug('current amount '+str(amn)+', total amount '+str(plan))
		plan2=plan*0.9
		obj=mycacher.get("obj")
		if obj is None:
			obj=YaObject(ya_login,ya_pass,ya_token,ya_stoken)
			mycacher.set("obj",obj)
		param=obj.GetCampaignParams(camp_id)
	
		if amn>plan2:
			cd=datetime.today()+_timezone
			if param["StatusShow"]=="Yes":
				logging.debug('Stop campaign '+camp_id)
				obj.StopCampaign(camp_id)
				yacamps = getCampByID(camp_id)
				report=YaCampanyLogs(camp_id=yacamps,amount=int(amn),plan=int(plan),act="stop")
				report.put()
				memcache.delete("stopd"+cd.strftime("%Y-%m-%d"))
				memcache.delete("camps2")
				memcache.delete("stoped")
			memcache.set("stop_camp_"+str(camp_id)+"_date_"+cd.strftime("%Y-%m-%d"),amn,7200)
			logging.debug("stop_camp_"+str(camp_id)+"_date_"+cd.strftime("%Y-%m-%d"))
		else:
			if (plan>0) and (param["StatusShow"]=="No"):
				dt=datetime.today()+_timezone
				if dt.hour<10:
					logging.debug('Start campaign '+camp_id)
					obj.ResumeCampaign(camp_id)
					yacamps = getCampByID(camp_id)
					report=YaCampanyLogs(camp_id=yacamps,amount=int(amn),plan=int(plan),act="start")
					report.put()
					memcache.delete("stopd"+dt.strftime("%Y-%m-%d"))
					memcache.delete("camps2")
					memcache.delete("stoped")
		return Response('1')