diff --git a/apps/ofm/services.py b/apps/ofm/services.py index 7e95286c..45ce61a4 100644 --- a/apps/ofm/services.py +++ b/apps/ofm/services.py @@ -43,6 +43,18 @@ def bind_lendingseal(ticket: Ticket, transition, new_ticket_data: dict): ins.ticket = ticket ins.save() +def lending_save_ticket_data(ticket: Ticket, new_ticket_data: dict, **kwargs): + try: + obj = LendingSeal.objects.get(id=new_ticket_data['t_id']) + except LendingSeal.DoesNotExist: + raise ParseError("Publicity t_id 不存在") + data_save = {k: v for k, v in new_ticket_data.items() if k not in ['t_model', 't_id']} + + for k, v in data_save.items(): + setattr(obj, k, v) + obj.save() + + def bind_vehicle(ticket: Ticket, transition, new_ticket_data: dict): ins = Vehicle.objects.get(id=new_ticket_data['t_id']) ticket_data = ticket.ticket_data @@ -57,11 +69,16 @@ def bind_vehicle(ticket: Ticket, transition, new_ticket_data: dict): ins.ticket = ticket ins.save() +def vehicle_save_ticket_data(ticket: Ticket, new_ticket_data: dict, **kwargs): + try: + obj = Vehicle.objects.get(id=new_ticket_data['t_id']) + except Vehicle.DoesNotExist: + raise ParseError("Publicity t_id 不存在") + data_save = {k: v for k, v in new_ticket_data.items() if k not in ['t_model', 't_id']} -# def update_vehicle_endkm(ticket: Ticket, transition, new_ticket_data: dict): -# ins = Vehicle.objects.get(id=new_ticket_data['t_id']) -# ins.end_km = new_ticket_data['end_km'] -# ins.save() + for k, v in data_save.items(): + setattr(obj, k, v) + obj.save() def bind_file(ticket: Ticket, transition, new_ticket_data: dict): ins = BorrowRecord.objects.get(id=new_ticket_data['t_id']) @@ -76,7 +93,17 @@ def bind_file(ticket: Ticket, transition, new_ticket_data: dict): if ins.ticket is None: ins.ticket = ticket ins.save() + +def file_save_ticket_data(ticket: Ticket, new_ticket_data: dict, **kwargs): + try: + obj = BorrowRecord.objects.get(id=new_ticket_data['t_id']) + except BorrowRecord.DoesNotExist: + raise ParseError("Publicity t_id 不存在") + data_save = {k: v for k, v in new_ticket_data.items() if k not in ['t_model', 't_id']} + for k, v in data_save.items(): + setattr(obj, k, v) + obj.save() def bind_publicity(ticket: Ticket, transition, new_ticket_data: dict): ins = Publicity.objects.get(id=new_ticket_data['t_id']) @@ -92,7 +119,6 @@ def bind_publicity(ticket: Ticket, transition, new_ticket_data: dict): ins.ticket = ticket ins.save() - def save_ticket_data(ticket: Ticket, new_ticket_data: dict, **kwargs): try: obj = Publicity.objects.get(id=new_ticket_data['t_id']) diff --git a/apps/ofm/views.py b/apps/ofm/views.py index 2a09878f..f59a7876 100644 --- a/apps/ofm/views.py +++ b/apps/ofm/views.py @@ -156,7 +156,7 @@ class FileborrowViewSet(CustomModelViewSet): queryset = BorrowRecord.objects.all() serializer_class = BorrowRecordSerializer filterset_class = BorrowRecordFilter - ordering = ["create_time"] + ordering = ["-create_time"] class PublicityViewSet(CustomModelViewSet):