集团端增加启用禁用功能

This commit is contained in:
caoqianming 2022-01-04 00:09:05 +08:00
parent 80af0a043c
commit bf1e46bbdc
6 changed files with 67 additions and 7 deletions

View File

@ -73,18 +73,27 @@
return html.join('') return html.join('')
} }
function enableFormatter(value, row, index){
if (value){
return '<i class="glyphicon glyphicon-ok text-success"></i>'
}
return '<i class="glyphicon glyphicon-remove text-danger"></i>'
}
function operateFormatter(value, row, index) { function operateFormatter(value, row, index) {
return [ return [
'<a class="change btn btn-warning" href="javascript:void(0)">', '<a class="change btn btn-warning btn-sm" href="javascript:void(0)">',
'修改', '修改',
'</a> ', '</a> ',
'<a class="viewpw btn btn-primary" href="javascript:void(0)">', '<a class="viewpw btn btn-primary btn-sm" href="javascript:void(0)">',
'密码', '密码',
'</a> ', '</a> ',
'<a class="viewusers btn btn-primary" href="user/', '<a class="viewusers btn btn-primary btn-sm" href="user/',
row.partid, row.partid,
'">', '">',
'查看员工', '查看员工',
'</a> ',
'<a class="disable btn btn-danger btn-sm" href="javascript:void(0)">',
'启/禁用',
'</a>' '</a>'
].join('') ].join('')
} }
@ -106,6 +115,23 @@
} }
}); });
}, },
'click .disable': function (e, value, row, index) {
layer.alert('确定执行该操作?', function(index){
//do something
$.ajax({
type: "get",
url: "/groups/api/company/toggle/"+row.partid+'/',
data: {},
//async: false, // ajax同步使用false
success: function (data) {
$table.bootstrapTable('refresh')
}
});
layer.close(index);
});
},
'click .viewpw': function (e, value, row, index) { 'click .viewpw': function (e, value, row, index) {
$.ajax({ $.ajax({
type: "get", type: "get",
@ -172,7 +198,7 @@
footerFormatter: totalNameFormatter, footerFormatter: totalNameFormatter,
}, { }, {
title: '公司详情', title: '公司详情',
colspan: 4, colspan: 5,
align: 'center' align: 'center'
}], }],
[{ [{
@ -182,6 +208,12 @@
align: 'center' align: 'center'
}, { }, {
field: 'enabled',
title: '是否有效',
sortable: true,
align: 'center',
formatter: enableFormatter,
},{
field: 'position.formatted_address', field: 'position.formatted_address',
title: '地址', title: '地址',
sortable: true, sortable: true,

View File

@ -45,5 +45,6 @@ urlpatterns = [
path('company/list', views.company_list, name='company-list'), path('company/list', views.company_list, name='company-list'),
path('company/create/',views.CompanyCreateView.as_view(),name="company-create"), path('company/create/',views.CompanyCreateView.as_view(),name="company-create"),
path('company/update/',views.CompanyUpdateView.as_view(),name='company-update') path('company/update/',views.CompanyUpdateView.as_view(),name='company-update'),
path('api/company/toggle/<int:id>/', views.company_toggle)
] ]

View File

@ -125,9 +125,17 @@ def company_list(request):
else: else:
companys = GroupUser.objects.get(id=request.session['user_id']).group.members.all().order_by('-creattime') companys = GroupUser.objects.get(id=request.session['user_id']).group.members.all().order_by('-creattime')
total = companys.count() total = companys.count()
company_list = companys.values('partid','partname','creattime','position','role__name') company_list = companys.values('partid','partname','creattime','position','role__name', 'enabled')
return JsonResponse({'total':total,'rows':list(company_list)},encoder=MyEncoder) return JsonResponse({'total':total,'rows':list(company_list)},encoder=MyEncoder)
def company_toggle(request, id):
company = s_models.Partment.objects.get(partid=id)
if company.enabled:
company.enabled = False
else:
company.enabled = True
company.save()
return JsonResponse({})
class CompanyCreateView(CreateView): class CompanyCreateView(CreateView):

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.8 on 2022-01-03 23:54
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('safesite', '0394_auto_20220103_2335'),
]
operations = [
migrations.AddField(
model_name='partment',
name='enabled',
field=models.BooleanField(default=True, verbose_name='是否有效'),
),
]

View File

@ -56,6 +56,7 @@ class Partment(models.Model):
bsq = models.TextField(default=',') # 授权者 bsq = models.TextField(default=',') # 授权者
position = JSONField('坐标', null=True, blank=True) position = JSONField('坐标', null=True, blank=True)
role = models.ForeignKey(Role, blank=True, null=True, on_delete=models.SET_NULL) role = models.ForeignKey(Role, blank=True, null=True, on_delete=models.SET_NULL)
enabled = models.BooleanField('是否有效', default=True)
def __str__(self): def __str__(self):
return self.partname return self.partname

View File

@ -673,7 +673,7 @@ def login(req):
if user_form.is_valid(): if user_form.is_valid():
username = req.POST.get('username') username = req.POST.get('username')
password = req.POST.get('password') password = req.POST.get('password')
user = User.objects.filter(username=username, deletemark=1) user = User.objects.filter(username=username, deletemark=1, usecomp__enabled=True)
if user.exists(): if user.exists():
if check_password(password, user[0].epassword): if check_password(password, user[0].epassword):
req.session['userid'] = user[0].userid req.session['userid'] = user[0].userid