fix: [tag] tag delete: fix update first/last seen

pull/607/merge
terrtia 2024-10-08 16:10:14 +02:00
parent 12c5483467
commit faea17572c
No known key found for this signature in database
GPG Key ID: 1E1B1F50D84613D0
1 changed files with 22 additions and 13 deletions

View File

@ -625,20 +625,29 @@ def _update_tag_first_seen(tag, first_seen, last_seen):
# # TODO: # # TODO:
def _update_tag_last_seen(tag, first_seen, last_seen): def _update_tag_last_seen(tag, first_seen, last_seen):
update = True
while update:
if first_seen == last_seen: if first_seen == last_seen:
if r_tags.scard(f'item::{tag}:{last_seen}') > 0: if r_tags.scard(f'item::{tag}:{last_seen}') > 0:
r_tags.hset(f'tag_metadata:{tag}', 'last_seen', last_seen) r_tags.hset(f'tag_metadata:{tag}', 'last_seen', last_seen)
update = False
break
# no tag in db # no tag in db
else: else:
r_tags.hdel(f'tag_metadata:{tag}', 'first_seen') r_tags.hdel(f'tag_metadata:{tag}', 'first_seen')
r_tags.hdel(f'tag_metadata:{tag}', 'last_seen') r_tags.hdel(f'tag_metadata:{tag}', 'last_seen')
update = False
break
else: else:
if r_tags.scard(f'item::{tag}:{last_seen}') > 0: if r_tags.scard(f'item::{tag}:{last_seen}') > 0:
r_tags.hset(f'tag_metadata:{tag}', 'last_seen', last_seen) r_tags.hset(f'tag_metadata:{tag}', 'last_seen', last_seen)
update = False
break
else: else:
last_seen = Date.date_substract_day(str(last_seen)) last_seen = Date.date_substract_day(str(last_seen))
if int(last_seen) >= int(first_seen): if int(last_seen) < int(first_seen):
_update_tag_last_seen(tag, first_seen, last_seen) update = False
break
def update_tag_metadata(tag, date, delete=False): # # TODO: delete Tags def update_tag_metadata(tag, date, delete=False): # # TODO: delete Tags