Private
Public Access
1
0

got get_contacts working

This commit is contained in:
2024-11-17 17:41:14 +01:00
parent e5effd5567
commit 3955061e3f
3 changed files with 3 additions and 39 deletions

View File

@@ -53,45 +53,6 @@ else:
)
)
def idoklad_token():
try:
token = iDokladToken.objects.get(id=1)
except iDokladToken.DoesNotExist:
return None
if token.updated_at + datetime.timedelta(seconds=token.expires_in) < timezone.now():
headers = {
'Content-Type': 'application/x-www-form-urlencoded',
}
data = {
'grant_type': 'refresh_token',
'client_id': IDOKLAD_CLIENT_ID,
'client_secret': IDOKLAD_CLIENT_SECRET,
'scope': 'eet offline_access',
'refresh_token': token.refresh_token,
}
response = requests.post('https://app.idoklad.cz/identity/server/connect/token', headers=headers, data=data)
if response.status_code == 200:
token = response.json()
token['updated_at'] = timezone.now()
iDokladToken.objects.filter(id=1).update(**token)
else:
return None
return token
def prepare_invoice():
token = idoklad_token()
if token is None:
return None
data = {
'templateId': 1,
}
def process_webhook(notification):

View File

@@ -5369,6 +5369,8 @@ class ForceCurveAnalysis(models.Model):
class iDokladToken(models.Model):
access_token = models.CharField(max_length=512)
refresh_token = models.CharField(max_length=512)
id_token = models.CharField(max_length=512)
token_type = models.CharField(max_length=512)
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
expires_in = models.IntegerField() # Store token expiry duration in seconds

View File

@@ -58,6 +58,7 @@ def process_idokladcallback(request):
t.acces_token = result['access_token'],
t.refresh_token = result['refresh_token']
t.expires_in = result['expires_in']
t.id_token = result['id_token']
t.save()
except iDokladToken.DoesNotExist:
t = iDokladToken(