source: publico/il.spdo/trunk/il/spdo/browser/forms/situacao.py @ 5448

Última Alteração nesse arquivo desde 5448 foi 5448, incluída por fabianosantos, 9 anos atrás

Adicionado formularios para situacao, tipo de documento e entrega, uf. Revisado formularios de protocolo, tramite.

File size: 2.6 KB
Linha 
1# -*- coding: utf-8 -*-
2
3from five import grok
4from plone.app.layout.navigation.interfaces import INavigationRoot
5from Products.statusmessages.interfaces import IStatusMessage
6from il.spdo.browser.forms import base
7from il.spdo.config import MessageFactory as _
8from il.spdo.interfaces import ISituacao
9from il.spdo.db import Situacao
10from il.spdo.config import Session
11
12class SituacaoAddForm(base.AddForm):
13    """Formulário de cadastro de uma situação.
14    """
15
16    grok.context(INavigationRoot)
17    grok.name('add-situacao')
18    grok.require('cmf.ManagePortal')
19
20    schema = ISituacao
21    label = _(u'Adicionar Situação')
22    description = _(u'Formulário de cadastro de uma situação.')
23
24    def createAndAdd(self, data):
25        situacao = Situacao()
26        situacao.nome = data['nome']
27        situacao.inicial = data['inicial']
28        situacao.final = data['final']
29        session = Session()
30        session.add(situacao)
31        session.flush()
32        return situacao
33
34    def nextURL(self):
35        url_base = self.context.absolute_url()
36        self.redirect(url_base + '/@@list-situacao')
37
38
39class SituacaoEditForm(base.EditForm):
40    """Formulário de edição de uma situação.
41    """
42
43    grok.context(INavigationRoot)
44    grok.name('edit-situacao')
45    grok.require('cmf.ManagePortal')
46
47    schema = ISituacao
48    label = _(u'Editar Situação')
49    descrition = _(u'Formulário de edição de uma situação.')
50
51    def getContent(self):
52        session = Session()
53        return session.query(Situacao).get(self.rec_id())
54
55    def applyChanges(self, data):
56        content = self.getContent()
57        if content:
58            for k, v in data.items():
59                setattr(content, k, v)
60            return True
61
62    def nextURL(self):
63        url_base = self.context.absolute_url()
64        self.redirect(url_base + '/@@show-situacao?id=' + self.rec_id())
65
66
67class SituacaoShowForm(base.ShowForm):
68    """Formulário de visualização de uma situação.
69    """
70   
71    grok.context(INavigationRoot)
72    grok.name('show-situacao')
73    grok.require('cmf.ManagePortal')
74
75    schema = ISituacao
76    label = _(u'Detalhes da Situação')
77    description = _(u'Formulário de visualização de uma situação.')
78
79    def getContent(self):
80        session = Session()
81        return session.query(Situacao).get(self.rec_id())
82
83    def nextURL(self):
84        url_base = self.context.absolute_url()
85        self.redirect(url_base + '/@@list-situacao')
86
87    def editURL(self):
88        url_base = self.context.absolute_url()
89        self.redirect(url_base + '/@@edit-situacao?id=%s' % self.rec_id())
90
Note: Veja TracBrowser para ajuda no uso do navegador do trac.
 

The contents and data of this website are published under license:
Creative Commons 4.0 Brasil - Atribuir Fonte - Compartilhar Igual.