diff --git a/dingxin_toolbox_drf/settings.py b/dingxin_toolbox_drf/settings.py index 094b399..d1b6a79 100644 --- a/dingxin_toolbox_drf/settings.py +++ b/dingxin_toolbox_drf/settings.py @@ -115,7 +115,8 @@ INSTALLED_APPS = [ 'django_filters', 'update', 'mock', - 'dspt_api' + 'dspt_api', + 'product' ] MIDDLEWARE = [ diff --git a/product/__init__.py b/product/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/product/admin.py b/product/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/product/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/product/apps.py b/product/apps.py new file mode 100644 index 0000000..235a333 --- /dev/null +++ b/product/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class ProductConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'product' diff --git a/product/migrations/0001_initial.py b/product/migrations/0001_initial.py new file mode 100644 index 0000000..fc70125 --- /dev/null +++ b/product/migrations/0001_initial.py @@ -0,0 +1,45 @@ +# Generated by Django 4.2.7 on 2025-06-01 01:59 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='PrdItem', + fields=[ + ('id', models.AutoField(primary_key=True, serialize=False)), + ('project', models.CharField(help_text='所属项目', max_length=100, verbose_name='所属项目')), + ('prd_version', models.CharField(help_text='版本', max_length=200, verbose_name='版本')), + ('prd_doc_link', models.CharField(help_text='原型地址', max_length=100, verbose_name='原型地址')), + ('prd_comment', models.TextField(help_text='版本描述', verbose_name='版本描述')), + ('is_delete', models.BooleanField(default=False, help_text='删除状态', verbose_name='删除状态')), + ], + options={ + 'verbose_name': '版本列表', + 'verbose_name_plural': '版本列表', + 'db_table': 'prd_item', + 'db_table_comment': '版本列表', + }, + ), + migrations.CreateModel( + name='Project', + fields=[ + ('id', models.AutoField(primary_key=True, serialize=False)), + ('project_name', models.CharField(help_text='项目名称', max_length=100, verbose_name='项目名称')), + ('is_delete', models.BooleanField(default=False, help_text='删除状态', verbose_name='删除状态')), + ], + options={ + 'verbose_name': '项目列表', + 'verbose_name_plural': '项目列表', + 'db_table': 'prd_project', + 'db_table_comment': '项目列表', + }, + ), + ] diff --git a/product/migrations/__init__.py b/product/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/product/models.py b/product/models.py new file mode 100644 index 0000000..eb73d77 --- /dev/null +++ b/product/models.py @@ -0,0 +1,33 @@ +from django.db import models + +# Create your models here. +class Project(models.Model): + id = models.AutoField(primary_key=True) + project_name = models.CharField(verbose_name='项目名称',max_length=100, help_text='项目名称') + is_delete = models.BooleanField(verbose_name='删除状态', default=False, help_text='删除状态') + + def __str__(self): + return self.project_name + + class Meta: + verbose_name = '项目列表' + verbose_name_plural = '项目列表' + db_table_comment = '项目列表' + db_table = 'prd_project' + +class PrdItem(models.Model): + id = models.AutoField(primary_key=True) + project = models.CharField(verbose_name='所属项目',max_length=100, help_text='所属项目') + prd_version = models.CharField(verbose_name='版本',max_length=200, help_text='版本') + prd_doc_link = models.CharField(verbose_name='原型地址',max_length=100, help_text='原型地址') + prd_comment = models.TextField(verbose_name='版本描述', help_text='版本描述') + is_delete = models.BooleanField(verbose_name='删除状态', default=False, help_text='删除状态') + + def __str__(self): + return self.prd_version + + class Meta: + verbose_name = '版本列表' + verbose_name_plural = '版本列表' + db_table_comment = '版本列表' + db_table = 'prd_item' \ No newline at end of file diff --git a/product/serializers.py b/product/serializers.py new file mode 100644 index 0000000..16eeed2 --- /dev/null +++ b/product/serializers.py @@ -0,0 +1,14 @@ +from rest_framework import serializers +from product.models import * + + +class ProjectSerializer(serializers.ModelSerializer): + class Meta: + model = Project + fields = ('id', 'project_name', 'is_delete') + + +class PrdItemSerializer(serializers.ModelSerializer): + class Meta: + model = PrdItem + fields = ('id', 'project', 'prd_version', 'prd_doc_link', 'prd_comment', 'is_delete') \ No newline at end of file diff --git a/product/tests.py b/product/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/product/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/product/views.py b/product/views.py new file mode 100644 index 0000000..90c899b --- /dev/null +++ b/product/views.py @@ -0,0 +1,28 @@ +from rest_framework import viewsets +from product.serializers import * + + +# Create your views here. +class ProjectViewSet(viewsets.ModelViewSet): + # 字段注释 + """ + id: 数据id + project_name: 项目名称 + is_delete: 删除标记 + """ + queryset = Project.objects.all() + serializer_class = ProjectSerializer + + +class PrdItemViewSet(viewsets.ModelViewSet): + # 字段注释 + """ + id: 数据id + project: 项目名称 + prd_version: 版本 + prd_doc_link: 产品文档链接 json格式 + prd_comment: 产品文档说明 + is_delete: 删除标记 + """ + queryset = PrdItem.objects.all() + serializer_class = PrdItemSerializer