push dam project on mnpc new git repo
This commit is contained in:
@@ -82,6 +82,30 @@ class TagBatch(BaseModel):
|
|||||||
return super(TagBatch, self).save(*args, **kwargs)
|
return super(TagBatch, self).save(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
|
class TagDistribution(BaseModel):
|
||||||
|
batch = models.ForeignKey(
|
||||||
|
TagBatch,
|
||||||
|
on_delete=models.CASCADE,
|
||||||
|
related_name='distributions',
|
||||||
|
null=True
|
||||||
|
)
|
||||||
|
tag = models.ManyToManyField(Tag, related_name='distributions')
|
||||||
|
organization = models.ForeignKey(
|
||||||
|
Organization,
|
||||||
|
on_delete=models.CASCADE,
|
||||||
|
related_name='distributions',
|
||||||
|
null=True
|
||||||
|
)
|
||||||
|
species_code = models.IntegerField(default=0)
|
||||||
|
distributed_number = models.IntegerField(default=0)
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f'{self.id}-{self.distributed_number}-{self.organization.name}'
|
||||||
|
|
||||||
|
def save(self, *args, **kwargs):
|
||||||
|
return super(TagDistribution, self).save(*args, **kwargs)
|
||||||
|
|
||||||
|
|
||||||
class TagAssignment(BaseModel):
|
class TagAssignment(BaseModel):
|
||||||
organization = models.ForeignKey(
|
organization = models.ForeignKey(
|
||||||
auth_models.Organization,
|
auth_models.Organization,
|
||||||
|
|||||||
@@ -311,3 +311,15 @@ class TagBatchViewSet(BaseViewSet, SoftDeleteMixin, DynamicSearchMixin, viewsets
|
|||||||
serializer = self.get_serializer(page, many=True)
|
serializer = self.get_serializer(page, many=True)
|
||||||
return self.get_paginated_response(serializer.data)
|
return self.get_paginated_response(serializer.data)
|
||||||
return Response(self.serializer_class(queryset).data)
|
return Response(self.serializer_class(queryset).data)
|
||||||
|
|
||||||
|
def destroy(self, request, pk=None, *args, **kwargs):
|
||||||
|
"""
|
||||||
|
soft delete batch with tag items
|
||||||
|
"""
|
||||||
|
|
||||||
|
batch = self.get_object()
|
||||||
|
batch.soft_delete()
|
||||||
|
for tag in batch.tag.all():
|
||||||
|
tag.soft_delete()
|
||||||
|
|
||||||
|
return Response(status=status.HTTP_200_OK)
|
||||||
|
|||||||
Reference in New Issue
Block a user