You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.9 KiB
45 lines
1.9 KiB
# -*- coding: utf-8 -*-
|
|
from django.db import models
|
|
|
|
from docs.models.base_models import BaseModel, VeryBaseModel
|
|
|
|
|
|
class Dover(BaseModel):
|
|
"""Доверенность на получение ТМЦ."""
|
|
doc_expire_date = models.DateField('Срок действия')
|
|
|
|
# на получение мат.ценностей по документу
|
|
dover_doc = models.CharField('По документу №', max_length=256)
|
|
dover_doc_date = models.DateField('Дата документа')
|
|
|
|
# кому выдана и его документы
|
|
dover_name = models.CharField(
|
|
'Должность, ФИО',
|
|
max_length=256,
|
|
help_text='Полностью в дат. падеже.'
|
|
)
|
|
dover_passport_ser = models.CharField('Серия', max_length=10)
|
|
dover_passport_num = models.CharField('Номер', max_length=10)
|
|
dover_passport_org = models.CharField('Кем выдан', max_length=256)
|
|
dover_passport_date = models.DateField('Дата выдачи')
|
|
|
|
class Meta(BaseModel.Meta):
|
|
verbose_name = 'Доверенность на получ. ТМЦ'
|
|
verbose_name_plural = 'Доверенности на получ. ТМЦ'
|
|
|
|
|
|
class DoverItem(VeryBaseModel):
|
|
"""Табличная часть доверенности на получение ТМЦ."""
|
|
parent = models.ForeignKey(Dover, related_name='dover_items')
|
|
|
|
name = models.CharField('Наименование', max_length=256)
|
|
qty = models.PositiveIntegerField('Количество')
|
|
units = models.CharField('Ед. измерения', max_length=20)
|
|
|
|
class Meta(VeryBaseModel.Meta):
|
|
verbose_name = 'Табл. часть доверенности'
|
|
verbose_name_plural = 'Табл. части доверенностей'
|
|
ordering = ('created_at',)
|
|
|
|
def __str__(self):
|
|
return f'{self.name[:30]}, {self.qty} {self.units}'
|
|
|