diff --git a/apps/hrm/migrations/0006_alter_employee_user.py b/apps/hrm/migrations/0006_alter_employee_user.py new file mode 100644 index 00000000..21ec9eba --- /dev/null +++ b/apps/hrm/migrations/0006_alter_employee_user.py @@ -0,0 +1,21 @@ +# Generated by Django 3.2.12 on 2022-11-01 09:39 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('hrm', '0005_alter_employee_phone'), + ] + + operations = [ + migrations.AlterField( + model_name='employee', + name='user', + field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='employee', to=settings.AUTH_USER_MODEL, verbose_name='系统账号'), + ), + ] diff --git a/apps/hrm/models.py b/apps/hrm/models.py index f00536e8..2bc0f7f9 100755 --- a/apps/hrm/models.py +++ b/apps/hrm/models.py @@ -24,7 +24,7 @@ class Employee(CommonBModel): user = models.OneToOneField(User, verbose_name='系统账号', related_name='employee', - on_delete=models.CASCADE, null=True, blank=True) + on_delete=models.SET_NULL, null=True, blank=True) name = models.CharField('姓名', max_length=20) phone = models.CharField('手机号', max_length=11, null=True, blank=True) email = models.EmailField('邮箱号', null=True, blank=True) diff --git a/apps/hrm/views.py b/apps/hrm/views.py index 83a31360..8435aead 100755 --- a/apps/hrm/views.py +++ b/apps/hrm/views.py @@ -46,7 +46,7 @@ class EmployeeViewSet(CustomModelViewSet): create_serializer_class = EmployeeCreateUpdateSerializer update_serializer_class = EmployeeCreateUpdateSerializer partial_update_serializer_class = EmployeeCreateUpdateSerializer - search_fields = ['name', 'number', 'user__username', 'id_number'] + search_fields = ['name', 'number', 'user__username', 'id_number', 'id'] ordering = ['-pk'] # def filter_queryset(self, queryset): diff --git a/apps/opm/migrations/0008_oplcate_sort.py b/apps/opm/migrations/0008_oplcate_sort.py new file mode 100644 index 00000000..2b4f7953 --- /dev/null +++ b/apps/opm/migrations/0008_oplcate_sort.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.12 on 2022-11-01 07:25 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('opm', '0007_auto_20221015_2353'), + ] + + operations = [ + migrations.AddField( + model_name='oplcate', + name='sort', + field=models.PositiveSmallIntegerField(default=1, verbose_name='排序'), + ), + ] diff --git a/apps/opm/migrations/0009_remove_oplcate_workflow.py b/apps/opm/migrations/0009_remove_oplcate_workflow.py new file mode 100644 index 00000000..15a12070 --- /dev/null +++ b/apps/opm/migrations/0009_remove_oplcate_workflow.py @@ -0,0 +1,17 @@ +# Generated by Django 3.2.12 on 2022-11-01 09:39 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('opm', '0008_oplcate_sort'), + ] + + operations = [ + migrations.RemoveField( + model_name='oplcate', + name='workflow', + ), + ] diff --git a/apps/opm/models.py b/apps/opm/models.py index 897d4a22..dceb058a 100644 --- a/apps/opm/models.py +++ b/apps/opm/models.py @@ -13,9 +13,6 @@ class OplCate(CommonAModel): name = models.CharField('名称', max_length=20, unique=True) sort = models.PositiveSmallIntegerField('排序', default=1) description = models.TextField('描述', null=True, blank=True) - workflow = models.ForeignKey('wf.workflow', verbose_name='使用的工作流', - on_delete=models.SET_NULL, - null=True, blank=True) template_export = models.TextField('导出word模板', null=True, blank=True) risk_options = models.ManyToManyField('system.dictionary', verbose_name='风险分析', diff --git a/apps/opm/serializers.py b/apps/opm/serializers.py index eb78e501..5351cfa0 100644 --- a/apps/opm/serializers.py +++ b/apps/opm/serializers.py @@ -30,7 +30,7 @@ class OplCateSerializer(CustomModelSerializer): class OplCateSimpleSerializer(CustomModelSerializer): class Meta: model = OplCate - fields = ['id', 'name', 'workflow', 'code', 'sort'] + fields = ['id', 'name', 'code', 'sort'] class OplCateDetailSerializer(CustomModelSerializer): diff --git a/apps/opm/views.py b/apps/opm/views.py index c2c0a73e..b2a7f144 100644 --- a/apps/opm/views.py +++ b/apps/opm/views.py @@ -19,7 +19,7 @@ from django.core.cache import cache class OplCateViewSet(CustomModelViewSet): - queryset = OplCate.objects.all() + queryset = OplCate.objects.all().order_by('sort') create_serializer_class = OplCateCreateUpdateSerializer update_serializer_class = OplCateCreateUpdateSerializer retrieve_serializer_class = OplCateDetailSerializer diff --git a/apps/system/views.py b/apps/system/views.py index 0cb32ccb..d7f9a715 100755 --- a/apps/system/views.py +++ b/apps/system/views.py @@ -421,7 +421,7 @@ class UserViewSet(CustomModelViewSet): create_serializer_class = UserCreateSerializer update_serializer_class = UserUpdateSerializer filterset_class = UserFilterSet - search_fields = ['username', 'name', 'phone', 'email'] + search_fields = ['username', 'name', 'phone', 'email', 'id'] select_related_fields = ['superior', 'belong_dept', 'post'] prefetch_related_fields = ['posts', 'roles', 'depts'] ordering = ['create_time', 'type'] diff --git a/apps/utils/pagination.py b/apps/utils/pagination.py index 88dcf151..d437e4b3 100755 --- a/apps/utils/pagination.py +++ b/apps/utils/pagination.py @@ -11,7 +11,7 @@ class MyPagination(PageNumberPagination): def paginate_queryset(self, queryset, request, view=None): if request.query_params.get('pageoff', None) or request.query_params.get('page', None) == '0': - if queryset.count() < 500: + if queryset.count() < 800: return None raise ParseError('单次请求数据量大,请分页获取') return super().paginate_queryset(queryset, request, view=view)