oncall-engine/engine/apps/oss_installation/serializers/cloud_user.py

21 lines
778 B
Python
Raw Permalink Normal View History

2022-06-05 19:09:40 +04:00
from rest_framework import serializers
2022-06-04 16:49:10 +04:00
2022-06-06 16:02:09 +04:00
from apps.oss_installation.models import CloudConnector, CloudUserIdentity
from apps.oss_installation.utils import cloud_user_identity_status
2022-06-04 16:49:10 +04:00
from apps.user_management.models import User
class CloudUserSerializer(serializers.ModelSerializer):
cloud_data = serializers.SerializerMethodField()
class Meta:
model = User
2022-06-08 15:04:23 +04:00
fields = ["cloud_data"]
2022-06-04 16:49:10 +04:00
def get_cloud_data(self, obj: User):
2022-06-06 16:02:09 +04:00
connector = CloudConnector.objects.filter().first()
cloud_user_identity = CloudUserIdentity.objects.filter(email=obj.email).first()
status, link = cloud_user_identity_status(obj.organization, connector, cloud_user_identity)
2022-06-04 16:49:10 +04:00
cloud_data = {"status": status, "link": link}
return cloud_data