From f1fd6200610fd4da02fae84337cafba9dc815620 Mon Sep 17 00:00:00 2001 From: behruz-dev Date: Tue, 16 Sep 2025 18:29:14 +0500 Subject: [PATCH] fix --- .../management/commands/seed_permissions.py | 28 ++++++----------- .../commands/seed_tab_permissions.py | 30 +++++++++++++++++++ core/apps/accounts/views/permission.py | 1 - core/apps/accounts/views/role.py | 1 - core/apps/accounts/views/user.py | 5 ---- core/apps/company/views/company.py | 2 -- core/apps/counterparty/views/counterparty.py | 6 ---- .../counterparty/views/counterparty_folder.py | 6 +--- core/apps/orders/views/offer.py | 4 --- core/apps/orders/views/order.py | 8 ----- core/apps/orders/views/party.py | 8 ----- core/apps/products/views/folder.py | 12 -------- core/apps/products/views/product.py | 4 --- core/apps/products/views/unity.py | 4 --- core/apps/projects/views/builder.py | 1 - core/apps/projects/views/estimate_product.py | 3 -- core/apps/projects/views/estimate_work.py | 3 -- core/apps/projects/views/project.py | 16 ---------- core/apps/projects/views/project_estimate.py | 4 --- core/apps/shared/views/region.py | 2 -- core/apps/wherehouse/views/invalid_product.py | 4 --- core/apps/wherehouse/views/inventory.py | 1 - core/apps/wherehouse/views/stock_movemend.py | 5 ---- core/apps/wherehouse/views/wherehouse.py | 7 +---- 24 files changed, 41 insertions(+), 124 deletions(-) create mode 100644 core/apps/accounts/management/commands/seed_tab_permissions.py diff --git a/core/apps/accounts/management/commands/seed_permissions.py b/core/apps/accounts/management/commands/seed_permissions.py index e3dffb6..a6ed0b6 100644 --- a/core/apps/accounts/management/commands/seed_permissions.py +++ b/core/apps/accounts/management/commands/seed_permissions.py @@ -8,23 +8,14 @@ class Command(BaseCommand): def handle(self, *args, **options): permissions = [ - {"code": "project", "name": "project all access"}, - { - "code": "project_folder", - "name": "project folder all access" - }, - {'code': 'delete_user', "name": 'can delete user permissions'}, - {'code': 'user', 'name': 'all user access'}, - {'code': 'settings', 'name': 'all settings access'}, - {'code': 'product_folder', 'name': 'all access to product folder'}, - {'code': 'product', 'name': 'all access to product'}, - {'code': 'order', 'name': 'all access to orders'}, - {'code': 'offer', 'name': 'all access to offers'}, - {'code': 'party', 'name': 'all access to partyies'}, - {'code': '', 'name': 'kataloglar'}, - {'code': '', 'name': 'kassa'}, - {'code': '', 'name': 'moliya'}, - {'code': '', 'name': 'arxiv'}, + {'code': 'supply', 'name': "Ta'minot"}, + {'code': 'counterparty', 'name': "Kontragent"}, + {'code': 'warehouse', 'name': "Omborxona"}, + {'code': 'project', 'name': "Loyiha"}, + {'code': 'cash_transaction', 'name': "Kassa"}, + {'code': 'directory', 'name': "Katalog"}, + {'code': 'finance', 'name': "Moliya"}, + {'code': 'archive', 'name': "Arxiv"}, ] for perm in permissions: @@ -34,5 +25,4 @@ class Command(BaseCommand): if created: self.stdout.write(self.style.SUCCESS(f"Created: {perm['code']}")) else: - self.stdout.write(self.style.WARNING(f"Already exists: {perm['code']}")) - \ No newline at end of file + self.stdout.write(self.style.WARNING(f"Already exists: {perm['code']}")) \ No newline at end of file diff --git a/core/apps/accounts/management/commands/seed_tab_permissions.py b/core/apps/accounts/management/commands/seed_tab_permissions.py new file mode 100644 index 0000000..5859f41 --- /dev/null +++ b/core/apps/accounts/management/commands/seed_tab_permissions.py @@ -0,0 +1,30 @@ +from django.core.management.base import BaseCommand + +from core.apps.accounts.models.permission import PermissionToTab + + +class Command(BaseCommand): + help = "Creates intial tab permission entries" + + def handle(self, *args, **options): + permissions = [ + {'code': 'order', 'name': "Buyurtmalar"}, + {'code': 'offer', 'name': "Takliflar"}, + {'code': 'party', 'name': "Partiyalar"}, + {'code': 'warehouse', 'name': "Omborxona"}, + {'code': 'transfer', 'name': "O'tkazmalar"}, + {'code': 'invalid', 'name': "Yaroqsiz"}, + {'code': 'income', 'name': "Kirim"}, + {'code': 'expence', 'name': "Chiqim"}, + {'code': 'income_contract', 'name': 'Kirim shartnoma'}, + {'code': 'expence_contract', 'name': 'Chiqim shartnoma'}, + ] + + for perm in permissions: + obj, created = PermissionToTab.objects.get_or_create( + code=perm['code'], name=perm['name'] + ) + if created: + self.stdout.write(self.style.SUCCESS(f"Created: {perm['code']}")) + else: + self.stdout.write(self.style.WARNING(f"Already exists: {perm['code']}")) \ No newline at end of file diff --git a/core/apps/accounts/views/permission.py b/core/apps/accounts/views/permission.py index de1a30e..a52739e 100644 --- a/core/apps/accounts/views/permission.py +++ b/core/apps/accounts/views/permission.py @@ -10,5 +10,4 @@ class PermissionListApiView(generics.ListAPIView): queryset = Permission.objects.prefetch_related('permission_tab') serializer_class = serializers.PermissionListSerializer permission_classes = [HasRolePermission] - required_permissions = ['settings', 'permissions', 'role'] pagination_class = None \ No newline at end of file diff --git a/core/apps/accounts/views/role.py b/core/apps/accounts/views/role.py index a47549d..0b545b4 100644 --- a/core/apps/accounts/views/role.py +++ b/core/apps/accounts/views/role.py @@ -10,5 +10,4 @@ class RoleListApiView(generics.ListAPIView): serializer_class = serializers.RoleListSerializer queryset = Role.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['settings', 'user'] diff --git a/core/apps/accounts/views/user.py b/core/apps/accounts/views/user.py index c439629..d11066a 100644 --- a/core/apps/accounts/views/user.py +++ b/core/apps/accounts/views/user.py @@ -16,7 +16,6 @@ class UserProfileApiView(generics.GenericAPIView): serializer_class = serializers.UserProfileSerializer queryset = User.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] def get(self, request): user = request.user @@ -32,7 +31,6 @@ class UserProfileUpdateApiView(generics.GenericAPIView): serializer_class = serializers.UserProfileSerializer queryset = User.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] parser_classes = [parsers.MultiPartParser, parsers.FormParser] def patch(self, request): @@ -58,7 +56,6 @@ class UserCreateApiView(generics.GenericAPIView): serializer_class = serializers.UserCreateSerializer queryset = User.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['settings', 'user'] parser_classes = [parsers.MultiPartParser, parsers.FormParser] def post(self, request): @@ -79,7 +76,6 @@ class UserListApiView(generics.ListAPIView): serializer_class = serializers.UserListSerializer queryset = User.objects.select_related('role') permission_classes = [HasRolePermission] - required_permissions = ['settings', 'user'] pagination_class = CustomPageNumberPagination @@ -87,7 +83,6 @@ class UserUpdateApiView(generics.GenericAPIView): serializer_class = serializers.UserProfileSerializer queryset = User.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] parser_classes = [parsers.MultiPartParser, parsers.FormParser] def patch(self, request, id): diff --git a/core/apps/company/views/company.py b/core/apps/company/views/company.py index 4d395ee..2885fe3 100644 --- a/core/apps/company/views/company.py +++ b/core/apps/company/views/company.py @@ -11,7 +11,6 @@ class CompanyListApiView(generics.ListAPIView): serializer_class = serializers.CompanyListSerializer queryset = Company.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] pagination_class = CustomPageNumberPagination @@ -19,5 +18,4 @@ class CompanyDetailApiView(generics.RetrieveAPIView): serializer_class = serializers.CompanyDetailSerializer queryset = Company.objects.prefetch_related('branches') permission_classes = [HasRolePermission] - required_permissions = [] lookup_field = 'id' \ No newline at end of file diff --git a/core/apps/counterparty/views/counterparty.py b/core/apps/counterparty/views/counterparty.py index 57f8709..34af2da 100644 --- a/core/apps/counterparty/views/counterparty.py +++ b/core/apps/counterparty/views/counterparty.py @@ -16,7 +16,6 @@ class CounterpartyListApiView(generics.ListAPIView): serializer_class = serializers.CounterpartyListSerializer queryset = Counterparty.objects.exclude(is_archived=True).exclude(folder__isnull=False) pagination_class = [HasRolePermission] - required_permissions = [] pagination_class = CustomPageNumberPagination filter_backends = [DjangoFilterBackend, filters.SearchFilter] filterset_class = CounterpartyFilter @@ -29,7 +28,6 @@ class CounterpartyCreateApiView(generics.GenericAPIView): serializer_class = serializers.CounterpartyCreateSerializer queryset = Counterparty.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -47,7 +45,6 @@ class CounterpartyCreateApiView(generics.GenericAPIView): class ArchiveCounterpartyApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = [] def get(self, request, id): counterparty = get_object_or_404(Counterparty, id=id) @@ -63,13 +60,11 @@ class ArchivedCounterpartyListApiView(generics.ListAPIView): serializer_class = serializers.CounterpartyListSerializer queryset = Counterparty.objects.exclude(is_archived=False) pagination_class = [HasRolePermission] - required_permissions = [] pagination_class = CustomPageNumberPagination class CounterpartyDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = [] def delete(self, request, id): counterparty = get_object_or_404(Counterparty, id=id) @@ -82,7 +77,6 @@ class CounterpartyDeleteApiView(views.APIView): class CounterpartyUpdateApiView(generics.UpdateAPIView): permission_classes = [HasRolePermission] - required_permissions = [] lookup_field = 'id' serializer_class = serializers.CounterpartyUpdateSerializer queryset = Counterparty.objects.all() diff --git a/core/apps/counterparty/views/counterparty_folder.py b/core/apps/counterparty/views/counterparty_folder.py index 747961c..b5211ab 100644 --- a/core/apps/counterparty/views/counterparty_folder.py +++ b/core/apps/counterparty/views/counterparty_folder.py @@ -12,7 +12,6 @@ class CounterpartyFolderListApiView(generics.GenericAPIView): serializer_class = serializers.CounterpartyFolderListSerializer queryset = CounterpartyFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] pagination_class = None def get(self, request): @@ -25,7 +24,6 @@ class CounterpartyCreateApiView(generics.GenericAPIView): serializer_class = serializers.CounterpartyFolderCreateSerializer queryset = CounterpartyFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -43,7 +41,6 @@ class CounterpartyCreateApiView(generics.GenericAPIView): class CounterpartyDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = [] def delete(self, request, id): counterparty_folder = get_object_or_404(CounterpartyFolder, id=id) @@ -58,5 +55,4 @@ class CounterpartyUpdateApiView(generics.UpdateAPIView): queryset = CounterpartyFolder.objects.all() serializer_class = serializers.CounterpartyFolderListSerializer lookup_field = 'id' - permission_classes = [HasRolePermission] - required_permissions = [] \ No newline at end of file + permission_classes = [HasRolePermission] \ No newline at end of file diff --git a/core/apps/orders/views/offer.py b/core/apps/orders/views/offer.py index bf16fa5..5fb258f 100644 --- a/core/apps/orders/views/offer.py +++ b/core/apps/orders/views/offer.py @@ -14,7 +14,6 @@ from core.apps.orders.filters.order import OrderFilter class OffersCreateApiView(generics.GenericAPIView): permission_classes = [HasRolePermission] - required_permissions = ['offer'] queryset = Offer.objects.all() serializer_class = serializers.MultipleOfferCreateSerializer @@ -36,7 +35,6 @@ class OfferListApiView(generics.GenericAPIView): queryset = Order.objects.select_related('product', 'unity').prefetch_related('offers').filter( offers__isnull=False ).distinct() - required_permissions = ['offer'] serializer_class = serializers.OrderListForOfferSerializer filter_backends = [DjangoFilterBackend] filterset_class = OrderFilter @@ -56,7 +54,6 @@ class OfferUpdateApiView(generics.GenericAPIView): queryset = Offer.objects.all() lookup_field = 'id' permission_classes = [HasRolePermission] - required_permissions = ['offer'] def put(self, request, id): offer = get_object_or_404(Offer, id=id) @@ -87,7 +84,6 @@ class OfferUpdateApiView(generics.GenericAPIView): class OfferDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['offer'] def delete(self, request, id): offer = get_object_or_404(Offer, id=id) diff --git a/core/apps/orders/views/order.py b/core/apps/orders/views/order.py index ea1b55a..ec8c3c6 100644 --- a/core/apps/orders/views/order.py +++ b/core/apps/orders/views/order.py @@ -19,7 +19,6 @@ class OrderListApiView(generics.ListAPIView): 'product', 'unity', 'project', 'project_folder', 'wherehouse' ) permission_classes = [HasRolePermission] - required_permissions = ['order'] pagination_class = CustomPageNumberPagination filter_backends = [DjangoFilterBackend, filters.SearchFilter] search_fields = [ @@ -33,7 +32,6 @@ class OrderCreateApiView(generics.CreateAPIView): serializer_class = serializers.MultipleOrderCreateSerializer queryset = Order.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['order'] def post(self, request): serializer = self.serializer_class(data=request.data, context={'user': request.user}) @@ -47,13 +45,11 @@ class OrderUpdateApiView(generics.UpdateAPIView): serializer_class = serializers.OrderUpdateSerializer queryset = Order.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['order'] lookup_field = 'id' class OrderDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['order'] def delete(self, request, id): order = get_object_or_404(Order, id=id) @@ -63,7 +59,6 @@ class OrderDeleteApiView(views.APIView): class OrderChangeStatusCancelledApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['order'] def get(self, request, order_id): order = get_object_or_404(Order, id=order_id) @@ -77,7 +72,6 @@ class OrderChangeStatusCancelledApiView(views.APIView): class OrderChangeStatusAcceptedApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['order'] def get(self, request, order_id): order = get_object_or_404(Order, id=order_id) @@ -93,14 +87,12 @@ class OrderAcceptApiView(generics.ListAPIView): serializer_class = serializers.OrderListSerializer queryset = Order.objects.filter(status='ACCEPTED') permission_classes = [HasRolePermission] - required_permissions = ['order'] pagination_class = CustomPageNumberPagination class OrderOfferListApiView(generics.GenericAPIView): serializer_class = OffersSerializer permission_classes = [HasRolePermission] - required_permissions = ['order'] queryset = Offer.objects.select_related('order') pagination_class = None diff --git a/core/apps/orders/views/party.py b/core/apps/orders/views/party.py index 1149a52..53cd3f6 100644 --- a/core/apps/orders/views/party.py +++ b/core/apps/orders/views/party.py @@ -19,7 +19,6 @@ class PartyCreateApiView(generics.GenericAPIView): serializer_class = serializers.PartyCreateSerializer queryset = Party.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['party'] def post(self, request): serializer = self.serializer_class(data=request.data, context={'user': request.user}) @@ -39,7 +38,6 @@ class PartyListApiView(generics.GenericAPIView): serializer_class = serializers.PartyListSerializer queryset = Party.objects.select_related('party_amount').exclude(is_deleted=True) permission_classes = [HasRolePermission] - required_permissions = ['party'] filter_backends = [DjangoFilterBackend] filterset_class = PartyFilter @@ -55,7 +53,6 @@ class PartyListApiView(generics.GenericAPIView): class PartyDetailApiView(generics.GenericAPIView): permission_classes = [HasRolePermission] - required_permissions = ['party'] serializer_class = serializers.PartyDetailSerializer queryset = Party.objects.select_related('party_amount').prefetch_related('orders') @@ -71,7 +68,6 @@ class PartyDeleteApiView(generics.GenericAPIView): serializer_class = serializers.DeletedPartyCreateSerializer queryset = Party.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['party'] def post(self, request, party_id): serializer = self.serializer_class(data=request.data, context={'party_id': party_id}) @@ -91,7 +87,6 @@ class DeletedPartyListApiView(generics.GenericAPIView): serializer_class = serializers.DeletedPartyListSerializer queryset = DeletedParty.objects.select_related('party') permission_classes = [HasRolePermission] - required_permissions = ['party'] def get(self, request): deleted_parties = DeletedParty.objects.select_related('party') @@ -106,7 +101,6 @@ class PartyUpdateApiView(generics.GenericAPIView): serializer_class = serializers.PartyUpdateSerializer queryset = Party.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['party'] pagination_class = None def patch(self, request, id): @@ -123,7 +117,6 @@ class PartyUpdateApiView(generics.GenericAPIView): class OrderDeleteToPartyApiView(generics.GenericAPIView): serializer_class = None permission_classes = [HasRolePermission] - required_permissions = ['party'] queryset = None @@ -145,7 +138,6 @@ class PartyChangeStatusToIsMadeApiView(generics.GenericAPIView): serializer_class = None queryset = Party.objects.all() permission_classes = [HasRolePermission] - required_permission = ['party'] pagination_class = None def get(self, request, party_id): diff --git a/core/apps/products/views/folder.py b/core/apps/products/views/folder.py index 8d28e7e..0995740 100644 --- a/core/apps/products/views/folder.py +++ b/core/apps/products/views/folder.py @@ -14,14 +14,12 @@ class FolderCreateApiView(generics.CreateAPIView): serializer_class = serializers.FolderSerializer queryset = Folder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] class FolderDetailApiView(generics.RetrieveAPIView): serializer_class = serializers.FolderDetailSerializer queryset = Folder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] lookup_field = 'id' @@ -29,7 +27,6 @@ class FolderListApiView(generics.ListAPIView): serializer_class = serializers.FolderSerializer queryset = Folder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] pagination_class = None @@ -37,7 +34,6 @@ class FolderUdateApiView(generics.UpdateAPIView): serializer_class = serializers.FolderSerializer queryset = Folder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] lookup_field = 'id' @@ -45,14 +41,12 @@ class FolderDeleteApiView(generics.DestroyAPIView): serializer_class = serializers.FolderSerializer queryset = Folder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] lookup_field = 'id' class FolderProductListApiView(generics.GenericAPIView): pagination_class = CustomPageNumberPagination permission_classes = [HasRolePermission] - required_permissions = ['product', 'product_folder'] queryset = Product.objects.all() serializer_class = ProductListSerializer filter_backends = [filters.SearchFilter] @@ -72,13 +66,11 @@ class SubFolderCreateApiView(generics.CreateAPIView): serializer_class = serializers.SubFolderSerializer queryset = SubFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] lookup_field = 'id' class SubFolderListByFolderIdApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] def get(self, request, folder_id): folder = get_object_or_404(Folder, id=folder_id) @@ -92,7 +84,6 @@ class SubFolderUpdateApiView(generics.UpdateAPIView): queryset = SubFolder.objects.all() lookup_field = 'id' permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] class SubFolderDeleteApiView(generics.DestroyAPIView): @@ -100,13 +91,11 @@ class SubFolderDeleteApiView(generics.DestroyAPIView): queryset = SubFolder.objects.all() lookup_field = 'id' permission_classes = [HasRolePermission] - required_permissions = ['product_folder'] class SubFolderProductListApiView(generics.GenericAPIView): pagination_class = CustomPageNumberPagination permission_classes = [HasRolePermission] - required_permissions = ['product', 'product_folder'] queryset = Product.objects.all() serializer_class = ProductListSerializer @@ -122,5 +111,4 @@ class SubFolderDetailApiView(generics.RetrieveAPIView): serializer_class = serializers.SubFolderDetailSerializer queryset = SubFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product', 'product_folder'] lookup_field = 'id' \ No newline at end of file diff --git a/core/apps/products/views/product.py b/core/apps/products/views/product.py index 8e884d2..2dadff8 100644 --- a/core/apps/products/views/product.py +++ b/core/apps/products/views/product.py @@ -15,7 +15,6 @@ class ProductListApiView(generics.ListAPIView): 'id', 'name', 'type', 'unity' ) permission_classes = [HasRolePermission] - required_permissions = ['product'] pagination_class = CustomPageNumberPagination @@ -23,7 +22,6 @@ class ProductCreateApiView(generics.GenericAPIView): serializer_class = serializers.ProductSerializer queryset = Product.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product'] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -47,7 +45,6 @@ class ProductUpdateApiView(generics.GenericAPIView): serializer_class = serializers.ProductUpdateSerializer queryset = Product.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['product'] def put(self, request, product_id): product = get_object_or_404(Product, id=product_id) @@ -88,7 +85,6 @@ class ProductUpdateApiView(generics.GenericAPIView): class ProductDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['product'] def delete(self, request, product_id): product = get_object_or_404(Product, id=product_id) diff --git a/core/apps/products/views/unity.py b/core/apps/products/views/unity.py index 2d4221a..b0946f0 100644 --- a/core/apps/products/views/unity.py +++ b/core/apps/products/views/unity.py @@ -11,7 +11,6 @@ class UnityListApiView(generics.ListAPIView): serializer_class = serializers.UnityListSerializer queryset = Unity.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] pagination_class = CustomPageNumberPagination @@ -19,14 +18,12 @@ class UnityCreateApiView(generics.CreateAPIView): serializer_class = serializers.UnityListSerializer queryset = Unity.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] class UnityUpdateApiView(generics.UpdateAPIView): serializer_class = serializers.UnityListSerializer queryset = Unity.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] lookup_field = 'id' @@ -34,5 +31,4 @@ class UnityDeleteApiView(generics.DestroyAPIView): serializer_class = serializers.UnityListSerializer queryset = Unity.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] lookup_field = 'id' diff --git a/core/apps/projects/views/builder.py b/core/apps/projects/views/builder.py index 944c4a5..9ace5cc 100644 --- a/core/apps/projects/views/builder.py +++ b/core/apps/projects/views/builder.py @@ -10,7 +10,6 @@ class BuilderListApiView(generics.ListAPIView): serializer_class = serializers.BuilderListSerializer queryset = Builder.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] pagination_class = CustomPageNumberPagination diff --git a/core/apps/projects/views/estimate_product.py b/core/apps/projects/views/estimate_product.py index 47b943e..31bcad7 100644 --- a/core/apps/projects/views/estimate_product.py +++ b/core/apps/projects/views/estimate_product.py @@ -10,7 +10,6 @@ from core.apps.accounts.permissions.permissions import HasRolePermission class EstimateProductCreateApiView(generics.GenericAPIView): permission_classes = [HasRolePermission] - required_permissions = ['project'] serializer_class = serializers.EstimateProductCreateSerializer queryset = EstimateProduct.objects.all() @@ -26,7 +25,6 @@ class EstimateProductUpdateApiView(generics.GenericAPIView): serializer_class = serializers.EstimateProductUpdateSerializer queryset = EstimateProduct.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] def patch(self, request, id): estimate_product = get_object_or_404(EstimateProduct, id=id) @@ -39,7 +37,6 @@ class EstimateProductUpdateApiView(generics.GenericAPIView): class EstimateProductDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project'] def delete(self, request, id): estimate_product = get_object_or_404(EstimateProduct, id=id) diff --git a/core/apps/projects/views/estimate_work.py b/core/apps/projects/views/estimate_work.py index daf84f4..e737889 100644 --- a/core/apps/projects/views/estimate_work.py +++ b/core/apps/projects/views/estimate_work.py @@ -12,7 +12,6 @@ class EstimateWorkCreateApiView(generics.GenericAPIView): serializer_class = serializers.EstimateWorkCreateSerializer queryset = EstimateWork.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project', 'project_folder'] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -26,7 +25,6 @@ class EstimateWorkUpdateApiView(generics.GenericAPIView): serializer_class = serializers.EstimateWorkUpdateSerializer queryset = EstimateWork.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project', 'project_folder'] def patch(self, request, id): estimate_work = get_object_or_404(EstimateWork, id=id) @@ -39,7 +37,6 @@ class EstimateWorkUpdateApiView(generics.GenericAPIView): class EstimateWorkDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project'] def delete(self, request, id): work = get_object_or_404(EstimateWork, id=id) diff --git a/core/apps/projects/views/project.py b/core/apps/projects/views/project.py index 6ebff6f..0dd9fc2 100644 --- a/core/apps/projects/views/project.py +++ b/core/apps/projects/views/project.py @@ -14,7 +14,6 @@ class ProjectListApiView(generics.ListAPIView): serializer_class = serializers.ProjectListSerializer queryset = Project.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] pagination_class = CustomPageNumberPagination def get_queryset(self): @@ -30,7 +29,6 @@ class ArchivedProjectListApiView(generics.ListAPIView): serializer_class = serializers.ProjectListSerializer queryset = Project.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] pagination_class = CustomPageNumberPagination def get_queryset(self): @@ -47,7 +45,6 @@ class ProjectDetailApiView(generics.RetrieveAPIView): 'boss', 'foreman', 'other_members', 'wherehouse', 'cash_transaction', ) permission_classes = [HasRolePermission] - required_permissions = ['project'] lookup_field = 'id' @@ -55,28 +52,24 @@ class ProjectCreateApiView(generics.CreateAPIView): serializer_class = serializers.ProjectCreateSerializer queryset = Project.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] class ProjectUpdateApiView(generics.UpdateAPIView): serializer_class = serializers.ProjectUpdateSerialzier queryset = Project.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] lookup_field = 'id' class ProjectDeleteApiView(generics.DestroyAPIView): permission_classes = [HasRolePermission] lookup_field = 'id' - required_permissions = ['project'] queryset = Project.objects.all() class ArchiveProjectApiView(generics.GenericAPIView): serializer_class = None permission_classes = [HasRolePermission] - required_permissions = ['project'] def get(self, request, id): project = get_object_or_404(Project, id=id) @@ -87,7 +80,6 @@ class ArchiveProjectApiView(generics.GenericAPIView): class UnArchiveProjectApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project'] def get(self, request, id): project = get_object_or_404(Project, id=id) @@ -101,14 +93,12 @@ class ProjectFolderCreateApiView(generics.CreateAPIView): serializer_class = serializers.ProjectFolderCreateSerializer queryset = ProjectFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] class ProjectFolderListApiView(generics.ListAPIView): serializer_class = serializers.ProjectFolderListSerializer queryset = ProjectFolder.objects.prefetch_related('projects') permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] pagination_class = CustomPageNumberPagination @@ -116,14 +106,12 @@ class ProjectFolderCreateProjectApiView(generics.CreateAPIView): serializer_class = serializers.ProjectFolderProjectCreateSerializer queryset = Project.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] class ProjectFolderUpdateApiView(generics.GenericAPIView): serializer_class = serializers.ProjectFolderUpdateSerializer queryset = ProjectFolder.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] def put(self, request, id): folder = get_object_or_404(ProjectFolder, id=id) @@ -138,7 +126,6 @@ class ProjectFolderDetailApiView(generics.GenericAPIView): serializer_class = serializers.ProjectFolderDetailSerializer queryset = ProjectFolder.objects.select_related('projects') permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] def get(self, request, id): folder = ( @@ -154,7 +141,6 @@ class ProjectFolderDetailApiView(generics.GenericAPIView): class ProjectFolderDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project_folder'] def delete(self, request, id): folder = get_object_or_404(ProjectFolder, id=id) @@ -165,7 +151,6 @@ class ProjectFolderDeleteApiView(views.APIView): class ChangeProjectFolderApiView(generics.GenericAPIView): serializer_class = serializers.ChangeProjectFolderSerializer queryset = Project.objects.all() - required_permissions = ['project_folder'] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -185,7 +170,6 @@ class ChangeProjectFolderApiView(generics.GenericAPIView): class ProjectAndFolderApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project', 'project_folder'] def get(self, request): folders = ProjectFolder.objects.prefetch_related('projects') diff --git a/core/apps/projects/views/project_estimate.py b/core/apps/projects/views/project_estimate.py index e117560..24dd9d9 100644 --- a/core/apps/projects/views/project_estimate.py +++ b/core/apps/projects/views/project_estimate.py @@ -12,14 +12,12 @@ class ProjectEstimateListApiView(generics.ListAPIView): serializer_class = serializers.ProjectEstimateListSerializer queryset = ProjectEstimate.objects.prefetch_related('estimate_works') permission_classes = [HasRolePermission] - required_permissions = ['project'] class ProjectEstimateCreateApiView(generics.GenericAPIView): serializer_class = serializers.ProjectEstimateCreateSerializer queryset = ProjectEstimate.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] def post(self, request): serializer = self.serializer_class(data=request.data) @@ -33,7 +31,6 @@ class ProjectEstimateUpdateApiView(generics.GenericAPIView): serializer_class = serializers.ProjectEstimateUpdateSerializer queryset = ProjectEstimate.objects.all() permission_classes = [HasRolePermission] - required_permissions = ['project'] def patch(self, request, id): estimate = get_object_or_404(ProjectEstimate, id=id) @@ -48,7 +45,6 @@ class ProjectEstimateDeleteApiView(generics.GenericAPIView): queryset = ProjectEstimate.objects.all() serializer_class = None permission_classes = [HasRolePermission] - required_permissions = ['project'] def delete(self, request, id): estimte = get_object_or_404(ProjectEstimate, id=id) diff --git a/core/apps/shared/views/region.py b/core/apps/shared/views/region.py index 93337ee..5e2c353 100644 --- a/core/apps/shared/views/region.py +++ b/core/apps/shared/views/region.py @@ -13,13 +13,11 @@ class RegionListApiView(generics.ListAPIView): permission_classes = [HasRolePermission] queryset = Region.objects.all() serializer_class = RegionListSerializer - required_permissions = ['project', 'project_folder'] pagination_class = None class DistrictListApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = ['project', 'project_folder'] def get(self, request, id): region = get_object_or_404(Region, id=id) diff --git a/core/apps/wherehouse/views/invalid_product.py b/core/apps/wherehouse/views/invalid_product.py index a6e71f4..644cff3 100644 --- a/core/apps/wherehouse/views/invalid_product.py +++ b/core/apps/wherehouse/views/invalid_product.py @@ -19,7 +19,6 @@ class InvalidProductCreateApiView(generics.GenericAPIView): serializer_class = serializers.InvalidProductCreateSerializer queryset = InvalidProduct.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] parser_classes = [parsers.FormParser, parsers.MultiPartParser] def post(self, request): @@ -42,7 +41,6 @@ class InvalidProductListApiView(generics.GenericAPIView): 'inventory', 'project_folder', 'work' ).prefetch_related('witnesses') permission_classes = [HasRolePermission] - required_permissions = [] filter_backends = [DjangoFilterBackend] filterset_class = InvalidProductFilter @@ -60,7 +58,6 @@ class InvalidProductUpdateApiView(generics.GenericAPIView): serializer_class = serializers.InvalidProductUpdateSerializer queryset = InvalidProduct.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] parser_classes = [parsers.FormParser, parsers.MultiPartParser] def patch(self, request, id): @@ -80,7 +77,6 @@ class InvalidProductUpdateApiView(generics.GenericAPIView): class InvalidProductDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = [] def delete(self, request, id): invalid_product = get_object_or_404(InvalidProduct, id=id) diff --git a/core/apps/wherehouse/views/inventory.py b/core/apps/wherehouse/views/inventory.py index f42d130..3a277f5 100644 --- a/core/apps/wherehouse/views/inventory.py +++ b/core/apps/wherehouse/views/inventory.py @@ -14,7 +14,6 @@ class InventoryListApiView(generics.GenericAPIView): serializer_class = serializers.InventoryListSerializer queryset = Inventory.objects.select_related('product', 'unity').exclude(is_invalid=True) permissions_classes = [HasRolePermission] - required_permissions = ['wherehouse'] filter_backends = [DjangoFilterBackend, filters.SearchFilter] search_fields = [ 'product__name', 'unity__value' diff --git a/core/apps/wherehouse/views/stock_movemend.py b/core/apps/wherehouse/views/stock_movemend.py index 4ea2f62..9499fbb 100644 --- a/core/apps/wherehouse/views/stock_movemend.py +++ b/core/apps/wherehouse/views/stock_movemend.py @@ -18,7 +18,6 @@ class StockMovemendCreateApiView(generics.GenericAPIView): serializer_class = serializers.StockMovmendCreateSerializer queryset = StockMovemend.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] def post(self, request): serializer = self.serializer_class(data=request.data, context={'user': request.user}) @@ -39,7 +38,6 @@ class StockMovemendListApiView(generics.GenericAPIView): 'wherehouse_to', 'wherehouse_from', 'recipient', 'project_folder', 'project' ).prefetch_related('movemend_products') permission_classes = [HasRolePermission] - required_permissions = [] filter_backends = [DjangoFilterBackend, filters.SearchFilter] filterset_class = StockMovemendFilter search_fields = [ @@ -60,7 +58,6 @@ class StockMovemendListApiView(generics.GenericAPIView): class StockMovemendDeleteApiView(generics.GenericAPIView): serializer_class = None permission_classes = [HasRolePermission] - required_permissions = [] queryset = StockMovemend.objects.all() def delete(self, request, id): @@ -80,7 +77,6 @@ class StockMovemendDeleteApiView(generics.GenericAPIView): class StockMovemendProductRemoveApiView(generics.GenericAPIView): permission_classes = [HasRolePermission] - required_permissions = [] queryset = StockMovmendProduct.objects.all() serializer_class = None @@ -106,7 +102,6 @@ class StockMovemendUpdateApiView(generics.GenericAPIView): serializer_class = serializers.StockMovemendUpdateSerializer queryset = StockMovemend.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] def patch(self, request, id): stock_movemend = get_object_or_404(StockMovemend, id=id) diff --git a/core/apps/wherehouse/views/wherehouse.py b/core/apps/wherehouse/views/wherehouse.py index 5e142f0..775ce24 100644 --- a/core/apps/wherehouse/views/wherehouse.py +++ b/core/apps/wherehouse/views/wherehouse.py @@ -12,14 +12,12 @@ class WhereHouseListApiView(generics.ListAPIView): serializer_class = serializers.WhereHouseListSerializer queryset = WhereHouse.objects.select_related('branch') permission_classes = [HasRolePermission] - required_permissions = [] class WhereHouseDetailApiView(generics.RetrieveAPIView): serializer_class = serializers.WhereHouseDetailSerializer queryset = WhereHouse.objects.select_related('branch') permission_classes = [HasRolePermission] - required_permissions = [] lookup_field = 'id' @@ -27,12 +25,10 @@ class WhereHouseCreateApiView(generics.CreateAPIView): serializer_class = serializers.WhereHouseCreateSerializer queryset = WhereHouse.objects.all() permission_classes = [HasRolePermission] - required_permissions = [] class WhereHouseDeleteApiView(views.APIView): permission_classes = [HasRolePermission] - required_permissions = [] def delete(self, request, id): wherehouse = get_object_or_404(WhereHouse, id=id) @@ -47,5 +43,4 @@ class WhereHouseUpdateApiView(generics.UpdateAPIView): serializer_class = serializers.WhereHouseUpdateSerializer queryset = WhereHouse.objects.all() lookup_field = 'id' - permission_classes = [HasRolePermission] - required_permissions = [] \ No newline at end of file + permission_classes = [HasRolePermission] \ No newline at end of file