def has_changed(usr): e=db.session.query(Control).filter_by(user_id = usr).count() if e==0: n = Control() n.user_id = usr n.name = "Predict count" n.total = 0 db.session.add(n) try: db.session.commit() return True except Exception as e: log.error('Control creation error: %s', e) db.session.rollback() return False exit(1) else: total = db.session.execute('SELECT total from control WHERE user_id='+str(usr)).fetchone() now = db.session.execute('SELECT sum(goal1+goal2) as now from predict WHERE user_id='+str(usr)).fetchone() add=now['now'] if add==None: add=0 if total['total'] != add: calc_usr_stand(usr) db.session.execute('UPDATE control set total='+str(add)+' WHERE user_id='+str(usr)) db.session.commit()
def control(request, protocol=None, did=None): if protocol is not None and did is not None: obj = get_object_or_404(Control, protocol=protocol, did=did) form = ControlForm(request.GET, obj) else: obj = Control() if request.method == "GET": form = ControlForm(instance=obj) try: screen = get_object_or_404(Screen, slug=request.GET["screen"]) except KeyError: return HttpResponseBadRequest("Falta el screen") return render_to_response("edit_control.html", { "form": form, "screen": screen }) if request.method == "POST": print "estamos en POST" form = ControlForm(request.POST, obj) if form.is_valid(): print "erstamos en valid" screen = request.POST["screen"] print screen screen = get_object_or_404(Screen, slug=screen) obj = form.save(commit=False) try: obj.save() except IntegrityError: return HttpResponseBadRequest( "Protocol and did already in use") except haclient.RestApiException, err: return HttpResponseBadRequest("Error at: %s" % err) ScreenControls(screen=screen, control=obj).save() return HttpResponse("OK") print "no es valida" return render_to_response("edit_control.html", {"form": form})
def get_control_register(self): "Returns the current run state of a particular channel" return Control( self.charger.modbus_read_registers( 0x8000, "7H", function_code=cst.READ_HOLDING_REGISTERS))