source: publico/ILSAALTesouraria/trunk/MovimentoMensal.py

Última Alteração nesse arquivo foi 1527, incluída por jeanferri, 15 anos atrás

Atualizada a versão do ArchGenXml para a 1.4RC2

File size: 6.3 KB
Linha 
1# File: MovimentoMensal.py
2#
3# Copyright (c) 2005 by Interlegis
4# Generator: ArchGenXML Version 1.4.0-RC2 svn/development
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 <stc@interlegis.gov.br>'''
22__docformat__ = 'plaintext'
23
24
25from AccessControl import ClassSecurityInfo
26from Products.Archetypes.atapi import *
27from Products.ILSAALTesouraria.interfaces.IMovimentoMensal import IMovimentoMensal
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 do movimento mensal.",
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    FixedPointField('vlr_receita',
56        widget=CurrencyWidget(
57            label="Valor da Receita",
58            description="Informe o valor total da receita mensal.",
59            label_msgid='ILSAALTesouraria_label_vlr_receita',
60            description_msgid='ILSAALTesouraria_help_vlr_receita',
61            i18n_domain='ILSAALTesouraria',
62        ),
63        required=1
64    ),
65
66    FixedPointField('vlr_despesa',
67        widget=CurrencyWidget(
68            label="Valor da Despesa",
69            description="Informe o valor total da despesa mensal.",
70            label_msgid='ILSAALTesouraria_label_vlr_despesa',
71            description_msgid='ILSAALTesouraria_help_vlr_despesa',
72            i18n_domain='ILSAALTesouraria',
73        ),
74        required=1
75    ),
76
77    FixedPointField('vlr_saldo_bancario',
78        widget=CurrencyWidget(
79            label="Saldo Bancario",
80            description="Informe o valor do saldo bancario no fechamento mensal.",
81            label_msgid='ILSAALTesouraria_label_vlr_saldo_bancario',
82            description_msgid='ILSAALTesouraria_help_vlr_saldo_bancario',
83            i18n_domain='ILSAALTesouraria',
84        ),
85        required=1
86    ),
87
88    DateTimeField('dat_fechamento',
89        widget=CalendarWidget(
90            label="Data de Fechamento",
91            description="Informe a data de fechamento do movimento mensal.",
92            format="%d/%m/%Y",
93            date_only=1,
94            visible={'edit':'hidden','view':'visible'},
95            label_msgid='ILSAALTesouraria_label_dat_fechamento',
96            description_msgid='ILSAALTesouraria_help_dat_fechamento',
97            i18n_domain='ILSAALTesouraria',
98        )
99    ),
100
101    BooleanField('ind_conciliacao_automatica',
102        default=0,
103        widget=BooleanWidget(
104            label="Conciliacao Automatica",
105            description="Marque esta opcao, se o movimento mensal permitir conciliacao automatica.",
106            label_msgid='ILSAALTesouraria_label_ind_conciliacao_automatica',
107            description_msgid='ILSAALTesouraria_help_ind_conciliacao_automatica',
108            i18n_domain='ILSAALTesouraria',
109        )
110    ),
111
112),
113)
114
115
116##code-section after-local-schema #fill in your manual code here
117##/code-section after-local-schema
118
119MovimentoMensal_schema = BaseFolderSchema + \
120    schema
121
122##code-section after-schema #fill in your manual code here
123##/code-section after-schema
124
125class MovimentoMensal(BaseFolder):
126    """
127    Mantem os saldos mensais consolidados, em reais, relativos as
128    operacoes diarias realizadas pela tesouraria no mes. Cada
129    instancia pode estar associada a uma ou mais instancias de
130    MovimentoTesouraria.
131    """
132    security = ClassSecurityInfo()
133    __implements__ = (getattr(BaseFolder,'__implements__',()),) + (IMovimentoMensal,IMovimento,)
134
135
136    # This name appears in the 'add' box
137    archetype_name             = 'Movimento Mensal'
138
139    meta_type                  = 'MovimentoMensal'
140    portal_type                = 'MovimentoMensal'
141    allowed_content_types      = ['Pagamento', 'Recebimento']
142    filter_content_types       = 1
143    global_allow               = 0
144    allow_discussion           = 0
145    content_icon               = 'movimento_mensal_icon.gif'
146    immediate_view             = 'base_view'
147    default_view               = 'base_view'
148    suppl_views                = ()
149    typeDescription            = "Movimento Mensal"
150    typeDescMsgId              = 'description_edit_movimentomensal'
151
152    schema = MovimentoMensal_schema
153
154    ##code-section class-header #fill in your manual code here
155    ##/code-section class-header
156
157
158    #Methods
159    #methods from Interface IMovimentoMensal
160
161    security.declarePrivate('_titulo')
162    def _titulo(self):
163        """
164        Define um titulo personalizado para este objeto.
165        """
166       
167        return self.getMesAnoReferencia()
168
169
170    #methods from Interface IMovimento
171
172    security.declareProtected("Access contents information", 'getMesAnoReferencia')
173    def getMesAnoReferencia(self):
174        """
175        Retorna o mes e o ano de referencia do movimento mensal.
176        """
177
178        referencia = self.getDat_referencia()
179        if referencia is not None:
180            return DateTime(referencia).strftime('%Y-%m')
181        else:
182            return referencia
183
184
185
186registerType(MovimentoMensal,PROJECTNAME)
187# end of class MovimentoMensal
188
189##code-section module-footer #fill in your manual code here
190##/code-section module-footer
191
192
193
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.