diff --git a/apps/am/migrations/0004_auto_20220713_1408.py b/apps/am/migrations/0004_auto_20220713_1408.py new file mode 100644 index 00000000..654c2bba --- /dev/null +++ b/apps/am/migrations/0004_auto_20220713_1408.py @@ -0,0 +1,30 @@ +# Generated by Django 3.2.12 on 2022-07-13 06:08 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('am', '0003_alter_access_obj_cate'), + ] + + operations = [ + migrations.RemoveField( + model_name='area', + name='employee_yes', + ), + migrations.RemoveField( + model_name='area', + name='remployee_yes', + ), + migrations.RemoveField( + model_name='area', + name='visitor_yes', + ), + migrations.AddField( + model_name='area', + name='access_list', + field=models.JSONField(blank=True, default=list, help_text='employee/remployee/visitor', verbose_name='准入人员类型'), + ), + ] diff --git a/apps/am/models.py b/apps/am/models.py index ddf284ed..d15fcd3b 100755 --- a/apps/am/models.py +++ b/apps/am/models.py @@ -30,9 +30,7 @@ class Area(CommonBModel): level = models.PositiveSmallIntegerField('区域风险等级') cate = models.PositiveSmallIntegerField('区域分类') number = models.CharField('编号', max_length=20, null=True, blank=True) - visitor_yes = models.BooleanField('准许访客人员', default=False) - remployee_yes = models.BooleanField('准许相关方人员', default=False) - employee_yes = models.BooleanField('准许内部员工', default=True) + access_list = models.JSONField('准入人员类型', default=list, null=False, blank=True, help_text='employee/remployee/visitor') count_people_min = models.PositiveIntegerField('最小人员数', default=0) count_people_max = models.PositiveIntegerField('最大人员数', default=1000) count_people = models.PositiveIntegerField('当前人数', default=0) diff --git a/apps/am/serializers.py b/apps/am/serializers.py index 3d99e695..5c9b78f2 100644 --- a/apps/am/serializers.py +++ b/apps/am/serializers.py @@ -23,7 +23,7 @@ class AreaSerializer(CustomModelSerializer): class AreaCreateUpdateSerializer(CustomModelSerializer): class Meta: model = Area - fields = ['name', 'level', 'number', 'visitor_yes', 'remployee_yes', 'employee_yes', + fields = ['name', 'level', 'number', 'access_list', 'belong_dept', 'count_people_min', 'count_people_max', 'count_people', 'cate', 'stay_minute_min', 'stay_minute_max', 'manager'] extra_kwargs = { diff --git a/apps/ecm/migrations/0012_alter_eventdo_cate.py b/apps/ecm/migrations/0012_alter_eventdo_cate.py new file mode 100644 index 00000000..1c3e482f --- /dev/null +++ b/apps/ecm/migrations/0012_alter_eventdo_cate.py @@ -0,0 +1,19 @@ +# Generated by Django 3.2.12 on 2022-07-13 06:08 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('ecm', '0011_eventcate_same_allow_minute'), + ] + + operations = [ + migrations.AlterField( + model_name='eventdo', + name='cate', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='do_cate', to='ecm.eventcate', verbose_name='关联事件种类'), + ), + ] diff --git a/apps/hrm/services.py b/apps/hrm/services.py index d0ab248c..7e1f075c 100755 --- a/apps/hrm/services.py +++ b/apps/hrm/services.py @@ -155,6 +155,12 @@ class HrmService: _, res = dhClient.request(**dhapis['card_add'], json=json_data) return cardNumber + @classmethod + def door_auth(cls): + """授予门禁权限 + """ + pass + @classmethod def swipe(cls, data: dict): """ diff --git a/apps/hrm/views.py b/apps/hrm/views.py index f822e698..e87ed5d4 100755 --- a/apps/hrm/views.py +++ b/apps/hrm/views.py @@ -31,7 +31,7 @@ class EmployeeViewSet(CustomModelViewSet): """ 人员管理 """ - queryset = Employee.objects.all() + queryset = Employee.objects.exclude(user__is_superuser=True) select_related_fields = ['user'] filterset_class = EmployeeFilterSet serializer_class = EmployeeSerializer diff --git a/apps/third/migrations/0008_auto_20220713_1408.py b/apps/third/migrations/0008_auto_20220713_1408.py new file mode 100644 index 00000000..17d649e6 --- /dev/null +++ b/apps/third/migrations/0008_auto_20220713_1408.py @@ -0,0 +1,30 @@ +# Generated by Django 3.2.12 on 2022-07-13 06:08 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('third', '0007_auto_20220712_1628'), + ] + + operations = [ + migrations.RemoveField( + model_name='tdevice', + name='employee_yes', + ), + migrations.RemoveField( + model_name='tdevice', + name='remployee_yes', + ), + migrations.RemoveField( + model_name='tdevice', + name='visitor_yes', + ), + migrations.AddField( + model_name='tdevice', + name='access_list', + field=models.JSONField(blank=True, default=list, help_text='employee/remployee/visitor', verbose_name='自动下发人员类型'), + ), + ] diff --git a/apps/third/models.py b/apps/third/models.py index 5e2a7c51..02d13781 100755 --- a/apps/third/models.py +++ b/apps/third/models.py @@ -43,9 +43,7 @@ class TDevice(BaseModel): employee = models.OneToOneField(Employee, verbose_name='当前绑定人员', on_delete=models.CASCADE, null=True, blank=True) is_clock = models.BooleanField('是否打卡设备', default=False) - visitor_yes = models.BooleanField('自动下发访客', default=True) - remployee_yes = models.BooleanField('自动下发相关方', default=True) - employee_yes = models.BooleanField('自动下发员工', default=True) + access_list = models.JSONField('自动下发人员类型', default=list, null=False, blank=True, help_text='employee/remployee/visitor') third_info = models.JSONField('三方信息', default=dict, null=False, blank=True) diff --git a/apps/third/serializers.py b/apps/third/serializers.py index aa11e2c1..51df2493 100755 --- a/apps/third/serializers.py +++ b/apps/third/serializers.py @@ -23,7 +23,7 @@ class TDeviceSerializer(CustomModelSerializer): class TDeviceUpdateSerializer(CustomModelSerializer): class Meta: model = TDevice - fields = ['is_clock', 'visitor_yes', 'remployee_yes', 'employee_yes'] + fields = ['is_clock', 'access_list'] class TDeviceSimpleSerializer(CustomModelSerializer):