first push

This commit is contained in:
2026-01-18 11:59:48 +03:30
commit 107854bde3
1100 changed files with 291872 additions and 0 deletions

View File

@@ -0,0 +1,66 @@
from rest_framework import serializers
from LiveStock.models import Cooperative, LiveStockRolseProduct
from authentication.serializer.serializer import BankCardSerializer, SystemUserProfileForInspectionSerializer
from authentication.serializers import SystemAddressSerializer
from ticket.serializers import SystemUserProfileForTicketPermissionSerializer
class CooperativeSerializer(serializers.ModelSerializer):
user = SystemUserProfileForInspectionSerializer(read_only=True)
address = SystemAddressSerializer(read_only=True)
user_bank_info = BankCardSerializer(required=False)
class Meta:
model = Cooperative
fields = '__all__'
class CooperativeForSharesSerializer(serializers.ModelSerializer):
user = SystemUserProfileForInspectionSerializer(read_only=True)
class Meta:
model = Cooperative
fields = ['user', 'name']
class CooperativeForAllocationsReportSerializer(serializers.ModelSerializer):
user = SystemUserProfileForInspectionSerializer(read_only=True)
info = serializers.SerializerMethodField('get_info')
class Meta:
model = Cooperative
fields = ['key','user', 'name','info']
def get_info(self, obj):
products = {
"bran":"سبوس",
"barley":"جو",
"soy":"سویا",
"corn":"ذرت",
"sheep_concentrate":"کنسانتره گوسفندی",
"high_cow_concentrate":"کنسانتره گاو شیری پرتولید",
"medium_cow_concentrate":"کنسانتره گاو شیری متوسط",
"fattening_calf_concentrate":"کنسانتره گوساله پرواری",
}
product =products[self.context.get('request').GET['name']]
cooperative_roles = LiveStockRolseProduct.objects.get(cooperative=obj,parent_product__name=product)
total_weight = cooperative_roles.total_weight
total_receipt_weight = cooperative_roles.total_receipt_weight
total_allocated_weight = cooperative_roles.total_allocated_weight
total_remain_weight = cooperative_roles.total_remain_weight
return {
"total_weight": total_weight,
"total_receipt_weight": total_receipt_weight,
"total_allocated_weight": total_allocated_weight,
"total_remain_weight": total_remain_weight,
}
class CooperativeForPosSerializer(serializers.ModelSerializer):
user = SystemUserProfileForTicketPermissionSerializer(read_only=True)
address = SystemAddressSerializer(read_only=True)
class Meta:
model = Cooperative
fields = ['user', 'name', 'address']