rc = self.db.execute( query )
return rc.fetchone()
+ def __extend_query ( self , gps ) :
+ lat , lon , alt = gps
+ return "lat=lat+%f , lat2=lat2+%f , lon=lon+%f , lon2=lon2+%f , alt=alt+%f , alt2=alt2+%f" % ( lat , lat*lat , lon , lon*lon , alt , alt*alt )
+
def add ( self , mac , rss , timestamp , gps=None ) :
query = "INSERT INTO ap ( mac , rss , last_seen ) VALUES ( '%s' , %d , %f )" % ( mac , rss , timestamp )
if rc.rowcount :
if gps :
lat , lon , alt = gps
- query = "UPDATE ap SET n=1 , lat=%f , lat2=%f , lon=%f , lon2=%f , alt=%f , alt2=%f WHERE mac='%s'" % ( lat , lat*lat , lon , lon*lon , alt , alt*alt , mac )
+ query = "UPDATE ap SET n=1 , %s WHERE mac='%s'" % ( self.__extend_query(gps) , mac )
rc = self.db.execute( query )
self.db.commit()
query = "UPDATE ap set rss=%d , last_seen=%f" % ( rss , timestamp )
if gps :
lat , lon , alt = gps
- query += " , n=n+1 , lat=lat+%f , lat2=lat2+%f , lon=lon+%f , lon2=lon2+%f , alt=alt+%f , alt2=alt2+%f" % ( lat , lat*lat , lon , lon*lon , alt , alt*alt )
+ query += " , n=n+1 , %s" % self.__extend_query(gps)
query += " WHERE mac='%s'" % mac
rc = self.db.execute( query )
if rc.rowcount :