feat: 添加企业资格审核字段和企业信息查询接口
This commit is contained in:
parent
f142718cd5
commit
54571ee801
|
|
@ -0,0 +1,25 @@
|
|||
# Generated by Django 4.2.27 on 2026-03-09 06:21
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.db.models.deletion
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
('system', '0007_alter_dept_create_by_alter_dept_update_by_and_more'),
|
||||
('carbon', '0003_enterprise'),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name='enterprise',
|
||||
name='is_qualified',
|
||||
field=models.BooleanField(default=False, verbose_name='资格审核通过'),
|
||||
),
|
||||
migrations.AlterField(
|
||||
model_name='enterprise',
|
||||
name='belong_dept',
|
||||
field=models.OneToOneField(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='enterprise_belong_dept', to='system.dept', verbose_name='所属部门'),
|
||||
),
|
||||
]
|
||||
|
|
@ -68,6 +68,10 @@ class Enterprise(CommonBDModel):
|
|||
industry = models.CharField("所属行业", max_length=100, blank=True, null=True)
|
||||
business_status = models.CharField("经营状态", max_length=50, blank=True, null=True)
|
||||
registration_authority = models.CharField("登记机关", max_length=200, blank=True, null=True)
|
||||
is_qualified = models.BooleanField("资格审核通过", default=False)
|
||||
belong_dept = models.OneToOneField(
|
||||
'system.dept', null=True, blank=True, on_delete=models.SET_NULL,
|
||||
verbose_name='所属部门', related_name='enterprise_belong_dept')
|
||||
|
||||
class Meta:
|
||||
verbose_name = "企业信息"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
from apps.utils.serializers import CustomModelSerializer
|
||||
from .models import Work
|
||||
from .models import Work, Enterprise
|
||||
from rest_framework import serializers
|
||||
from apps.system.serializers import FileSerializer
|
||||
|
||||
|
|
@ -38,3 +38,9 @@ class WorkDhCalSerializer(CustomModelSerializer):
|
|||
class Meta:
|
||||
model = Work
|
||||
fields = ["dh_file1", "dh_file2", "dh_file3", "dh_file4", "dh_file5", "dh_file6"]
|
||||
|
||||
|
||||
class EnterpriseSerializer(CustomModelSerializer):
|
||||
class Meta:
|
||||
model = Enterprise
|
||||
fields = "__all__"
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
from .views import WorkViewSet
|
||||
from .views import WorkViewSet, EnterpriseViewSet
|
||||
from django.urls import path, include
|
||||
from rest_framework.routers import DefaultRouter
|
||||
|
||||
|
|
@ -7,6 +7,7 @@ HTML_BASE_URL = 'carbon/'
|
|||
|
||||
router = DefaultRouter()
|
||||
router.register('work', WorkViewSet, basename='carbon_work')
|
||||
router.register('enterprise', EnterpriseViewSet, basename='carbon_enterprise')
|
||||
urlpatterns = [
|
||||
path(API_BASE_URL, include(router.urls)),
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
from django.shortcuts import render
|
||||
from .models import Work, Fingerprint
|
||||
from .serializers import WorkSerializer, WorkCreateSerializer, WorkDqCalSerializer, WorkDhCalSerializer
|
||||
from .models import Work, Fingerprint, Enterprise
|
||||
from .serializers import WorkSerializer, WorkCreateSerializer, WorkDqCalSerializer, WorkDhCalSerializer, EnterpriseSerializer
|
||||
from apps.utils.viewsets import CustomModelViewSet
|
||||
from rest_framework.decorators import action
|
||||
import os
|
||||
|
|
@ -326,5 +326,23 @@ class WorkViewSet(CustomModelViewSet):
|
|||
return Response({"total_score": score})
|
||||
|
||||
|
||||
class EnterpriseViewSet(CustomModelViewSet):
|
||||
queryset = Enterprise.objects.all()
|
||||
serializer_class = EnterpriseSerializer
|
||||
|
||||
@action(methods=['get'], detail=False, perms_map={'get': '*'})
|
||||
def my(self, request, *args, **kwargs):
|
||||
user = self.request.user
|
||||
if not user.belong_dept:
|
||||
raise ParseError("用户未关联部门")
|
||||
|
||||
try:
|
||||
enterprise = Enterprise.objects.get(belong_dept=user.belong_dept)
|
||||
serializer = self.get_serializer(enterprise)
|
||||
return Response(serializer.data)
|
||||
except Enterprise.DoesNotExist:
|
||||
raise ParseError("未找到关联的企业信息")
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue