@@ -50,6 +50,8 @@ urlpatterns += [ |
||
50 | 50 |
url(r'^msg/list$', message_views.message_list_api, name='message_list_api'), # 消息列表 |
51 | 51 |
url(r'^msg/list/(?P<msg_type>\w+)$', message_views.message_type_list_api, name='message_type_list_api'), # 分类消息列表 |
52 | 52 |
url(r'^msg/read$', message_views.message_read_api, name='message_read_api'), # 消息读取 |
53 |
+ url(r'^msg/delete$', message_views.message_delete_api, name='message_delete_api'), # 消息删除 |
|
54 |
+ url(r'^msg/delete/(?P<msg_type>\w+)$', message_views.message_delete_api, name='message_type_delete_api'), # 消息删除 |
|
53 | 55 |
] |
54 | 56 |
|
55 | 57 |
# 控制器相关 |
@@ -26,6 +26,7 @@ def message_list_api(request): |
||
26 | 26 |
type_messages = UserMessageInfo.objects.filter( |
27 | 27 |
to_uid=user_id, |
28 | 28 |
msg_type=message['msg_type'], |
29 |
+ status=True, |
|
29 | 30 |
).order_by( |
30 | 31 |
'-pk' |
31 | 32 |
)[:settings.MESSAGE_NUM_PER_PAGE] |
@@ -56,6 +57,7 @@ def message_type_list_api(request, msg_type): |
||
56 | 57 |
type_messages = UserMessageInfo.objects.filter( |
57 | 58 |
to_uid=user_id, |
58 | 59 |
msg_type=msg_type, |
60 |
+ status=True, |
|
59 | 61 |
).order_by( |
60 | 62 |
'-pk' |
61 | 63 |
) |
@@ -81,15 +83,30 @@ def message_read_api(request): |
||
81 | 83 |
pk = int(request.POST.get('pk', 0) or request.GET.get('pk', 0) or -1) |
82 | 84 |
user_id = request.POST.get('user_id', '') or request.GET.get('user_id', '') |
83 | 85 |
|
84 |
- try: |
|
85 |
- message = UserMessageInfo.objects.get(pk=pk, to_uid=user_id) |
|
86 |
- except UserMessageInfo.DoesNotExist: |
|
87 |
- return response(MessageStatusCode.MESSAGE_NOT_FOUND) |
|
88 |
- |
|
89 |
- message.read = True |
|
90 |
- message.save() |
|
86 |
+ UserMessageInfo.objects.filter(pk=pk, to_uid=user_id).update(read=True) |
|
91 | 87 |
|
92 | 88 |
return JsonResponse({ |
93 | 89 |
'status': 200, |
94 | 90 |
'message': u'已读消息成功', |
95 | 91 |
}) |
92 |
+ |
|
93 |
+ |
|
94 |
+def message_delete_api(request, msg_type=None): |
|
95 |
+ """ |
|
96 |
+ 消息删除 |
|
97 |
+ :param request: |
|
98 |
+ :param msg_type: |
|
99 |
+ :return: |
|
100 |
+ """ |
|
101 |
+ user_id = request.POST.get('user_id', '') or request.GET.get('user_id', '') |
|
102 |
+ |
|
103 |
+ if msg_type: |
|
104 |
+ UserMessageInfo.objects.filter(to_uid=user_id, msg_type=msg_type).update(status=False) |
|
105 |
+ else: |
|
106 |
+ pk = int(request.POST.get('pk', 0) or request.GET.get('pk', 0) or -1) |
|
107 |
+ UserMessageInfo.objects.filter(pk=pk, to_uid=user_id).update(status=False) |
|
108 |
+ |
|
109 |
+ return JsonResponse({ |
|
110 |
+ 'status': 200, |
|
111 |
+ 'message': u'消息删除成功', |
|
112 |
+ }) |