add: add chat for income and expence
This commit is contained in:
@@ -89,7 +89,7 @@ class ExpenceListSerializer(serializers.ModelSerializer):
|
||||
fields = [
|
||||
'id', 'cash_transaction', 'payment_type', 'project_folder', 'project', 'expence_type',
|
||||
'counterparty', 'price', 'exchange_rate', 'currency', 'date', 'comment', 'audit', 'file',
|
||||
'user'
|
||||
'user', 'expence_chats',
|
||||
]
|
||||
|
||||
def get_user(self, obj):
|
||||
|
||||
40
core/apps/finance/serializers/expence_chat.py
Normal file
40
core/apps/finance/serializers/expence_chat.py
Normal file
@@ -0,0 +1,40 @@
|
||||
from django.db import transaction
|
||||
|
||||
from rest_framework import serializers
|
||||
|
||||
from core.apps.finance.models import Expence, ExpenceChat, ExpenceMessage
|
||||
|
||||
|
||||
class ExpenceMessageListSerializer(serializers.ModelSerializer):
|
||||
user = serializers.SerializerMethodField(method_name='get_user')
|
||||
|
||||
class Meta:
|
||||
model = ExpenceMessage
|
||||
fields = [
|
||||
'id', 'user', 'message', 'file'
|
||||
]
|
||||
|
||||
def get_user(self, obj):
|
||||
return {
|
||||
'id': obj.user.id,
|
||||
'full_name': obj.user.full_name,
|
||||
'profile_image': obj.user.profile_image.url if obj.user.profile_image else None,
|
||||
}
|
||||
|
||||
|
||||
class ExpenceMessageCreateSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ExpenceMessage
|
||||
fields = [
|
||||
'message', 'file', 'chat'
|
||||
]
|
||||
|
||||
def create(self, validated_data):
|
||||
with transaction.atomic():
|
||||
return ExpenceMessage.objects.create(
|
||||
message=validated_data.get('message'),
|
||||
file=validated_data.get('file'),
|
||||
user=self.context.get('user'),
|
||||
chat=validated_data.get('chat'),
|
||||
)
|
||||
|
||||
@@ -19,7 +19,7 @@ class IncomeListSerializer(serializers.ModelSerializer):
|
||||
fields = [
|
||||
'id', 'cash_transaction', 'payment_type', 'project_folder', 'project',
|
||||
'counterparty', 'type_income', 'currency', 'price', 'exchange_rate', 'date',
|
||||
'comment', 'file', 'audit', 'user'
|
||||
'comment', 'file', 'audit', 'user', 'income_chat'
|
||||
]
|
||||
|
||||
def get_cash_transaction(self, obj):
|
||||
|
||||
40
core/apps/finance/serializers/income_chat.py
Normal file
40
core/apps/finance/serializers/income_chat.py
Normal file
@@ -0,0 +1,40 @@
|
||||
from django.db import transaction
|
||||
|
||||
from rest_framework import serializers
|
||||
|
||||
from core.apps.finance.models import IncomeMessage
|
||||
|
||||
|
||||
class IncomeMessageListSerializer(serializers.ModelSerializer):
|
||||
user = serializers.SerializerMethodField(method_name='get_user')
|
||||
|
||||
class Meta:
|
||||
model = IncomeMessage
|
||||
fields = [
|
||||
'id', 'user', 'message', 'file'
|
||||
]
|
||||
|
||||
def get_user(self, obj):
|
||||
return {
|
||||
'id': obj.user.id,
|
||||
'full_name': obj.user.full_name,
|
||||
'profile_image': obj.user.profile_image.url if obj.user.profile_image else None,
|
||||
}
|
||||
|
||||
|
||||
class IncomeMessageCreateSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = IncomeMessage
|
||||
fields = [
|
||||
'message', 'file', 'chat'
|
||||
]
|
||||
|
||||
def create(self, validated_data):
|
||||
with transaction.atomic():
|
||||
return IncomeMessage.objects.create(
|
||||
message=validated_data.get('message'),
|
||||
file=validated_data.get('file'),
|
||||
user=self.context.get('user'),
|
||||
chat=validated_data.get('chat'),
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user