Conjunto de mudanças 5370 no repositório publico


Ignorar:
Timestamp:
14/10/2011 13:33:18 (8 anos atrás)
Autor:
fabianosantos
Mensagem:

Novo módulo com global utility que define API geral do sistema.

Localização:
il.spdo/trunk/il/spdo
Arquivos:
1 adicionado
3 editados

Legenda:

Não Modificado
Adicionado
Removido
  • il.spdo/trunk/il/spdo/browser/forms/protocolo.py

    r5368 r5370  
    44
    55from five import grok
    6 from zope.component import getMultiAdapter
     6from zope.component import getUtility
    77
    88from plone.app.layout.navigation.interfaces import INavigationRoot
     
    1414from il.spdo import db
    1515from il.spdo.config import Session, PATH_ANEXOS
     16from il.spdo.api import ISPDOAPI
    1617
    1718class ProtocoloAddForm(base.AddForm):
     
    2728
    2829    def createAndAdd(self, data):
     30        api = getUtility(ISPDOAPI)
     31        user = api.getUser()
     32
    2933        protocolo = db.Protocolo(
    3034                data['tipoprotocolo'],
     
    3943        session.flush()
    4044        self.protocolo_id = protocolo.id
    41 
    42         portal_state = getMultiAdapter((self.context, self.request),
    43                                         name=u'plone_portal_state')
    44         user_id = portal_state.member().getId()
    45         user = session.query(db.Pessoa).filter_by(email=user_id).first()
    4645
    4746        observacao = None
     
    6463
    6564        log = db.LogModificacao(
    66                 usuario=user_id,
     65                usuario=user.email;
    6766                protocolo_id=protocolo.id,
    6867                tramite_id=tramite.id,
     
    7271        session.add(log)
    7372
    74         #inicializa a path dos anexos do protocolo
    75         path_protocolo = os.path.join(PATH_ANEXOS, str(protocolo.ano), str(protocolo.id))
    76         os.makedirs(path_protocolo, 0700)
    77 
     73        # salva os arquivos anexados ao protocolo se existirem
    7874        anexos = data['anexos'] if data['anexos'] is not None else []
    79         for arquivo in anexos:
    80             anexo = db.Anexo(
    81                     protocolo_id=protocolo.id,
    82                     tamanho=arquivo.getSize(),
    83                     arquivo=arquivo.filename,
    84                 )
    85            
    86             session.add(anexo)
    87             session.flush()
    88 
    89             log = db.LogModificacao(
    90                     usuario=user_id,
    91                     protocolo_id=protocolo.id,
    92                     anexo_id=anexo.id,
    93                     detalhes=_(u'Anexo criado: %s' % anexo.arquivo)
    94                 )
    95             session.add(log)
    96 
    97             path_anexo = os.path.join(path_protocolo, str(anexo.id))
    98             with open(path_anexo, 'w') as file_anexo:
    99                 file_anexo.write(arquivo.data)
     75        if anexos:
     76            api.addAnexos(protocolo.id, anexos)
    10077
    10178        pessoas_origem = data['origem']
  • il.spdo/trunk/il/spdo/browser/views.py

    r5364 r5370  
    22from five import grok
    33
     4from zope.component import getUtility
    45from plone.app.layout.navigation.interfaces import INavigationRoot
    56from Products.statusmessages.interfaces import IStatusMessage
     
    78from il.spdo.db import Area, Pessoa, Protocolo
    89from il.spdo.config import Session
     10from il.spdo.api import ISPDOAPI
    911from il.spdo.config import MessageFactory as _
    1012
     
    6466    grok.require('cmf.ManagePortal')
    6567
    66     def rec_id(self):
    67         return self.request.get('id', None) or\
    68             self.request.get('form.widgets.id', None)
    69    
    7068    @property
    7169    def protocolo(self):
     
    7573
    7674    def update(self):
    77         session = Session()
    78         self._protocolo = session.query(Protocolo).get(self.rec_id())
     75        self.api = getUtility(ISPDOAPI)
     76        self._protocolo = self.api.getProtocolo()
    7977        if self._protocolo is None:
    8078            status = IStatusMessage(self.request)
  • il.spdo/trunk/il/spdo/interfaces.py

    r5369 r5370  
    236236                         value_type=NamedFile())
    237237   
    238 @form.validator(field=IAddTramite['area_id'])
     238@form.validator(field=IAddTramite['areas'])
    239239def validateAreaDestino(value):
    240240    if not value:
Note: Veja TracChangeset para ajuda no uso do visualizador de conjunto de mudanças.
 

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