more use of syncrecord
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
from .integrations import SyncIntegration, NoTokenError
|
||||
from .integrations import SyncIntegration, NoTokenError, create_or_update_syncrecord, get_known_ids
|
||||
from rowers.models import User, Rower, Workout, TombStone
|
||||
|
||||
from rowers.tasks import handle_rp3_async_workout
|
||||
@@ -100,6 +100,8 @@ class RP3Integration(SyncIntegration):
|
||||
startdatetime = kwargs.get('startdatetime', None)
|
||||
if not startdatetime:
|
||||
startdatetime = str(timezone.now())
|
||||
|
||||
record = create_or_update_syncrecord(self.rower, None, rp3id=id)
|
||||
|
||||
auth_token = self.open()
|
||||
_ = myqueue(
|
||||
@@ -172,9 +174,7 @@ class RP3Integration(SyncIntegration):
|
||||
|
||||
workouts_list = pd.json_normalize(workouts_json['data']['workouts'])
|
||||
|
||||
knownrp3ids = uniqify([
|
||||
w.uploadedtorp3 for w in Workout.objects.filter(user=r)
|
||||
])
|
||||
knownrp3ids = get_known_ids(r, 'rp3id')
|
||||
|
||||
workouts = []
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from .integrations import SyncIntegration, NoTokenError
|
||||
from .integrations import SyncIntegration, NoTokenError, create_or_update_syncrecord, get_known_ids
|
||||
from rowers.models import User, Rower, Workout, TombStone
|
||||
|
||||
from rowingdata import rowingdata
|
||||
@@ -238,9 +238,7 @@ class SportTracksIntegration(SyncIntegration):
|
||||
stids = [int(getidfromuri(item['uri']))
|
||||
for item in workouts_json['items']]
|
||||
|
||||
knownstids = uniqify([
|
||||
w.uploadedtosporttracks for w in Workout.objects.filter(user=r)
|
||||
])
|
||||
knownstids = get_known_ids(r, 'sporttracksid')
|
||||
newids = [stid for stid in stids if stid not in knownstids]
|
||||
for sporttracksid in newids:
|
||||
id = self.get_workout(sporttracksid)
|
||||
@@ -254,6 +252,7 @@ class SportTracksIntegration(SyncIntegration):
|
||||
|
||||
r = self.rower
|
||||
|
||||
record = create_or_update_syncrecord(r, None, sporttracksid=id)
|
||||
|
||||
job = myqueue(
|
||||
queue,
|
||||
@@ -289,9 +288,8 @@ class SportTracksIntegration(SyncIntegration):
|
||||
|
||||
workouts = []
|
||||
|
||||
knownstids = uniqify([
|
||||
w.uploadedtosporttracks for w in Workout.objects.filter(user=r)
|
||||
])
|
||||
knownstids = get_known_ids(r, 'sporttracksid')
|
||||
|
||||
for item in workouts_json['items']:
|
||||
d = int(float(item['total_distance']))
|
||||
i = int(getidfromuri(item['uri']))
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
from .integrations import SyncIntegration, NoTokenError
|
||||
from .integrations import SyncIntegration, NoTokenError, create_or_update_syncrecord, get_known_ids
|
||||
from rowers.models import User, Rower, Workout, TombStone
|
||||
from rowingdata import rowingdata
|
||||
|
||||
@@ -212,6 +212,8 @@ class StravaIntegration(SyncIntegration):
|
||||
except NoTokenError("Strava error"):
|
||||
return 0
|
||||
|
||||
record = create_or_update_syncrecord(self.rower, None, stravaid=id)
|
||||
|
||||
csvfilename = 'media/{code}_{id}.csv'.format(
|
||||
code=uuid4().hex[:16], id=id)
|
||||
job = myqueue(queue,
|
||||
@@ -279,9 +281,7 @@ class StravaIntegration(SyncIntegration):
|
||||
w.uploadedtostrava = int(stravaid)
|
||||
w.save()
|
||||
|
||||
knownstravaids = uniqify([
|
||||
w.uploadedtostrava for w in Workout.objects.filter(user=self.rower)
|
||||
])
|
||||
knownstravaids = get_known_ids(self.rower,'stravaid')
|
||||
|
||||
for item in res.json():
|
||||
d = int(float(item['distance']))
|
||||
|
||||
@@ -3625,6 +3625,7 @@ class SyncRecord(models.Model):
|
||||
nkid = models.BigIntegerField(unique=True,null=True,default=None)
|
||||
c2id = models.BigIntegerField(unique=True,null=True,default=None)
|
||||
tpid = models.BigIntegerField(unique=True,null=True,default=None)
|
||||
rp3id = models.BigIntegerField(unique=True,null=True,default=None)
|
||||
|
||||
def save(self, *args, **kwargs):
|
||||
if self.workout:
|
||||
|
||||
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
BIN
rowers/tests/testdata/testdata.tcx.gz
vendored
Binary file not shown.
@@ -142,6 +142,7 @@ def do_sync(w, options, quick=False):
|
||||
# upload_to_strava = False
|
||||
do_strava_export = False
|
||||
w.save()
|
||||
record = create_or_update_syncrecord(w.user, w, {stravaid:options['stravaid']})
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
@@ -192,6 +193,7 @@ def do_sync(w, options, quick=False):
|
||||
if options['rp3id'] != 0 and options['rp3id'] != '': # pragma: no cover
|
||||
w.uploadedtorp3 = options['rp3id']
|
||||
w.save()
|
||||
record = create_or_update_syncrecord(w.user, w, {rp3id:options['rp3id']})
|
||||
except KeyError:
|
||||
pass
|
||||
|
||||
@@ -242,6 +244,7 @@ def do_sync(w, options, quick=False):
|
||||
w.uploadedtosporttracks = sporttracksid
|
||||
w.save()
|
||||
do_st_export = False
|
||||
record = create_or_update_syncrecord(w.user, w, {'sporttracksid':sporttracksid})
|
||||
try: # pragma: no cover
|
||||
upload_to_st = options['upload_to_SportTracks'] or do_st_export
|
||||
do_st_export = upload_to_st
|
||||
|
||||
Reference in New Issue
Block a user