add part of get image

This commit is contained in:
Kseninia Mikhaylova 2024-07-18 13:49:56 +03:00
parent b32f930cbd
commit ce81205317
3 changed files with 24 additions and 3 deletions

View File

@ -30,6 +30,7 @@ router.register(r'api/inventory', views.InventoryItemViewSet)
router.register(r'api/tmc/fields', tmc_views.BaseCustomFieldViewSet)
router.register(r'api/tmc/items', tmc_views.CustomTableViewSet)
router.register(r'api/tgbot', tgbot_views.TgItemViewSet)
router.register(r'api/tgbot/items', tgbot_views.TmcFieldViewset)
urlpatterns = [
path('', include(router.urls)),

View File

@ -9,4 +9,10 @@ logger = logging.getLogger("root")
class TgItemSerializer(serializers.ModelSerializer):
class Meta:
model = TgItem
fields = '__all__'
fields = "__all__"
depth = 3
class TmcFieldSerializer(serializers.ModelSerializer):
class Meta:
model = TgItem
fields = "__all__"

View File

@ -10,7 +10,7 @@ from rest_framework.decorators import action
from .tgbot import TgBot
from .apps import TgBotUpdater
from .models import TgItem, TmcElement, TmcField
from .serializers import TgItemSerializer
from .serializers import TgItemSerializer, TmcFieldSerializer
import logging
@ -21,7 +21,7 @@ class TgItemViewSet(viewsets.ModelViewSet):
queryset = TgItem.objects.all()
serializer_class = TgItemSerializer
http_method_names = ["post", "get"]
@action(detail=False, methods=["post"], url_path=settings.TGBOT["WEBHOOK_URL"])
def send_tg_data(self, request):
TgBotUpdater.my_queue.put(
@ -29,3 +29,17 @@ class TgItemViewSet(viewsets.ModelViewSet):
)
return Response({"result": "ok"})
# return super().create(request, *args, **kwargs)
class TmcFieldViewset(viewsets.ModelViewSet):
queryset = TmcField.objects.all()
serializer_class = TmcFieldSerializer
http_method_names = ["get"]
@action(detail=False, methods=["get"], url_path=r"get_image/(?P<field_id>[^/.]+)")
def get_image(self, request, field_id):
if TmcField.objects.filter(id=field_id).exists():
field = TmcField.objects.get(id=field_id)
return Response({"fileId": field.text})
else:
raise (FileNotFoundError())