source: publico/ILSAALTesouraria/trunk/ConsolidacaoMovimento.py @ 881

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

Atualizada a documentação das classes da tesouraria de acordo com a documentação do Colab

File size: 5.3 KB
Linha 
1# File: ConsolidacaoMovimento.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.IConsolidacaoMovimento import IConsolidacaoMovimento
28from Products.ILSAALTesouraria.interfaces.IMovimento import IMovimento
29
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_referencia',
42        default=DateTime(),
43        widget=CalendarWidget(
44            label="Data de Referencia",
45            description="Informe a data de referencia da consolidacao do movimento.",
46            format='%d/%m/%Y',
47            date_only=1,
48            label_msgid='ILSAALTesouraria_label_dat_referencia',
49            description_msgid='ILSAALTesouraria_help_dat_referencia',
50            i18n_domain='ILSAALTesouraria',
51        ),
52        required=1
53    ),
54
55    FloatField('vlr_saldo',
56        default="0.00",
57        widget=DecimalWidget(
58            label="Valor do Saldo",
59            description="Informe o valor do saldo da consolidacao do movimento.",
60            label_msgid='ILSAALTesouraria_label_vlr_saldo',
61            description_msgid='ILSAALTesouraria_help_vlr_saldo',
62            i18n_domain='ILSAALTesouraria',
63        ),
64        required=1
65    ),
66
67    DateTimeField('dat_consolidacao',
68        widget=CalendarWidget(
69            label="Indicativo de Consolidacao",
70            description="Informe o indicativo da consolidacao do movimento.",
71            format='%d/%m/%Y',
72            date_only=1,
73            label_msgid='ILSAALTesouraria_label_dat_consolidacao',
74            description_msgid='ILSAALTesouraria_help_dat_consolidacao',
75            i18n_domain='ILSAALTesouraria',
76        )
77    ),
78
79),
80)
81
82
83##code-section after-local-schema #fill in your manual code here
84##/code-section after-local-schema
85
86ConsolidacaoMovimento_schema = BaseFolderSchema + \
87    schema
88
89##code-section after-schema #fill in your manual code here
90##/code-section after-schema
91
92class ConsolidacaoMovimento(BaseFolder):
93    """
94    Mantem dados consolidados do movimento bancario da Casa
95    Legislativa. Uma instancia nesta classe esta associada a uma na
96    classe ContaCorrente. Apos o fechamento mensal, o sistema ira
97    inibir atualizacoes e/ou lancamentos com data anterior a data de
98    referencia relativa ao fechamento.
99    """
100    security = ClassSecurityInfo()
101    __implements__ = (getattr(BaseFolder,'__implements__',()),) + (IConsolidacaoMovimento,IMovimento,)
102
103
104    # This name appears in the 'add' box
105    archetype_name             = 'Consolidacao do Movimento'
106
107    meta_type                  = 'ConsolidacaoMovimento'
108    portal_type                = 'ConsolidacaoMovimento'
109    allowed_content_types      = ['MovimentoBancario']
110    filter_content_types       = 1
111    global_allow               = 0
112    allow_discussion           = 0
113    content_icon               = 'consolidacao_movimento_icon.gif'
114    immediate_view             = 'base_view'
115    default_view               = 'base_view'
116    suppl_views                = ()
117    typeDescription            = "Consolidacao do Movimento"
118    typeDescMsgId              = 'description_edit_consolidacaomovimento'
119
120    schema = ConsolidacaoMovimento_schema
121
122    ##code-section class-header #fill in your manual code here
123    ##/code-section class-header
124
125
126    #Methods
127    #methods from Interface IConsolidacaoMovimento
128
129    security.declarePrivate('_titulo')
130    def _titulo(self):
131        """
132        Retorna a data da consolidacao como titulo do objeto.
133        """
134
135        return self.getMesAnoReferencia() or ''
136
137
138    #methods from Interface IMovimento
139
140    security.declareProtected("Access contents information", 'getMesAnoReferencia')
141    def getMesAnoReferencia(self):
142        """
143        Retorna o mes e o ano de referencia do movimento mensal.
144        """
145
146        referencia = self.getDat_referencia()
147        if referencia is not None:
148            return DateTime(referencia).strftime('%Y-%m')
149        else:
150            return referencia
151
152
153
154registerType(ConsolidacaoMovimento,PROJECTNAME)
155# end of class ConsolidacaoMovimento
156
157##code-section module-footer #fill in your manual code here
158##/code-section module-footer
159
160
161
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.