diff --git a/AuthApp/js_views.py b/AuthApp/js_views.py index 770b269..12277d5 100644 --- a/AuthApp/js_views.py +++ b/AuthApp/js_views.py @@ -49,7 +49,7 @@ def support_tickets_ajax(request): tickets = MsgGroup.objects.filter(enable=True, owner=request.user) Dict = { - 'tickets': tickets + 'tickets': tickets, } tpl_name = 'blocks/profile/b_support_tickets.html' diff --git a/BaseModels/base_models.py b/BaseModels/base_models.py index e1140a0..15f9475 100644 --- a/BaseModels/base_models.py +++ b/BaseModels/base_models.py @@ -53,8 +53,9 @@ class BaseModel(models.Model): return self.json_data - def save(self, *args, **kwargs): - self.modifiedDT = datetime.now() + def save(self, not_change_modifiedDT=False, *args, **kwargs): + if not not_change_modifiedDT: + self.modifiedDT = datetime.now() super().save(*args, **kwargs) class Meta: diff --git a/ChatServiceApp/funcs.py b/ChatServiceApp/funcs.py index 10b6572..7e74b52 100644 --- a/ChatServiceApp/funcs.py +++ b/ChatServiceApp/funcs.py @@ -1,5 +1,9 @@ from .models import * +def get_messages_for_ticket(ticket): + return ticket.rel_messages_for_group.filter(enable=True).order_by('-modifiedDT') + + def get_ticketsDict_for_staff(user): Dict = { 'tickets_wo_manager': get_tickets_wo_manager(), diff --git a/ChatServiceApp/js_views.py b/ChatServiceApp/js_views.py index 8612e13..60109b6 100644 --- a/ChatServiceApp/js_views.py +++ b/ChatServiceApp/js_views.py @@ -50,13 +50,14 @@ def send_msg_ajax(request): kwargs = { 'sender': ticket.owner, 'receiver': ticket.manager, - 'text': ticket.text + 'text': ticket.text, } if ticket: kwargs.update({'group': ticket}) msg = Message.objects.create(**kwargs) + Message.objects.filter(id=msg.id).update(modifiedDT=ticket.createDT, createDT=ticket.createDT) # ------------ kwargs = { @@ -72,8 +73,10 @@ def send_msg_ajax(request): res_Dict.update({ - 'ticket': ticket + 'ticket': ticket, + 'messages': get_messages_for_ticket(ticket) }) + res_Dict.update(get_ticketsDict_for_staff(request.user)) tpl_name = 'blocks/profile/b_support_chat.html' @@ -97,10 +100,11 @@ def support_show_chat_by_ticket_ajax(request): data = json.loads(request.body) - obj = MsgGroup.objects.get(id=data['ticket_id']) + ticket = MsgGroup.objects.get(id=data['ticket_id']) Dict = { - 'ticket': obj + 'ticket': ticket, + 'messages': get_messages_for_ticket(ticket) } Dict.update(get_ticketsDict_for_staff(request.user)) @@ -149,13 +153,14 @@ def create_ticket_ajax(request): html = render_to_string('blocks/profile/b_create_ticket.html', Dict, request=request) return JsonResponse({'html': html}, status=400) - obj = form.save(commit=False) - obj.owner = request.user - obj.enable = True - obj.save() + ticket = form.save(commit=False) + ticket.owner = request.user + ticket.enable = True + ticket.save() Dict = { - 'ticket': obj + 'ticket': ticket, + 'messages': get_messages_for_ticket(ticket) } diff --git a/templates/blocks/profile/b_support_chat.html b/templates/blocks/profile/b_support_chat.html index e9bfb71..c160265 100644 --- a/templates/blocks/profile/b_support_chat.html +++ b/templates/blocks/profile/b_support_chat.html @@ -29,12 +29,12 @@ {% endif %}