def _TramiteRecuperacao(self, protocolos, apenso=False): """Tramite de recuperação (recupera um protocolo enviado que não foi recebido). """ protocolos = list(set(protocolos)) session = Session() area_id_auth = self.getAuthPessoa().area_id ret = [] for protocolo_id in protocolos: ret.append(protocolo_id) protocolo = self.getProtocolo(protocolo_id) if not apenso: sc = getUtility(ISecurityChecker) msg = _(u'Protocolo não disponível para recuperação. Protocolo: ') + protocolo.numero sc.enforce('tramitar_recuperacao', protocolo_id=protocolo_id, msg=msg) tramites = session.query(db.Tramite).\ filter_by(protocolo_id=protocolo_id).\ filter_by(area_id_anterior=area_id_auth).\ filter_by(data_recebimento=None).all() for tramite in tramites: session.delete(tramite) self._add_box(db.TramiteInbox, protocolo_id, area_id_auth) self._del_box(db.TramiteOutbox, protocolo_id, area_id_auth) # propaga tramitação nos apensos for apenso in protocolo.apenso: ret.extend(self._TramiteRecuperacao([apenso.id], apenso=True)) return ret
def _TramiteRecuperacao(self, protocolos, apenso=False): """Tramite de recuperação (recupera um protocolo enviado que não foi recebido). """ protocolos = list(set(protocolos)) session = Session() area_id_auth = self.getAuthPessoa().area_id ret = [] for protocolo_id in protocolos: ret.append(protocolo_id) protocolo = self.getProtocolo(protocolo_id) if not apenso: sc = getUtility(ISecurityChecker) msg = _( u'Protocolo não disponível para recuperação. Protocolo: ' ) + protocolo.numero sc.enforce('tramitar_recuperacao', protocolo_id=protocolo_id, msg=msg) tramites = session.query(db.Tramite).\ filter_by(protocolo_id=protocolo_id).\ filter_by(area_id_anterior=area_id_auth).\ filter_by(data_recebimento=None).all() for tramite in tramites: session.delete(tramite) self._add_box(db.TramiteInbox, protocolo_id, area_id_auth) self._del_box(db.TramiteOutbox, protocolo_id, area_id_auth) # propaga tramitação nos apensos for apenso in protocolo.apenso: ret.extend(self._TramiteRecuperacao([apenso.id], apenso=True)) return ret
def doDeleteUser(self, userid): """Apaga o usuário removendo a pessoa do banco de dados. Se alguma integridade referencial não for respeitada será lançada uma exceção.""" api = getUtility(ISPDOAPI) pessoa = api.getPessoaByEmail(userid) session = Session() session.delete(pessoa)
def render(self): session = Session() content = session.query(db.Transicao).get(self.request.id) fluxo_id = content.fluxo_id session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u"Registro removido."), "info") go("list-transicao", fluxo_id=fluxo_id)
def render(self): session = Session() content = session.query(db.Transicao).get(self.request.id) fluxo_id = content.fluxo_id session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('list-transicao', fluxo_id=fluxo_id)
def render(self): session = Session() r = self.request content = session.query(db.PessoaDestino).get((r.protocolo_id, r.pessoa_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u"Registro removido."), "info") go("show-protocolo", id=r.protocolo_id)
def render(self): session = Session() r = self.request content = session.query(db.Referencia).get((r.protocolo_id, r.referencia_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u"Registro removido."), "info") go("list-referencia", protocolo_id=r.protocolo_id)
def render(self): session = Session() r = self.request content = session.query(db.Referencia).get((r.protocolo_id, r.referencia_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('list-referencia', protocolo_id=r.protocolo_id)
def render(self): session = Session() r = self.request content = session.query(db.PessoaDestino).get((r.protocolo_id, r.pessoa_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('show-protocolo', id=r.protocolo_id)
def render(self): session = Session() r = self.request content = session.query(db.PessoaOrigem).get((r.protocolo_id, r.pessoa_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('show-protocolo', id=r.protocolo_id)
def render(self): session = Session() api = getUtility(ISPDOAPI) pessoa_id = api.getAuthPessoa().id content = session.query(db.Notificacao).get((pessoa_id, self.request.protocolo_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u"Registro removido."), "info") go("list-notificacao")
def render(self): session = Session() api = getUtility(ISPDOAPI) pessoa_id = api.getAuthPessoa().id content = session.query(db.Notificacao).get((pessoa_id, self.request.protocolo_id)) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('list-notificacao')
def render(self): session = Session() content = session.query(db.Observacao).get(self.request.id) protocolo_id = content.protocolo_id sc = getUtility(ISecurityChecker) sc.enforce('acessar_remove_observacao', protocolo_id=protocolo_id, observacao_id=self.request.id) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('show-protocolo', id=protocolo_id)
def render(self): session = Session() content = session.query(db.Anexo).get(self.request.id) protocolo_id = content.protocolo_id sc = getUtility(ISecurityChecker) sc.enforce('acessar_remove_anexo', protocolo_id=protocolo_id, anexo_id=self.request.id) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u'Registro removido.'), 'info') go('show-protocolo', id=protocolo_id)
def render(self): session = Session() content = session.query(db.Observacao).get(self.request.id) protocolo_id = content.protocolo_id sc = getUtility(ISecurityChecker) sc.enforce("acessar_remove_observacao", protocolo_id=protocolo_id, observacao_id=self.request.id) session.delete(content) session.flush() status = IStatusMessage(self.request) status.add(_(u"Registro removido."), "info") go("show-protocolo", id=protocolo_id)
def removeItem(self): content = self.getContent() status = IStatusMessage(self.request) try: session = Session() session.delete(content) session.flush() except AssertionError, e: msg = _(u'Falha de integridade relacional: ' + str(e)) status.add(msg, 'error') logger(msg) raise
session.add(ps4) ps5 = Pessoa(u'Fabiano Weimar', u'*****@*****.**', area_id=a1.id) session.add(ps5) if LOTS_OF_SAMPLES: for i in xrange(1000): psN = Pessoa(u'Teste %s...' % str(i), u'*****@*****.**' % str(i), area_id=a1.id) session.add(psN) session.flush() # BUG: a pessoa com id = 1 deve ser apagada pois o plone.formwidget.autocomplete # não funciona como esperado com esse registro. No futuro esse widget precisará # ser reescrito utilizando http://docs.jquery.com/UI/Autocomplete session.delete(ps1) # Para facilitar os testes, algumas senhas são trocadas para senhas ps2.senha = geraHash('12345') ps3.senha = geraHash('54321') # Responsavel re1 = Responsavel(area_id=a1.id, pessoa_id=ps2.id) session.add(re1) re2 = Responsavel(area_id=a2.id, pessoa_id=ps3.id) session.add(re2) re3 = Responsavel(area_id=a3.id, pessoa_id=ps4.id) session.add(re3) re4 = Responsavel(area_id=a1.id, pessoa_id=ps3.id) session.add(re4) re5 = Responsavel(area_id=a2.id, pessoa_id=ps4.id)
def _del_box(self, box, protocolo_id, area_id): assert (box in (db.TramiteInbox, db.TramiteOutbox)) session = Session() t = session.query(box).get((protocolo_id, area_id)) if t is not None: session.delete(t)
ps4 = Pessoa(u'BOPE', '*****@*****.**', 'Morro dos Caveiras, 100', u'Favela do Alemão', 12312000, 'Rio de Janeiro', 1, '11 1212.1234', '12312312312', 'O', u'Capitão Nascimento', a3.id) session.add(ps4) ps5 = Pessoa(u'Fabiano Weimar', u'*****@*****.**', area_id=a1.id) session.add(ps5) if LOTS_OF_SAMPLES: for i in xrange(1000): psN = Pessoa(u'Teste %s...' % str(i), u'*****@*****.**' % str(i), area_id=a1.id) session.add(psN) session.flush() # BUG: a pessoa com id = 1 deve ser apagada pois o plone.formwidget.autocomplete # não funciona como esperado com esse registro. No futuro esse widget precisará # ser reescrito utilizando http://docs.jquery.com/UI/Autocomplete session.delete(ps1) # Para facilitar os testes, algumas senhas são trocadas para senhas ps2.senha = geraHash('12345') ps3.senha = geraHash('54321') # Responsavel re1 = Responsavel(area_id=a1.id, pessoa_id=ps2.id) session.add(re1) re2 = Responsavel(area_id=a2.id, pessoa_id=ps3.id) session.add(re2) re3 = Responsavel(area_id=a3.id, pessoa_id=ps4.id) session.add(re3) re4 = Responsavel(area_id=a1.id, pessoa_id=ps3.id) session.add(re4) re5 = Responsavel(area_id=a2.id, pessoa_id=ps4.id)
def _del_box(self, box, protocolo_id, area_id): assert(box in (db.TramiteInbox, db.TramiteOutbox)) session = Session() t = session.query(box).get((protocolo_id, area_id)) if t is not None: session.delete(t)