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.
 
 
 
 

71 lines
3.1 KiB

# -*- coding: utf-8 -*-
import datetime
from project.customer.forms import ClientsListForm
from ..models import Dover, DoverItem
from ..forms import DoverForm, DoverItemForm
from ..filters import DoverFilterSet
from .base_views import BaseItemsViews
class DoverViews(BaseItemsViews):
"""Views для доверенностей на получение ТМЦ."""
MODEL = Dover # модель документа
FORM_CLASS = DoverForm # форма документа
ITEM_MODEL = DoverItem # модель табличной части документа
ITEM_FORM_CLASS = DoverItemForm # форма табличной части документа
ITEM_FORM_PREFIX = 'dover_items' # префикс формы табличной части
# поля, по которым можно сортировать список документов
ORDER_FIELDS = ('doc_num', 'doc_date', 'doc_expire_date', 'dover_name', 'client__name',)
FILTERSET_CLASS = DoverFilterSet # фильтры
# префикс именованных урлов этого типа документов, для передачи в шаблон
URL_PREFIX = 'docs_dover_'
# именованные урлы операций
URL_LIST = 'docs_dover_list'
URL_EDIT = 'docs_dover_edit'
# пути к шаблонам
TEMPLATE_LIST = 'docs/dover/list.html'
TEMPLATE_FORM = 'docs/dover/form.html'
# для генерации pdf/xls
PDF_TEMPLATE = 'docs/dover/as_pdf.html'
XLS_TEMPLATE = 'dover.xls'
FILENAME = u'Доверенность № %s, %s' # без расширения
# --- грамматика для вывода наименований в шаблонах
PADEJI = {
'imenit': u'доверенность', # кто? что?
'rodit': u'доверенности', # кого? чего?
'dateln': u'доверенности', # кому? чему?
'vinit': u'доверенность', # кого? что?
'tvorit': u'доверенностью', # кем? чем?
'predlojn': u'доверенности', # о ком? о чём?
}
PADEJI_MNOJ = {
'imenit': u'доверенности', # кто? что?
'rodit': u'доверенностью', # кого? чего?
'dateln': u'доверенностям', # кому? чему?
'vinit': u'доверенности', # кого? что?
'tvorit': u'доверенностями', # кем? чем?
'predlojn': u'доверенностях', # о ком? о чём?
}
def update_list_dict(self, dictionary):
"""Здесь можно изменить словарь параметров перед передачей его в шаблон вывода списка документов."""
dictionary['clients_form'] = ClientsListForm(self.request.user)
def init_form(self):
"""Начальные значения полей формы документа."""
initial = super(DoverViews, self).init_form()
initial['doc_expire_date'] = datetime.datetime.now() + datetime.timedelta(1)
return initial