chat v2
command parse add
This commit is contained in:
SDE
2023-08-11 15:32:55 +03:00
parent 589c441c83
commit d873e7bb64
4 changed files with 33 additions and 21 deletions

View File

@@ -45,8 +45,9 @@ def update_chat_ajax(request):
raise Http404 raise Http404
res_Dict = {} res_Dict = {}
msg = None msgs = []
Dict = {} Dict = {}
context_Dict = {}
last_message_modifiedDT = None last_message_modifiedDT = None
@@ -69,46 +70,48 @@ def update_chat_ajax(request):
if 'receiver' in data and data['receiver']: if 'receiver' in data and data['receiver']:
receiver = User.objects.get(id=data['receiver']) receiver = User.objects.get(id=data['receiver'])
res_Dict.update({'cur_receiver': receiver})
if ticket: if ticket:
res_Dict.update({ context_Dict.update({
'ticket': ticket, 'ticket': ticket,
}) })
msgs = get_messages_for_ticket(ticket) msgs = get_messages_for_ticket(ticket)
context_Dict.update({'messages': msgs})
context_Dict = get_ticketsDict_for_staff(request.user) context_Dict = get_ticketsDict_for_staff(request.user)
tickets_list_html = render_to_string( tickets_list_html = render_to_string(
'blocks/profile/b_list_of_tickets_support_chat.html', context_Dict, request=request) 'blocks/profile/b_list_of_tickets_support_chat.html', context_Dict, request=request)
res_Dict.update({'tickets_list_html': tickets_list_html}) res_Dict.update({'tickets_list_html': tickets_list_html})
else: else:
msgs = get_msgs_for_chat_w_users(sender, receiver) # если есть получатель - получаем сообщения чата
if receiver:
msgs = get_msgs_for_chat_w_users(sender, receiver)
context_Dict.update({'messages': msgs})
chat_html = render_to_string(tpl_name, context_Dict, request=request)
res_Dict.update({'chat_html': chat_html})
# получаем правую панель с получателями
receivers = get_chat_receivers_for_user(request.user)
context_Dict.update({'receivers': receivers})
users_list_html = render_to_string( users_list_html = render_to_string(
'blocks/profile/b_list_of_users_messenger.html', res_Dict, request=request) 'blocks/profile/b_list_of_users_messenger.html', context_Dict, request=request)
res_Dict.update({'users_list_html': users_list_html}) res_Dict.update({'users_list_html': users_list_html})
if not msgs or (request.user != msgs[0].receiver) or (not msgs and not last_message_modifiedDT) or (msgs and last_message_modifiedDT and msgs[0].modifiedDT <= last_message_modifiedDT): if not msgs or (request.user != msgs[0].receiver) or (not msgs and not last_message_modifiedDT) or (msgs and last_message_modifiedDT and msgs[0].modifiedDT <= last_message_modifiedDT):
Dict.update({ Dict.update({
'required_beep': False 'required_beep': False
}) })
return JsonResponse(Dict, status=200) return JsonResponse(Dict, status=200)
res_Dict.update({ res_Dict.update({
'messages': msgs,
'cur_receiver': receiver,
# 'modifiedDT': msgs[0].modifiedDT
})
html = render_to_string(tpl_name, res_Dict, request=request)
res_Dict.update({'receivers': get_chat_receivers_for_user(request.user)})
Dict.update({
'html': html,
'required_beep': True, 'required_beep': True,
}) })
return JsonResponse(Dict, status=200) return JsonResponse(res_Dict, status=200)
except Exception as e: except Exception as e:
msg = f'send_msg_ajax Error = {str(e)}' msg = f'send_msg_ajax Error = {str(e)}'

View File

View File

@@ -0,0 +1,9 @@
from django.core.management.base import BaseCommand
from datetime import datetime
from BaseModels.mailSender import techSendMail
from ...funcs import parse_data
class Command(BaseCommand):
def handle(self, *args, **options):
parse_data()