diff --git a/server/apps/consulting/migrations/0007_auto_20230821_1458.py b/server/apps/consulting/migrations/0007_auto_20230821_1458.py new file mode 100644 index 0000000..3ee6d02 --- /dev/null +++ b/server/apps/consulting/migrations/0007_auto_20230821_1458.py @@ -0,0 +1,22 @@ +# Generated by Django 3.2.12 on 2023-08-21 06:58 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('consulting', '0006_auto_20211214_1552'), + ] + + operations = [ + migrations.AlterModelOptions( + name='policy', + options={'verbose_name': '政策/法规', 'verbose_name_plural': '政策/法规'}, + ), + migrations.AddField( + model_name='policy', + name='cate', + field=models.CharField(default='政策', max_length=100, verbose_name='分类'), + ), + ] diff --git a/server/apps/consulting/models.py b/server/apps/consulting/models.py index 95d16b5..68c7e0a 100644 --- a/server/apps/consulting/models.py +++ b/server/apps/consulting/models.py @@ -38,14 +38,15 @@ class Professional(CommonAModel): verbose_name = '专业领域要求' verbose_name_plural = verbose_name class Policy(CommonAModel): - + cate = models.CharField('分类', max_length=100, default='政策') name = models.CharField('名称', max_length=100) description = models.TextField('描述', default="", blank=True) file = models.ForeignKey(File, on_delete=models.CASCADE) class Meta: - verbose_name = '政策咨询' + verbose_name = '政策/法规' verbose_name_plural = verbose_name + class Validation(CommonAModel): type_choices = ( (1, '通知'), diff --git a/server/apps/consulting/views.py b/server/apps/consulting/views.py index c8a30f5..9d9b6c8 100644 --- a/server/apps/consulting/views.py +++ b/server/apps/consulting/views.py @@ -31,6 +31,7 @@ class RegulatoryViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, M search_fields = ['provinces'] ordering_fields = ['provinces'] filterset_fields = ['provinces'] + class ProfessionalViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, ModelViewSet): perms_map = {'get': '*', 'post': 'professional_create', 'put': 'professional_update', 'delete': 'professional_delete'} @@ -42,6 +43,8 @@ class PolicyViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, Model 'put': 'policy_update', 'delete': 'policy_delete'} queryset = Policy.objects.all() serializer_class = PolicySerializer + filterset_fields = ['cate', 'name'] + search_fields = ['cate', 'name', 'description'] ordering = ['-id'] class ValidationViewSet(OptimizationMixin, PageOrNot, CreateUpdateModelAMixin, ModelViewSet): perms_map = {'get': '*', 'post': 'validation_create',