add crud for organization
This commit is contained in:
parent
9af96aad1d
commit
bfe9ad0fba
|
@ -205,6 +205,10 @@ class Userprofile(models.Model):
|
||||||
def level1_admin(cls):
|
def level1_admin(cls):
|
||||||
return Userprofile.objects.filter(Q(organization__level__level=1) | Q(organization__level__level=9))
|
return Userprofile.objects.filter(Q(organization__level__level=1) | Q(organization__level__level=9))
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def count(cls, organization_id):
|
||||||
|
return Userprofile.objects.filter(organization_id=organization_id).exclude(admin_status=0).count()
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
if self.is_level1():
|
if self.is_level1():
|
||||||
return '省级管理员%s' % (self.name,)
|
return '省级管理员%s' % (self.name,)
|
||||||
|
@ -254,6 +258,20 @@ class NewMedia(models.Model):
|
||||||
abstract = True
|
abstract = True
|
||||||
ordering = ["-created"]
|
ordering = ["-created"]
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def count(cls, organization_id):
|
||||||
|
t1 = Weixin.objects.exclude(status=0).filter(
|
||||||
|
organization_id=organization_id).count()
|
||||||
|
t2 = Weibo.objects.exclude(status=0).filter(
|
||||||
|
organization_id=organization_id).count()
|
||||||
|
t3 = Toutiao.objects.exclude(status=0).filter(
|
||||||
|
organization_id=organization_id).count()
|
||||||
|
t4 = Douyin.objects.exclude(status=0).filter(
|
||||||
|
organization_id=organization_id).count()
|
||||||
|
t5 = Qita.objects.exclude(status=0).filter(
|
||||||
|
organization_id=organization_id).count()
|
||||||
|
return t1 + t2 + t3 + t4 + t5
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def category_one_count(cls):
|
def category_one_count(cls):
|
||||||
t1 = Weixin.objects.exclude(
|
t1 = Weixin.objects.exclude(
|
||||||
|
|
|
@ -32,6 +32,8 @@ urlpatterns = [
|
||||||
path('medias/admin/my/', views.my_media_admins, name='polls_my_media_admins'),
|
path('medias/admin/my/', views.my_media_admins, name='polls_my_media_admins'),
|
||||||
path('medias/admin/change/', views.media_admin_change,
|
path('medias/admin/change/', views.media_admin_change,
|
||||||
name='polls_media_admin_change'),
|
name='polls_media_admin_change'),
|
||||||
|
path('medias/admin/add/', views.media_admin_add,
|
||||||
|
name='polls_media_admin_add'),
|
||||||
path('medias/admin/delete/', views.media_admin_delete,
|
path('medias/admin/delete/', views.media_admin_delete,
|
||||||
name='polls_media_admin_delete'),
|
name='polls_media_admin_delete'),
|
||||||
path('medias/<str:type>/<str:media_id>/',
|
path('medias/<str:type>/<str:media_id>/',
|
||||||
|
@ -75,6 +77,8 @@ urlpatterns = [
|
||||||
name="polls_organization_districts"),
|
name="polls_organization_districts"),
|
||||||
path('organizations/create/', views.create_organization,
|
path('organizations/create/', views.create_organization,
|
||||||
name='polls_add_organization'),
|
name='polls_add_organization'),
|
||||||
|
path('organizations/delete/', views.delete_organization,
|
||||||
|
name='polls_delete_organization'),
|
||||||
path('messages/list/last/', views.last_messages,
|
path('messages/list/last/', views.last_messages,
|
||||||
name='polls_messages_list_last'),
|
name='polls_messages_list_last'),
|
||||||
path('messages/send/text/', views.send_text_message,
|
path('messages/send/text/', views.send_text_message,
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
from .user import index, status_500, status_401, polls_login, send_code, register_step_one, register_step_two, password_recover_step_one, password_recover_step_two, reset_password, upload_profile
|
from .user import index, status_500, status_401, polls_login, send_code, register_step_one, register_step_two, password_recover_step_one, password_recover_step_two, reset_password, upload_profile
|
||||||
from .notice import notices, notice_top, read_notice, pass_notice, reject_notice, detail_notice, unread_notice_count
|
from .notice import notices, notice_top, read_notice, pass_notice, reject_notice, detail_notice, unread_notice_count
|
||||||
from .media import medias, media_admins, my_medias, create_media, update_media, media_detail, delete_media, media_admin_change, my_media_admins, media_admin_delete
|
from .media import medias, media_admins, my_medias, create_media, update_media, media_detail, delete_media, media_admin_change, my_media_admins, media_admin_delete, media_admin_add
|
||||||
from .news import news_list, news_top, news_detail
|
from .news import news_list, news_top, news_detail
|
||||||
from .monitor import monitor_statistics, monitor_result, media_statistics, city_ranking, monitor_unqualified_result, monitor_unqualified_index
|
from .monitor import monitor_statistics, monitor_result, media_statistics, city_ranking, monitor_unqualified_result, monitor_unqualified_index
|
||||||
from .task import tasks, create_task, create_test_task, get_task
|
from .task import tasks, create_task, create_test_task, get_task
|
||||||
from .group import groups, room, is_level1_or_leve2, group_member, group_manager, group_enter, group_leave, pick_groups
|
from .group import groups, room, is_level1_or_leve2, group_member, group_manager, group_enter, group_leave, pick_groups
|
||||||
from .compartment import compartments
|
from .compartment import compartments
|
||||||
from .organizations import organizations, organization_level, organization_districts, create_organization
|
from .organizations import organizations, organization_level, organization_districts, create_organization, delete_organization
|
||||||
from .message import last_messages, send_text_message, is_read_message, read_message
|
from .message import last_messages, send_text_message, is_read_message, read_message
|
||||||
from .download import download, app_intro, has_update
|
from .download import download, app_intro, has_update
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -4,7 +4,7 @@ from django.views.decorators.csrf import csrf_exempt
|
||||||
from django.core.paginator import Paginator
|
from django.core.paginator import Paginator
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
from dashboard.models import Douyin, NewMedia, Qita, Toutiao, Userprofile, Weibo, Weixin
|
from dashboard.models import Douyin, NewMedia, Organization, Qita, Toutiao, Userprofile, Weibo, Weixin
|
||||||
from polls.decorators import polls_login_required
|
from polls.decorators import polls_login_required
|
||||||
from polls.models import Notice
|
from polls.models import Notice
|
||||||
from django.contrib.auth import get_user_model
|
from django.contrib.auth import get_user_model
|
||||||
|
@ -31,7 +31,7 @@ def media_admins(request):
|
||||||
results = []
|
results = []
|
||||||
for p in profiles:
|
for p in profiles:
|
||||||
result = dict()
|
result = dict()
|
||||||
result['id'] = p.id
|
result['id'] = p.user.id
|
||||||
result['name'] = p.name
|
result['name'] = p.name
|
||||||
result['phone'] = p.user.username
|
result['phone'] = p.user.username
|
||||||
result['adminStatus'] = p.admin_status
|
result['adminStatus'] = p.admin_status
|
||||||
|
@ -64,7 +64,7 @@ def my_media_admins(request):
|
||||||
results = []
|
results = []
|
||||||
for p in profiles:
|
for p in profiles:
|
||||||
result = dict()
|
result = dict()
|
||||||
result['id'] = p.id
|
result['id'] = p.user.id
|
||||||
result['name'] = p.name
|
result['name'] = p.name
|
||||||
result['phone'] = p.user.username
|
result['phone'] = p.user.username
|
||||||
result['adminStatus'] = p.admin_status
|
result['adminStatus'] = p.admin_status
|
||||||
|
@ -81,6 +81,7 @@ def create_media(request):
|
||||||
return HttpResponse(status=405)
|
return HttpResponse(status=405)
|
||||||
f = request.FILES.get('file')
|
f = request.FILES.get('file')
|
||||||
organization_id = request.POST.get('organization_id', o.id)
|
organization_id = request.POST.get('organization_id', o.id)
|
||||||
|
organization = Organization.objects.get(id=organization_id)
|
||||||
category = request.POST.get('category')
|
category = request.POST.get('category')
|
||||||
if not category:
|
if not category:
|
||||||
return JsonResponse({'status': 'error', 'message': '类型错误'})
|
return JsonResponse({'status': 'error', 'message': '类型错误'})
|
||||||
|
@ -96,7 +97,7 @@ def create_media(request):
|
||||||
attention = request.POST.get('attention', '')
|
attention = request.POST.get('attention', '')
|
||||||
remark = request.POST.get('remark', '')
|
remark = request.POST.get('remark', '')
|
||||||
model_name = ''
|
model_name = ''
|
||||||
status = 2 if o.is_direct() else 1
|
status = 2 if organization.is_direct() else 1
|
||||||
|
|
||||||
if category == 'weixin':
|
if category == 'weixin':
|
||||||
model_name = 'Weixin'
|
model_name = 'Weixin'
|
||||||
|
@ -120,7 +121,7 @@ def create_media(request):
|
||||||
instance = Qita(code=code, qitaid=media_id, alias=alias,
|
instance = Qita(code=code, qitaid=media_id, alias=alias,
|
||||||
image=f, status=status, organization_id=organization_id, attention=attention, remark=remark)
|
image=f, status=status, organization_id=organization_id, attention=attention, remark=remark)
|
||||||
instance.save()
|
instance.save()
|
||||||
if o.is_direct():
|
if organization.is_direct():
|
||||||
admins = Userprofile.level1_admin()
|
admins = Userprofile.level1_admin()
|
||||||
content = '%s创建了新媒体,请审核' % (profile,)
|
content = '%s创建了新媒体,请审核' % (profile,)
|
||||||
phones = []
|
phones = []
|
||||||
|
@ -138,7 +139,7 @@ def create_media(request):
|
||||||
Notice.create_reply_notice(
|
Notice.create_reply_notice(
|
||||||
a.user.id, content, 'dashboard', model_name, 'status', instance.id, '2', '0')
|
a.user.id, content, 'dashboard', model_name, 'status', instance.id, '2', '0')
|
||||||
send_tnps(phones, '审核', content)
|
send_tnps(phones, '审核', content)
|
||||||
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': organization_id}}, safe=False)
|
return JsonResponse({'status': 'success', 'message': {'title': organization.name, 'organizationId': organization_id}}, safe=False)
|
||||||
|
|
||||||
|
|
||||||
@csrf_exempt
|
@csrf_exempt
|
||||||
|
@ -162,19 +163,24 @@ def update_media(request):
|
||||||
if category == 'weixin':
|
if category == 'weixin':
|
||||||
instance = Weixin.objects.get(pk=media_id)
|
instance = Weixin.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.weixinid
|
result['media_id'] = instance.weixinid
|
||||||
|
result['type'] = '微信'
|
||||||
|
|
||||||
elif category == 'weibo':
|
elif category == 'weibo':
|
||||||
instance = Weibo.objects.get(pk=media_id)
|
instance = Weibo.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.weiboid
|
result['media_id'] = instance.weiboid
|
||||||
|
result['type'] = '微博'
|
||||||
elif category == 'toutiao':
|
elif category == 'toutiao':
|
||||||
instance = Toutiao.objects.get(pk=media_id)
|
instance = Toutiao.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.toutiaoid
|
result['media_id'] = instance.toutiaoid
|
||||||
|
result['type'] = '头条'
|
||||||
elif category == 'douyin':
|
elif category == 'douyin':
|
||||||
instance = Douyin.objects.get(pk=media_id)
|
instance = Douyin.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.douyinid
|
result['media_id'] = instance.douyinid
|
||||||
|
result['type'] = '抖音'
|
||||||
else:
|
else:
|
||||||
instance = Qita.objects.get(pk=media_id)
|
instance = Qita.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.qitaid
|
result['media_id'] = instance.qitaid
|
||||||
|
result['type'] = instance.type
|
||||||
setattr(instance, name, value)
|
setattr(instance, name, value)
|
||||||
instance.save(update_fields=[name])
|
instance.save(update_fields=[name])
|
||||||
admins = []
|
admins = []
|
||||||
|
@ -183,13 +189,13 @@ def update_media(request):
|
||||||
u['id'] = admin.user.id
|
u['id'] = admin.user.id
|
||||||
u['name'] = admin.name
|
u['name'] = admin.name
|
||||||
u['phone'] = admin.user.username
|
u['phone'] = admin.user.username
|
||||||
|
u['adminStatus'] = admin.admin_status
|
||||||
admins.append(u)
|
admins.append(u)
|
||||||
|
|
||||||
result['id'] = instance.id
|
result['id'] = instance.id
|
||||||
result['code'] = instance.code
|
result['code'] = instance.code
|
||||||
result['alias'] = instance.alias
|
result['alias'] = instance.alias
|
||||||
result['status'] = instance.status
|
result['status'] = instance.status
|
||||||
result['type'] = instance.type
|
|
||||||
result['attention'] = instance.attention
|
result['attention'] = instance.attention
|
||||||
result['remark'] = instance.remark
|
result['remark'] = instance.remark
|
||||||
result['organization'] = instance.organization.name
|
result['organization'] = instance.organization.name
|
||||||
|
@ -248,7 +254,6 @@ def delete_media(request):
|
||||||
if request.method == 'GET':
|
if request.method == 'GET':
|
||||||
return HttpResponse(status=405)
|
return HttpResponse(status=405)
|
||||||
profile = request.user.userprofile_set.first()
|
profile = request.user.userprofile_set.first()
|
||||||
o = profile.organization
|
|
||||||
category = request.POST.get('category')
|
category = request.POST.get('category')
|
||||||
if not category:
|
if not category:
|
||||||
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
||||||
|
@ -276,7 +281,7 @@ def delete_media(request):
|
||||||
model_name = 'Qita'
|
model_name = 'Qita'
|
||||||
instance = Qita.objects.get(pk=media_id)
|
instance = Qita.objects.get(pk=media_id)
|
||||||
result['media_id'] = instance.qitaid
|
result['media_id'] = instance.qitaid
|
||||||
if o.is_direct():
|
if instance.organization.is_direct():
|
||||||
instance.status = 5
|
instance.status = 5
|
||||||
instance.save()
|
instance.save()
|
||||||
managers = Userprofile.level1_admin()
|
managers = Userprofile.level1_admin()
|
||||||
|
@ -298,7 +303,7 @@ def delete_media(request):
|
||||||
Notice.create_reply_notice(
|
Notice.create_reply_notice(
|
||||||
a.user.id, content, 'dashboard', model_name, 'status', instance.id, '5', '3')
|
a.user.id, content, 'dashboard', model_name, 'status', instance.id, '5', '3')
|
||||||
send_tnps(phones, '审核', content)
|
send_tnps(phones, '审核', content)
|
||||||
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}}, safe=False)
|
return JsonResponse({'status': 'success', 'message': {'title': instance.organization.name, 'organizationId': instance.organization.id}}, safe=False)
|
||||||
|
|
||||||
|
|
||||||
@csrf_exempt
|
@csrf_exempt
|
||||||
|
@ -307,6 +312,7 @@ def media_admin_change(request):
|
||||||
if request.method == 'GET':
|
if request.method == 'GET':
|
||||||
return HttpResponse(status=405)
|
return HttpResponse(status=405)
|
||||||
id = request.POST.get('id')
|
id = request.POST.get('id')
|
||||||
|
print(id)
|
||||||
if not id:
|
if not id:
|
||||||
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
||||||
name = request.POST.get('name')
|
name = request.POST.get('name')
|
||||||
|
@ -328,8 +334,9 @@ def media_admin_change(request):
|
||||||
p = Userprofile.objects.create(
|
p = Userprofile.objects.create(
|
||||||
user=obj, name=name, organization=o, admin_status=2)
|
user=obj, name=name, organization=o, admin_status=2)
|
||||||
else:
|
else:
|
||||||
obj.admin_status = 2
|
p = Userprofile.objects.filter(user=obj).first()
|
||||||
obj.save()
|
p.admin_status = 2
|
||||||
|
p.save()
|
||||||
profile.admin_status = 5
|
profile.admin_status = 5
|
||||||
profile.save()
|
profile.save()
|
||||||
managers = Userprofile.level1_admin()
|
managers = Userprofile.level1_admin()
|
||||||
|
@ -348,8 +355,9 @@ def media_admin_change(request):
|
||||||
p = Userprofile.objects.create(
|
p = Userprofile.objects.create(
|
||||||
user=obj, name=name, organization=o, admin_status=1)
|
user=obj, name=name, organization=o, admin_status=1)
|
||||||
else:
|
else:
|
||||||
obj.admin_status = 1
|
p = Userprofile.objects.filter(user=obj).first()
|
||||||
obj.save()
|
p.admin_status = 2
|
||||||
|
p.save()
|
||||||
profile.admin_status = 4
|
profile.admin_status = 4
|
||||||
profile.save()
|
profile.save()
|
||||||
managers = Userprofile.level2_admin(o.cities)
|
managers = Userprofile.level2_admin(o.cities)
|
||||||
|
@ -363,6 +371,67 @@ def media_admin_change(request):
|
||||||
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
||||||
|
|
||||||
|
|
||||||
|
@csrf_exempt
|
||||||
|
@polls_login_required
|
||||||
|
def media_admin_add(request):
|
||||||
|
if request.method == 'GET':
|
||||||
|
return HttpResponse(status=405)
|
||||||
|
organization_id = request.POST.get('organization_id')
|
||||||
|
if not organization_id:
|
||||||
|
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
||||||
|
name = request.POST.get('name')
|
||||||
|
if not name:
|
||||||
|
return JsonResponse({'status': 'error', 'message': '姓名不能为空'})
|
||||||
|
phone = request.POST.get('phone')
|
||||||
|
if not phone:
|
||||||
|
return JsonResponse({'status': 'error', 'message': '手机号不能为空'})
|
||||||
|
u = request.user
|
||||||
|
operator = Userprofile.objects.filter(user=u).first()
|
||||||
|
|
||||||
|
o = Organization.objects.get(id=organization_id)
|
||||||
|
UserModel = get_user_model()
|
||||||
|
|
||||||
|
if o.is_direct(): # 如果是省直
|
||||||
|
obj, created = UserModel.objects.get_or_create(
|
||||||
|
username=phone, last_login=datetime.now())
|
||||||
|
if created:
|
||||||
|
p = Userprofile.objects.create(
|
||||||
|
user=obj, name=name, organization=o, admin_status=2)
|
||||||
|
else:
|
||||||
|
p = Userprofile.objects.filter(user=obj).first()
|
||||||
|
p.admin_status = 2
|
||||||
|
p.save()
|
||||||
|
managers = Userprofile.level1_admin()
|
||||||
|
content = '%s申请添加管理员,请审核' % (operator,)
|
||||||
|
phones = []
|
||||||
|
for a in managers:
|
||||||
|
phones.append(a.user.username)
|
||||||
|
Notice.create_reply_notice(
|
||||||
|
a.user.id, content, 'dashboard', 'Userprofile', 'admin_status', o.id, '3', '0')
|
||||||
|
send_tnps(phones, '审核', content)
|
||||||
|
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
||||||
|
else:
|
||||||
|
obj, created = UserModel.objects.get_or_create(
|
||||||
|
username=phone, last_login=datetime.now())
|
||||||
|
if created:
|
||||||
|
p = Userprofile.objects.create(
|
||||||
|
user=obj, name=name, organization=o, admin_status=1)
|
||||||
|
else:
|
||||||
|
p = Userprofile.objects.filter(user=obj).first()
|
||||||
|
p.admin_status = 1
|
||||||
|
p.save()
|
||||||
|
|
||||||
|
managers = Userprofile.level2_admin(o.cities)
|
||||||
|
content = '%s申请添加管理员,请审核' % (operator,)
|
||||||
|
phones = []
|
||||||
|
for a in managers:
|
||||||
|
phones.append(a.user.username)
|
||||||
|
Notice.create_reply_notice(
|
||||||
|
a.user.id, content, 'dashboard', 'Userprofile', 'admin_status', o.id, '2', '0')
|
||||||
|
send_tnps(phones, '审核', content)
|
||||||
|
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
||||||
|
|
||||||
|
|
||||||
@csrf_exempt
|
@csrf_exempt
|
||||||
@polls_login_required
|
@polls_login_required
|
||||||
def media_admin_delete(request):
|
def media_admin_delete(request):
|
||||||
|
|
|
@ -2,7 +2,7 @@ from polls.utils import send_tnps
|
||||||
from polls.models import Notice
|
from polls.models import Notice
|
||||||
from django.http import HttpResponse, JsonResponse
|
from django.http import HttpResponse, JsonResponse
|
||||||
from django.shortcuts import render
|
from django.shortcuts import render
|
||||||
from dashboard.models import Area_code_2020, Organization, Userprofile
|
from dashboard.models import Area_code_2020, NewMedia, Organization, Userprofile
|
||||||
from django.http import JsonResponse
|
from django.http import JsonResponse
|
||||||
|
|
||||||
from django.views.decorators.csrf import csrf_exempt
|
from django.views.decorators.csrf import csrf_exempt
|
||||||
|
@ -88,16 +88,16 @@ def create_organization(request):
|
||||||
return JsonResponse({'status': 'error', 'message': '名称不能为空'})
|
return JsonResponse({'status': 'error', 'message': '名称不能为空'})
|
||||||
if Organization.objects.filter(name=name).exists():
|
if Organization.objects.filter(name=name).exists():
|
||||||
return JsonResponse({'status': 'error', 'message': '名称已经存在'})
|
return JsonResponse({'status': 'error', 'message': '名称已经存在'})
|
||||||
province = request.POST.get('province')
|
province = request.POST.get('province', '')
|
||||||
cities = request.POST.get('cities')
|
cities = request.POST.get('cities', '')
|
||||||
district = request.POST.get('district')
|
district = request.POST.get('district', '')
|
||||||
directly = '否'
|
directly = '否'
|
||||||
admin_status = 1
|
admin_status = 1
|
||||||
if (not cities) and (not district):
|
if (not cities) and (not district):
|
||||||
directly = '是'
|
directly = '是'
|
||||||
admin_status = 2
|
admin_status = 2
|
||||||
o = Organization.objects.create(name=name, province=province, cities=cities, district=district, directly=directly,
|
o = Organization.objects.create(name=name, province=province, cities=cities, district=district, directly=directly,
|
||||||
image='danweimoren.jpg', status='1', level_id='69be9ef4-b7b7-4049-a86e-7083bee40f0e', admin_status=admin_status)
|
image='danweimoren.jpg', status='1', level_id='69be9ef4-b7b7-4049-a86e-7083bee40f0e', admin_status=admin_status)
|
||||||
if o.is_direct():
|
if o.is_direct():
|
||||||
admins = Userprofile.level1_admin()
|
admins = Userprofile.level1_admin()
|
||||||
content = '%s创建了机构,请审核' % (profile,)
|
content = '%s创建了机构,请审核' % (profile,)
|
||||||
|
@ -116,4 +116,43 @@ def create_organization(request):
|
||||||
Notice.create_reply_notice(
|
Notice.create_reply_notice(
|
||||||
a.user.id, content, 'dashboard', 'Organization', 'admin_status', o.id, '2', '0')
|
a.user.id, content, 'dashboard', 'Organization', 'admin_status', o.id, '2', '0')
|
||||||
send_tnps(phones, '审核', content)
|
send_tnps(phones, '审核', content)
|
||||||
return JsonResponse({'status': 'success'})
|
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
||||||
|
|
||||||
|
|
||||||
|
@csrf_exempt
|
||||||
|
@polls_login_required
|
||||||
|
def delete_organization(request):
|
||||||
|
if request.method == 'GET':
|
||||||
|
return HttpResponse(status=405)
|
||||||
|
profile = request.user.userprofile_set.first()
|
||||||
|
id = request.POST.get('id')
|
||||||
|
if not id:
|
||||||
|
return JsonResponse({'status': 'error', 'message': '参数错误'})
|
||||||
|
o = Organization.objects.get(id=id)
|
||||||
|
count1 = NewMedia.count(o.id)
|
||||||
|
count2 = Userprofile.count(o.id)
|
||||||
|
print(count1, count2)
|
||||||
|
if count1 != 0 or count2 != 0:
|
||||||
|
return JsonResponse({'status': 'error', 'message': '机构下有新媒体或管理未注销,无法删除'})
|
||||||
|
if o.is_direct():
|
||||||
|
o.admin_status = 5
|
||||||
|
o.save()
|
||||||
|
admins = Userprofile.level1_admin()
|
||||||
|
content = '%s注销了机构,请审核' % (profile,)
|
||||||
|
phones = []
|
||||||
|
for a in admins:
|
||||||
|
phones.append(a.user.username)
|
||||||
|
Notice.create_reply_notice(
|
||||||
|
a.user.id, content, 'dashboard', 'Organization', 'admin_status', o.id, '3', '0')
|
||||||
|
send_tnps(phones, '审核', content)
|
||||||
|
else:
|
||||||
|
o.admin_status = 4
|
||||||
|
admins = Userprofile.level2_admin(o.cities)
|
||||||
|
content = '%s注销了机构,请审核' % (profile,)
|
||||||
|
phones = []
|
||||||
|
for a in admins:
|
||||||
|
phones.append(a.user.username)
|
||||||
|
Notice.create_reply_notice(
|
||||||
|
a.user.id, content, 'dashboard', 'Organization', 'admin_status', o.id, '2', '0')
|
||||||
|
send_tnps(phones, '审核', content)
|
||||||
|
return JsonResponse({'status': 'success', 'message': {'title': o.name, 'organizationId': o.id}})
|
||||||
|
|
Loading…
Reference in New Issue