payer and payee wallet instead of wallet_category

This commit is contained in:
Sayyid Hamid Mahdavi 2025-10-21 20:36:59 +03:30
parent 696fe3c4e5
commit a8166a7bdf
2 changed files with 22 additions and 19 deletions

View file

@ -13,7 +13,8 @@ from ..users.models import User
class TransactionSerializer(serializers.ModelSerializer):
payee = serializers.UUIDField(read_only=True)
payee_type = serializers.IntegerField(read_only=True)
payee_wallet_category = serializers.UUIDField(read_only=True)
payee_wallet = serializers.UUIDField(source='payee_wallet_category', read_only=True)
payer_wallet = serializers.UUIDField(source='payer_wallet_category', read_only=True)
role = serializers.SerializerMethodField()
class Meta:
@ -21,10 +22,10 @@ class TransactionSerializer(serializers.ModelSerializer):
fields = ('uuid',
'payer',
'payer_type',
'payer_wallet_category',
'payer_wallet',
'payee',
'payee_type',
'payee_wallet_category',
'payee_wallet',
"created_at",
"state",
'amount',
@ -169,7 +170,8 @@ class ApplicationDepositSerializer(serializers.ModelSerializer):
uuid = serializers.UUIDField(required=False, validators=[])
payee = serializers.UUIDField(required=True)
payee_type = serializers.IntegerField(required=True)
payee_wallet_category = serializers.UUIDField(required=False) # TODO: required True
payee_wallet = serializers.UUIDField(source='payee_wallet_category', required=False) # TODO: required True
payer_wallet = serializers.UUIDField(source='payer_wallet_category', read_only=True)
amount = serializers.IntegerField(required=True, validators=[MinValueValidator(1)])
# TODO: details as fields
@ -179,10 +181,10 @@ class ApplicationDepositSerializer(serializers.ModelSerializer):
'uuid',
'payer',
'payer_type',
'payer_wallet_category',
'payer_wallet',
'payee',
'payee_type',
'payee_wallet_category',
'payee_wallet',
"created_at",
"state",
'amount',
@ -198,7 +200,8 @@ class ApplicationWithdrawSerializer(serializers.ModelSerializer):
uuid = serializers.UUIDField(required=False, validators=[])
payer = serializers.UUIDField(required=True)
payer_type = serializers.IntegerField(required=True)
payer_wallet_category = serializers.UUIDField(required=False) # TODO: required True
payer_wallet = serializers.UUIDField(source='payer_wallet_category',required=False) # TODO: required True
payee_wallet = serializers.UUIDField(source='payee_wallet_category', read_only=True) # TODO: required True
amount = serializers.IntegerField(required=True, validators=[MinValueValidator(1)])
class Meta:
@ -207,10 +210,10 @@ class ApplicationWithdrawSerializer(serializers.ModelSerializer):
'uuid',
'payer',
'payer_type',
'payer_wallet_category',
'payer_wallet',
'payee',
'payee_type',
'payee_wallet_category',
'payee_wallet',
"created_at",
"state",
'amount',
@ -219,4 +222,4 @@ class ApplicationWithdrawSerializer(serializers.ModelSerializer):
'details',
)
read_only_fields = ['updated_at', 'state', 'created_at', 'payee', 'payee_type', 'payee_wallet_category']
read_only_fields = ['updated_at', 'state', 'created_at', 'payee', 'payee_type', 'payee_wallet']

View file

@ -138,7 +138,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 100,
'payee': self.payee_uuid,
'payee_type': TypeChoices.USER,
'payee_wallet_category': self.wallet_category1_uuid,
'payee_wallet': self.wallet_category1_uuid,
}
kwargs_category_uuid_payee_uuid = {
'category_uuid': self.wallet_category1_uuid,
@ -191,7 +191,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 100,
'payee': self.payee_uuid,
'payee_type': TypeChoices.USER,
'payee_wallet_category': self.wallet_category1_uuid
'payee_wallet': self.wallet_category1_uuid
}
response = self.client.post(reverse('wallet:application_deposit_submit_api', kwargs=kwargs_category_uuid), data=data, HTTP_AUTHORIZATION=auth)
self.assertEqual(response.status_code, 201)
@ -243,7 +243,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 500,
'payee': self.payee_uuid,
'payee_type': TypeChoices.USER,
'payee_wallet_category': self.wallet_category1_uuid
'payee_wallet': self.wallet_category1_uuid
}
response = self.client.post(reverse('wallet:application_deposit_submit_api', kwargs=kwargs_category_uuid_payee_uuid), data=data, HTTP_AUTHORIZATION=auth)
self.assertEqual(response.status_code, 422)
@ -269,7 +269,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 500,
'payee': self.payee_uuid,
'payee_type': TypeChoices.USER,
'payee_wallet_category': self.wallet_category1_uuid,
'payee_wallet': self.wallet_category1_uuid,
}
kwargs_category_uuid_payee_uuid = {
@ -327,7 +327,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 200,
'payee': self.payee_uuid,
'payee_type': TypeChoices.USER,
'payee_wallet_category': self.wallet_category1_uuid,
'payee_wallet': self.wallet_category1_uuid,
}
@ -361,7 +361,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 100,
'payer': self.payer_uuid,
'payer_type': TypeChoices.USER,
'payer_wallet_category': self.wallet_category1_uuid,
'payer_wallet': self.wallet_category1_uuid,
}
kwargs_category_uuid = {
@ -416,7 +416,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 100,
'payer': self.payer_uuid,
'payer_type': TypeChoices.USER,
'payer_wallet_category': self.wallet_category1_uuid,
'payer_wallet': self.wallet_category1_uuid,
}
response = self.client.post(reverse('wallet:application_withdraw_submit_api', kwargs=kwargs_category_uuid), data=data, HTTP_AUTHORIZATION=auth)
self.assertEqual(response.status_code, 201)
@ -456,7 +456,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 0,
'payer': self.payer_uuid,
'payer_type': TypeChoices.USER,
'payer_wallet_category': self.wallet_category1_uuid,
'payer_wallet': self.wallet_category1_uuid,
}
kwargs_category_uuid = {
'category_uuid': self.wallet_category1_uuid,
@ -502,7 +502,7 @@ class ApplicationApiFlowsTests(APITestCase):
'amount': 200,
'payer': self.payer_uuid,
'payer_type': TypeChoices.USER,
'payer_wallet_category': self.wallet_category1_uuid,
'payer_wallet': self.wallet_category1_uuid,
}
kwargs_category_uuid = {