diff --git a/groups/templates/groups/company.html b/groups/templates/groups/company.html
index 4ceb6b83..276d4cd8 100644
--- a/groups/templates/groups/company.html
+++ b/groups/templates/groups/company.html
@@ -73,18 +73,27 @@
return html.join('')
}
+ function enableFormatter(value, row, index){
+ if (value){
+ return ''
+ }
+ return ''
+ }
function operateFormatter(value, row, index) {
return [
- '',
+ '',
'修改',
' ',
- '',
+ '',
'密码',
' ',
- '',
'查看员工',
+ ' ',
+ '',
+ '启/禁用',
''
].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) {
$.ajax({
type: "get",
@@ -172,7 +198,7 @@
footerFormatter: totalNameFormatter,
}, {
title: '公司详情',
- colspan: 4,
+ colspan: 5,
align: 'center'
}],
[{
@@ -182,6 +208,12 @@
align: 'center'
}, {
+ field: 'enabled',
+ title: '是否有效',
+ sortable: true,
+ align: 'center',
+ formatter: enableFormatter,
+ },{
field: 'position.formatted_address',
title: '地址',
sortable: true,
diff --git a/groups/urls.py b/groups/urls.py
index ad8370d9..5d56ff75 100644
--- a/groups/urls.py
+++ b/groups/urls.py
@@ -45,5 +45,6 @@ urlpatterns = [
path('company/list', views.company_list, name='company-list'),
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//', views.company_toggle)
]
diff --git a/groups/views.py b/groups/views.py
index 792175ed..dcae16e4 100644
--- a/groups/views.py
+++ b/groups/views.py
@@ -125,9 +125,17 @@ def company_list(request):
else:
companys = GroupUser.objects.get(id=request.session['user_id']).group.members.all().order_by('-creattime')
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)
+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):
diff --git a/safesite/migrations/0395_partment_enabled.py b/safesite/migrations/0395_partment_enabled.py
new file mode 100644
index 00000000..fd203281
--- /dev/null
+++ b/safesite/migrations/0395_partment_enabled.py
@@ -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='是否有效'),
+ ),
+ ]
diff --git a/safesite/models.py b/safesite/models.py
index f4dfefe7..1588ce79 100644
--- a/safesite/models.py
+++ b/safesite/models.py
@@ -56,6 +56,7 @@ class Partment(models.Model):
bsq = models.TextField(default=',') # 授权者
position = JSONField('坐标', null=True, blank=True)
role = models.ForeignKey(Role, blank=True, null=True, on_delete=models.SET_NULL)
+ enabled = models.BooleanField('是否有效', default=True)
def __str__(self):
return self.partname
diff --git a/safesite/views.py b/safesite/views.py
index ef994617..a3c14f1a 100644
--- a/safesite/views.py
+++ b/safesite/views.py
@@ -673,7 +673,7 @@ def login(req):
if user_form.is_valid():
username = req.POST.get('username')
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 check_password(password, user[0].epassword):
req.session['userid'] = user[0].userid