change contract apis response

This commit is contained in:
behruz-dev
2025-07-23 10:16:45 +05:00
parent 8a4df63b9b
commit c0637b93d3
5 changed files with 12 additions and 14 deletions

View File

@@ -9,7 +9,7 @@ from core.apps.accounts.serializers import auth as auth_serializer
from core.apps.accounts.models.verification_code import VerificationCode from core.apps.accounts.models.verification_code import VerificationCode
from core.apps.accounts.cache.user import cache_user_credentials, get_user_creadentials from core.apps.accounts.cache.user import cache_user_credentials, get_user_creadentials
from core.apps.accounts.tasks import user as user_tasks from core.apps.accounts.tasks import user as user_tasks
from core.apps.accounts.utils.response import success_message, error_message from core.apps.shared.utils.response import success_message, error_message
User = get_user_model() User = get_user_model()

View File

@@ -3,6 +3,8 @@ from rest_framework.response import Response
from core.apps.contracts.serializers import contract as contract_serializer from core.apps.contracts.serializers import contract as contract_serializer
from core.apps.contracts.models.contract import Contract from core.apps.contracts.models.contract import Contract
from core.apps.shared.utils.response import success_message, error_message
class ContractCreateApiView(generics.CreateAPIView): class ContractCreateApiView(generics.CreateAPIView):
@@ -18,12 +20,7 @@ class ContractCreateApiView(generics.CreateAPIView):
serializer = self.get_serializer(data=request.data) serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True) serializer.is_valid(raise_exception=True)
contract = serializer.save() contract = serializer.save()
return success_message(str(contract.id), 201)
return Response({
"success": True,
"message": "Contract successfully created",
"contract_id": str(contract)
}, status=status.HTTP_201_CREATED)
class ContractListApiView(generics.ListAPIView): class ContractListApiView(generics.ListAPIView):
@@ -38,6 +35,6 @@ class ContractDetailApiView(views.APIView):
def get(self, request, id): def get(self, request, id):
contract = Contract.objects.filter(id=id, contract_sides__user=request.user).prefetch_related('contract_sides').first() contract = Contract.objects.filter(id=id, contract_sides__user=request.user).prefetch_related('contract_sides').first()
if not contract: if not contract:
return Response({'success': False, "message": 'contract not found'}, status=404) return error_message("Contract not found", 404)
serializer = contract_serializer.ContractDetailSerializer(contract) serializer = contract_serializer.ContractDetailSerializer(contract)
return Response(serializer.data, status=200) return Response(serializer.data, status=200)

View File

@@ -4,7 +4,7 @@ from rest_framework.response import Response
from core.apps.contracts.serializers import contract_side as contract_side_serializer from core.apps.contracts.serializers import contract_side as contract_side_serializer
from core.apps.contracts.models.contract import ContractSide from core.apps.contracts.models.contract import ContractSide
from core.apps.contracts.tasks.contract_side import create_contract_side from core.apps.contracts.tasks.contract_side import create_contract_side
from core.apps.shared.utils.response import error_message, success_message
class ConstartSideCreateApiView(generics.GenericAPIView): class ConstartSideCreateApiView(generics.GenericAPIView):
serializer_class = contract_side_serializer.ContractSideCreateSerializer serializer_class = contract_side_serializer.ContractSideCreateSerializer
@@ -15,6 +15,6 @@ class ConstartSideCreateApiView(generics.GenericAPIView):
if serializer.is_valid(): if serializer.is_valid():
# TODO: call celery task # TODO: call celery task
create_contract_side.delay(serializer.validated_data) create_contract_side.delay(serializer.validated_data)
return Response({"success": True, "message": "contract side created"}, status=status.HTTP_201_CREATED) return success_message("Contract side created", 201)
return Response({"success": False, "message": serializer.errors}, status=status.HTTP_400_BAD_REQUEST) return error_message(serializer.error_messages, 400)

View File

@@ -4,6 +4,7 @@ from rest_framework.response import Response
from core.apps.contracts.models.contract import ContractSignature, ContractSignatureCode from core.apps.contracts.models.contract import ContractSignature, ContractSignatureCode
from core.apps.contracts.serializers.contract_signature import ContractSignatureSerializer from core.apps.contracts.serializers.contract_signature import ContractSignatureSerializer
from core.apps.contracts.tasks.contract_signature import send_contract_signature_code from core.apps.contracts.tasks.contract_signature import send_contract_signature_code
from core.apps.shared.utils.response import error_message, success_message
class SendContractSignatureCodeApiView(views.APIView): class SendContractSignatureCodeApiView(views.APIView):
@@ -12,7 +13,7 @@ class SendContractSignatureCodeApiView(views.APIView):
def get(self, request, signature_id): def get(self, request, signature_id):
# TODO: create and send code with celery in backgroud # TODO: create and send code with celery in backgroud
send_contract_signature_code.delay(signature_id) send_contract_signature_code.delay(signature_id)
return Response({"success": True, "message": "code send"}, status=status.HTTP_200_OK) return success_message("code send", 200)
class SigningContractApiView(generics.GenericAPIView): class SigningContractApiView(generics.GenericAPIView):
@@ -40,5 +41,5 @@ class SigningContractApiView(generics.GenericAPIView):
contract_signature.status = 'signed' contract_signature.status = 'signed'
contract_signature.save() contract_signature.save()
contract.save() contract.save()
return Response({'success': True, 'message': 'contract is signed'}, status=status.HTTP_200_OK) return success_message('contract signed', 200)
return Response({'success': False, 'message': serializer.errors}, status=status.HTTP_400_BAD_REQUEST) return error_message(serializer.errors, 400)