Showing
2 changed files
with
21 additions
and
8 deletions
@@ -24,24 +24,32 @@ class EdictoViewSet(mixins.CreateModelMixin, | @@ -24,24 +24,32 @@ class EdictoViewSet(mixins.CreateModelMixin, | ||
24 | filterset_class = EdictoFilter | 24 | filterset_class = EdictoFilter |
25 | queryset = Edicto.objects.all() | 25 | queryset = Edicto.objects.all() |
26 | ordering_fields = ('fecha_creacion', 'id') | 26 | ordering_fields = ('fecha_creacion', 'id') |
27 | - ordering = ('fecha_publicacion', 'id',) | 27 | + ordering = ('fecha_publicacion',) |
28 | lookup_field = 'uuid' | 28 | lookup_field = 'uuid' |
29 | 29 | ||
30 | def perform_create(self, serializer): | 30 | def perform_create(self, serializer): |
31 | edicto = self.request.data.get('cuerpo_edicto') | 31 | edicto = self.request.data.get('cuerpo_edicto') |
32 | cantidad_palabras = contador(edicto) | 32 | cantidad_palabras = contador(edicto) |
33 | usuario = self.request.user | 33 | usuario = self.request.user |
34 | - serializer.save(cantidad_palabras=cantidad_palabras, usuario=usuario) | 34 | + serializer.save(cantidad_palabras=cantidad_palabras, |
35 | + usuario=usuario, | ||
36 | + usuario_movimiento=usuario, | ||
37 | + ) | ||
35 | 38 | ||
36 | - @action(detail=True, methods=['put', 'patch']) | 39 | + @action(detail=True, methods=['put']) |
37 | def custom_update(self, request): | 40 | def custom_update(self, request): |
38 | - edicto = request.data.get('cuerpo_edicto') | ||
39 | - cantidad_palabras = contador(edicto) | ||
40 | - | ||
41 | instance = self.get_object() | 41 | instance = self.get_object() |
42 | serializer = self.get_serializer(instance, data=request.data) | 42 | serializer = self.get_serializer(instance, data=request.data) |
43 | serializer.is_valid(raise_exception=True) | 43 | serializer.is_valid(raise_exception=True) |
44 | - serializer.save(cantidad_palabras=cantidad_palabras, fecha_actualizacion=datetime.now()) | 44 | + |
45 | + edicto = request.data.get('cuerpo_edicto') | ||
46 | + cantidad_palabras = contador(edicto) | ||
47 | + usuario = self.request.user | ||
48 | + | ||
49 | + serializer.save(cantidad_palabras=cantidad_palabras, | ||
50 | + fecha_actualizacion=datetime.now(), | ||
51 | + usuario_movimiento=usuario, | ||
52 | + ) | ||
45 | 53 | ||
46 | return Response(serializer.data, status=status.HTTP_200_OK) | 54 | return Response(serializer.data, status=status.HTTP_200_OK) |
47 | 55 |
@@ -10,12 +10,14 @@ from usuario.serializers import UsuarioListaSerializer | @@ -10,12 +10,14 @@ from usuario.serializers import UsuarioListaSerializer | ||
10 | class EdictoSerializer(serializers.ModelSerializer): | 10 | class EdictoSerializer(serializers.ModelSerializer): |
11 | included_serializers = { | 11 | included_serializers = { |
12 | 'usuario': UsuarioListaSerializer, | 12 | 'usuario': UsuarioListaSerializer, |
13 | + 'usuario_movimiento': UsuarioListaSerializer, | ||
13 | } | 14 | } |
14 | 15 | ||
15 | class Meta: | 16 | class Meta: |
16 | model = Edicto | 17 | model = Edicto |
17 | fields = ('uuid', | 18 | fields = ('uuid', |
18 | 'usuario', | 19 | 'usuario', |
20 | + 'usuario_movimiento', | ||
19 | 'estado', | 21 | 'estado', |
20 | 'cuerpo_edicto', | 22 | 'cuerpo_edicto', |
21 | 'cantidad_palabras', | 23 | 'cantidad_palabras', |
@@ -29,7 +31,10 @@ class EdictoSerializer(serializers.ModelSerializer): | @@ -29,7 +31,10 @@ class EdictoSerializer(serializers.ModelSerializer): | ||
29 | 31 | ||
30 | ) | 32 | ) |
31 | 33 | ||
32 | - read_only_fields = ('usuario', 'fecha_publicacion', 'cantidad_palabras', 'fecha_creacion') | 34 | + read_only_fields = ('usuario', 'usuario_movimiento', |
35 | + 'fecha_publicacion', 'cantidad_palabras', | ||
36 | + 'fecha_creacion', | ||
37 | + ) | ||
33 | 38 | ||
34 | def to_representation(self, instance): | 39 | def to_representation(self, instance): |
35 | data = super().to_representation(instance) | 40 | data = super().to_representation(instance) |
-
Please register or login to post a comment