source: publico/ILSAALTesouraria/trunk/MovimentoBancario.py @ 901

Última Alteração nesse arquivo desde 901 foi 901, incluída por jeanferri, 14 anos atrás

Pequena correção no formato das datas com apóstrofes

File size: 6.4 KB
Linha 
1# File: MovimentoBancario.py
2#
3# Copyright (c) 2005 by Interlegis
4# Generator: ArchGenXML Version 1.4.0-beta2 devel
5#            http://plone.org/products/archgenxml
6#
7# GNU General Public Licence (GPL)
8#
9# This program is free software; you can redistribute it and/or modify it under
10# the terms of the GNU General Public License as published by the Free Software
11# Foundation; either version 2 of the License, or (at your option) any later
12# version.
13# This program is distributed in the hope that it will be useful, but WITHOUT
14# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15# FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
16# details.
17# You should have received a copy of the GNU General Public License along with
18# this program; if not, write to the Free Software Foundation, Inc., 59 Temple
19# Place, Suite 330, Boston, MA  02111-1307  USA
20#
21__author__  = '''STC Interlegis <admin-stc@interlegis.gov.br>'''
22__docformat__ = 'plaintext'
23
24
25from AccessControl import ClassSecurityInfo
26from Products.Archetypes.atapi import *
27from Products.ILSAALTesouraria.interfaces.IMovimentoBancario import IMovimentoBancario
28
29from Products.ATVocabularyManager.namedvocabulary import NamedVocabulary
30
31from Products.Archetypes.SQLStorage import *
32# additional imports from tagged value 'import'
33from Products.ILSAAL.saalapi import *
34from DateTime import DateTime
35
36from Products.ILSAALTesouraria.config import *
37##code-section module-header #fill in your manual code here
38##/code-section module-header
39
40schema=Schema((
41    DateTimeField('dat_lancamento',
42        default=DateTime(),
43        widget=CalendarWidget(
44            label="Data do Lancamento",
45            description="Informe a data de efetuacao do lancamento do movimento bancario.",
46            format="%d/%m/%Y",
47            date_only=1,
48            label_msgid='ILSAALTesouraria_label_dat_lancamento',
49            description_msgid='ILSAALTesouraria_help_dat_lancamento',
50            i18n_domain='ILSAALTesouraria',
51        ),
52        required=1
53    ),
54
55    StringField('tip_lancamento',
56        widget=SelectionWidget(
57            label="Tipo do Lancamento",
58            description="Informe o tipo do lancamento do movimento bancario.",
59            format="select",
60            label_msgid='ILSAALTesouraria_label_tip_lancamento',
61            description_msgid='ILSAALTesouraria_help_tip_lancamento',
62            i18n_domain='ILSAALTesouraria',
63        ),
64        vocabulary=NamedVocabulary("""tipos_lancamento"""),
65        enforceVocabulary=1,
66        required=1
67    ),
68
69    StringField('num_lancamento',
70        widget=StringWidget(
71            label="Numero do Lancamento",
72            description="Informe o numero do lancamento do movimento bancario.",
73            label_msgid='ILSAALTesouraria_label_num_lancamento',
74            description_msgid='ILSAALTesouraria_help_num_lancamento',
75            i18n_domain='ILSAALTesouraria',
76        ),
77        required=1
78    ),
79
80    FloatField('vlr_lancamento',
81        default="0.00",
82        widget=DecimalWidget(
83            label="Valor do Lancamento",
84            description="Informe o valor do lancamento do movimento bancario.",
85            label_msgid='ILSAALTesouraria_label_vlr_lancamento',
86            description_msgid='ILSAALTesouraria_help_vlr_lancamento',
87            i18n_domain='ILSAALTesouraria',
88        ),
89        required=1
90    ),
91
92    StringField('ind_debito_credito',
93        widget=SelectionWidget(
94            label="Debito/Credito",
95            description="Selecione a descricao do Debito/Credito deste movimento bancario.",
96            format="select",
97            label_msgid='ILSAALTesouraria_label_ind_debito_credito',
98            description_msgid='ILSAALTesouraria_help_ind_debito_credito',
99            i18n_domain='ILSAALTesouraria',
100        ),
101        required=1,
102        vocabulary=NamedVocabulary("""indicadores_debito_credito"""),
103        enforceVocabulary=1
104    ),
105
106    TextField('des_historico_lancamento',
107        widget=TextAreaWidget(
108            label="Historico do Lancamento",
109            description="Informe o historico do lancamento do movimento bancario.",
110            label_msgid='ILSAALTesouraria_label_des_historico_lancamento',
111            description_msgid='ILSAALTesouraria_help_des_historico_lancamento',
112            i18n_domain='ILSAALTesouraria',
113        ),
114        required=1
115    ),
116
117),
118)
119
120
121##code-section after-local-schema #fill in your manual code here
122##/code-section after-local-schema
123
124MovimentoBancario_schema = BaseSchema + \
125    schema
126
127##code-section after-schema #fill in your manual code here
128##/code-section after-schema
129
130class MovimentoBancario(BaseContent):
131    """
132    Mantem dados dos lancamentos em contas bancarias da Casa
133    Legislativa. Uma instancia nesta classe estara associada a
134    apenas uma instancia em ContaCorrente; e, a uma ou mais
135    instancias em MovimentoTesouraria via conciliacao.
136    """
137    security = ClassSecurityInfo()
138    __implements__ = (getattr(BaseContent,'__implements__',()),) + (IMovimentoBancario,)
139
140
141    # This name appears in the 'add' box
142    archetype_name             = 'Movimento Bancario'
143
144    meta_type                  = 'MovimentoBancario'
145    portal_type                = 'MovimentoBancario'
146    allowed_content_types      = []
147    filter_content_types       = 0
148    global_allow               = 0
149    allow_discussion           = 0
150    content_icon               = 'movimento_bancario_icon.gif'
151    immediate_view             = 'base_view'
152    default_view               = 'base_view'
153    suppl_views                = ()
154    typeDescription            = "Movimento Bancario"
155    typeDescMsgId              = 'description_edit_movimentobancario'
156
157    schema = MovimentoBancario_schema
158
159    ##code-section class-header #fill in your manual code here
160    ##/code-section class-header
161
162
163    #Methods
164    #methods from Interface IMovimentoBancario
165
166    security.declarePrivate('_titulo')
167    def _titulo(self):
168        """
169        Retorna a data do lancamento, o valor e a indicacao de debito ou
170        credito como titulo do objeto.
171        """
172
173        data_lancamento = self.getDat_lancamento()
174
175        if data_lancamento is not None:
176            return DateTime(data_lancamento).strftime('%d-%m-%Y') + ': ' + str(self.getVlr_lancamento())
177        else:
178            return str(self.getVlr_lancamento())
179
180
181
182registerType(MovimentoBancario,PROJECTNAME)
183# end of class MovimentoBancario
184
185##code-section module-footer #fill in your manual code here
186##/code-section module-footer
187
188
189
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.