Compare commits
	
		
			No commits in common. "3e222fb305d9f2642e9da8273d179aeffd874d69" and "3e969de57f493dd1bbc2fb68b3b66d72ec2c9071" have entirely different histories.
		
	
	
		
			3e222fb305
			...
			3e969de57f
		
	
		
| @ -1,19 +0,0 @@ | ||||
| # Generated by Django 4.2 on 2023-08-08 05:52 | ||||
| 
 | ||||
| from django.db import migrations, models | ||||
| import django.db.models.deletion | ||||
| 
 | ||||
| 
 | ||||
| class Migration(migrations.Migration): | ||||
| 
 | ||||
|     dependencies = [ | ||||
|         ('collector', '0002_alter_ticket_options_alter_archive_size_and_more'), | ||||
|     ] | ||||
| 
 | ||||
|     operations = [ | ||||
|         migrations.AlterField( | ||||
|             model_name='archive', | ||||
|             name='ticket', | ||||
|             field=models.ForeignKey(db_column='ticket_number', on_delete=django.db.models.deletion.CASCADE, to='collector.ticket', to_field='number'), | ||||
|         ), | ||||
|     ] | ||||
| @ -32,12 +32,7 @@ class Archive(models.Model): | ||||
|     sha1 = models.CharField(max_length=1024, editable=False) | ||||
|     time_create = models.DateTimeField(auto_now_add=True) | ||||
|     time_update = models.DateTimeField(auto_now=True) | ||||
|     ticket = models.ForeignKey( | ||||
|         'Ticket', | ||||
|         to_field='number', | ||||
|         db_column='ticket_number', | ||||
|         on_delete=models.CASCADE | ||||
|     ) | ||||
|     ticket = models.ForeignKey('Ticket', on_delete=models.CASCADE) | ||||
|     user = models.ForeignKey(User, on_delete=models.CASCADE) | ||||
| 
 | ||||
|     def save(self, *args, **kwargs): | ||||
|  | ||||
| @ -4,14 +4,21 @@ from .models import Archive, Ticket | ||||
| 
 | ||||
| 
 | ||||
| class ArchiveUploadSerializer(serializers.ModelSerializer): | ||||
|     ticket_number = serializers.ReadOnlyField(source='ticket.number') | ||||
| 
 | ||||
|     class Meta: | ||||
|         model = Archive | ||||
|         fields = ['file', 'ticket'] | ||||
|         fields = ['file', 'ticket', 'ticket_number'] | ||||
| 
 | ||||
|     def to_internal_value(self, data): | ||||
|         try: | ||||
|             ticket = Ticket.objects.get(number=data['ticket']) | ||||
|             data['ticket'] = ticket.id | ||||
|             return super().to_internal_value(data) | ||||
|         except Exception: | ||||
|             return super().to_internal_value(data) | ||||
| 
 | ||||
| class TicketSerializer(serializers.ModelSerializer): | ||||
| 
 | ||||
|     class Meta: | ||||
|         model = Ticket | ||||
|         fields = ['number', 'platform', 'note'] | ||||
|     def to_representation(self, instance): | ||||
|         data = super().to_representation(instance) | ||||
|         data['ticket'] = data.pop('ticket_number') | ||||
|         return data | ||||
|  | ||||
| @ -8,8 +8,6 @@ app_name = 'collector' | ||||
| 
 | ||||
| router = routers.DefaultRouter() | ||||
| router.register(r'archives', views.ArchiveUploadViewSet) | ||||
| router.register(r'tickets/create', views.TicketCreateViewSet) | ||||
| 
 | ||||
| 
 | ||||
| urlpatterns = [ | ||||
| 
 | ||||
| @ -73,6 +71,7 @@ urlpatterns = [ | ||||
|         name='ajax_delete_ticket' | ||||
|     ), | ||||
| 
 | ||||
| 
 | ||||
|     # ▄▀█ █▀█ █ | ||||
|     # █▀█ █▀▀ █ | ||||
|     # -- -- -- | ||||
|  | ||||
| @ -16,7 +16,7 @@ from .models import Archive, Ticket | ||||
| from .forms import TicketForm | ||||
| from .utils import PageTitleViewMixin, is_ajax | ||||
| 
 | ||||
| from .serializers import ArchiveUploadSerializer, TicketSerializer | ||||
| from .serializers import ArchiveUploadSerializer | ||||
| 
 | ||||
| 
 | ||||
| class ArchiveHandlerView(LoginRequiredMixin, SingleObjectMixin, generic.View): | ||||
| @ -180,12 +180,3 @@ class ArchiveUploadViewSet(mixins.CreateModelMixin, GenericViewSet): | ||||
| 
 | ||||
|     def perform_create(self, serializer): | ||||
|         serializer.save(user=self.request.user) | ||||
| 
 | ||||
| 
 | ||||
| class TicketCreateViewSet(mixins.CreateModelMixin, GenericViewSet): | ||||
|     queryset = Ticket.objects.order_by('-time_create') | ||||
|     serializer_class = TicketSerializer | ||||
|     # permission_classes = [permissions.IsAuthenticatedOrReadOnly] | ||||
| 
 | ||||
|     def perform_create(self, serializer): | ||||
|         serializer.save(user=self.request.user) | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user