From 790b548d36c83c8b81cfa64f17227f983e4d2b25 Mon Sep 17 00:00:00 2001 From: mostafa7171 Date: Mon, 9 Feb 2026 08:56:42 +0330 Subject: [PATCH] add AllowRegisterCodeForStewardAllocationViewset --- panel/ProvinceOperator/serializers.py | 9 ++++++++- panel/ProvinceOperator/views.py | 26 +++++++++++++++++++++++++- panel/urls.py | 2 ++ 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/panel/ProvinceOperator/serializers.py b/panel/ProvinceOperator/serializers.py index 12c9109..a53d2bf 100644 --- a/panel/ProvinceOperator/serializers.py +++ b/panel/ProvinceOperator/serializers.py @@ -78,7 +78,8 @@ from panel.models import ( GuildsGeneralConfigs, StewardAppLogin, StewardRequest, RestrictionCarcassDistribution, AllowRegisterCodeForKillHouseFreeSaleBarInformation, AllowRegisterCodeForStewardFreeSaleBarInformation, LimitationForDirectPurchaseAndBarInformation, WarehouseArchive, SmsRecipient, MarketDailyLimitation, - HatchingArchivePercent, Representative, POSAccessLevel, DispenserInformation, KillHousePercentage + HatchingArchivePercent, Representative, POSAccessLevel, DispenserInformation, KillHousePercentage, + AllowRegisterCodeForStewardAllocation ) from panel.poultry.helpers import market_daily_limitation_info from panel.poultry.serializers import PoultryRequestSerializer, PoultrySerializer, \ @@ -5948,3 +5949,9 @@ class UserPOSMachineSerializer(serializers.ModelSerializer): class Meta: model = POSMachine fields = '__all__' + + +class AllowRegisterCodeForStewardAllocationSerializer(serializers.ModelSerializer): + class Meta: + model = AllowRegisterCodeForStewardAllocation + fields = ['id','key', 'active', 'time'] diff --git a/panel/ProvinceOperator/views.py b/panel/ProvinceOperator/views.py index 1e87544..c475657 100644 --- a/panel/ProvinceOperator/views.py +++ b/panel/ProvinceOperator/views.py @@ -137,7 +137,7 @@ from panel.ProvinceOperator.serializers import ( NewPOSMachineSerializer, TotalStewardRemainWeightSerializer, TotalGuildStewardWarehouseArchiveDashboardSerializer, MarketDailyLimitationSerializer, HatchingArchivePercentSerializer, POSMachineReadSerializer, POSMachineTransferSerializer, UserPOSMachineSerializer, DispenserInformationSerializer, NewDispenserSerializer, - RepresentativeSerializer, NewCombinedPosProductSerializer) + RepresentativeSerializer, NewCombinedPosProductSerializer, AllowRegisterCodeForStewardAllocationSerializer) from panel.ProvinceOperator.services.pos_transfer_service import POSTransferService from panel.ReportingPanel.views import get_gid from panel.admin import PROJECT_API_KEY @@ -27811,3 +27811,27 @@ def get_dispenser_user_info(request): ) person_data = person_response.json() return Response(person_data, status=status.HTTP_200_OK) + + + +class AllowRegisterCodeForStewardAllocationViewset(viewsets.ModelViewSet): + queryset = AllowRegisterCodeForStewardAllocation.objects.filter(trash=False) + permission_classes = [TokenHasReadWriteScope] + serializer_class = AllowRegisterCodeForStewardAllocationSerializer + + def get_object(self): + instance, created = AllowRegisterCodeForStewardAllocation.objects.get_or_create( + trash=False) + return instance + + def list(self, request, *args, **kwargs): + instance = self.get_object() + serializer = self.get_serializer(instance) + return Response(serializer.data, status=status.HTTP_200_OK) + + def update(self, request, *args, **kwargs): + instance = self.get_object() + serializer = self.get_serializer(instance, data=request.data, partial=True) + serializer.is_valid(raise_exception=True) + serializer.save() + return Response(serializer.data, status=status.HTTP_200_OK) \ No newline at end of file diff --git a/panel/urls.py b/panel/urls.py index 00432eb..4415e4a 100644 --- a/panel/urls.py +++ b/panel/urls.py @@ -758,6 +758,8 @@ router.register(r'market-daily-limitation', province_views.MarketDailyLimitation basename="market-daily-limitation") router.register(r'hatching-archive-percent', province_views.HatchingArchivePercentViewset, basename="hatching-archive-percent") +router.register(r'allocations-register-code', province_views.AllowRegisterCodeForStewardAllocationViewset, + basename="allocations-register-code") router.register(r'index-weight-category', province_views.IndexWeightCategoryViewSet, basename="index-weight-category") router.register(r'drop-limit', province_views.PercentageDropLimitationViewset,