material 增加file字段
This commit is contained in:
parent
1f3be8d689
commit
2c0d4dda32
|
@ -0,0 +1,20 @@
|
||||||
|
# Generated by Django 3.2.9 on 2022-04-27 02:36
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
import django.db.models.deletion
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('system', '0004_auto_20220318_1705'),
|
||||||
|
('mtm', '0050_auto_20220419_1109'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name='material',
|
||||||
|
name='file',
|
||||||
|
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='system.file', verbose_name='文件'),
|
||||||
|
),
|
||||||
|
]
|
|
@ -43,6 +43,7 @@ class Material(CommonAModel):
|
||||||
count = models.PositiveIntegerField('物料库存总数', default=0)
|
count = models.PositiveIntegerField('物料库存总数', default=0)
|
||||||
count_safe = models.PositiveIntegerField('安全库存总数', null=True, blank=True)
|
count_safe = models.PositiveIntegerField('安全库存总数', null=True, blank=True)
|
||||||
piece_count = models.PositiveSmallIntegerField('单片玻璃数量', null=True, blank=True)
|
piece_count = models.PositiveSmallIntegerField('单片玻璃数量', null=True, blank=True)
|
||||||
|
file = models.ForeignKey(File, verbose_name='文件', on_delete=models.SET_NULL, null=True, blank=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = '物料表'
|
verbose_name = '物料表'
|
||||||
verbose_name_plural = verbose_name
|
verbose_name_plural = verbose_name
|
||||||
|
|
|
@ -8,12 +8,14 @@ from apps.system.serializers import FileSimpleSerializer, OrganizationSimpleSeri
|
||||||
|
|
||||||
|
|
||||||
class MaterialSerializer(DynamicFieldsSerializerMixin, serializers.ModelSerializer):
|
class MaterialSerializer(DynamicFieldsSerializerMixin, serializers.ModelSerializer):
|
||||||
|
file_ = FileSimpleSerializer(source='file', read_only=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Material
|
model = Material
|
||||||
fields = '__all__'
|
fields = '__all__'
|
||||||
|
|
||||||
class MaterialDetailSerializer(serializers.ModelSerializer):
|
class MaterialDetailSerializer(serializers.ModelSerializer):
|
||||||
processes_ = serializers.SerializerMethodField()
|
processes_ = serializers.SerializerMethodField()
|
||||||
|
file_ = FileSimpleSerializer(source='file', read_only=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Material
|
model = Material
|
||||||
fields = '__all__'
|
fields = '__all__'
|
||||||
|
|
|
@ -19,7 +19,7 @@ class MaterialViewSet(PageOrNot, CreateUpdateModelAMixin, ModelViewSet):
|
||||||
"""
|
"""
|
||||||
perms_map = {'get': '*', 'post': 'material_create',
|
perms_map = {'get': '*', 'post': 'material_create',
|
||||||
'put': 'material_update', 'delete': 'material_delete'}
|
'put': 'material_update', 'delete': 'material_delete'}
|
||||||
queryset = Material.objects.all()
|
queryset = Material.objects.select_related('file').all()
|
||||||
serializer_class = MaterialSerializer
|
serializer_class = MaterialSerializer
|
||||||
search_fields = ['name', 'number']
|
search_fields = ['name', 'number']
|
||||||
filterset_class = MaterialFilterSet
|
filterset_class = MaterialFilterSet
|
||||||
|
|
Loading…
Reference in New Issue