Exemplo n.º 1
0
class CadastroCX(QtGui.QWidget):
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.ui = Ui_FormCaixa()
        self.ui.setupUi(self)
        self.setMinimumSize(320, 200)
        self.setWindowTitle("Cadastro de Movimento")

        # Sessão do banco de dados
        Session = sessionmaker(bind=engine)
        self.session = Session()

        self.ui.btSalvar.clicked.connect(self.salvar)
        self.ui.btLimpar.clicked.connect(lambda: self.limpar(self.ui.btLimpar))

    def salvar(self):
        seta_locale(False)
        if self.ui.checkSaida.isChecked():
            print "checked"
            self.val = -locale.atof(self.ui.textValor.text())
        else:
            print "nao checked"
            self.val = locale.atof(self.ui.textValor.text())

        cadastro = Caixa(
            descricao=self.ui.textDescricao.text(),
            data=datetime.datetime.strptime(self.ui.textData.text(), getDataString()).date(),
            valor=self.val,
            origem=self.ui.textOrigem.text(),
            destino=self.ui.textDestino.text()
        )
        try:
            self.session.add(cadastro)
            self.session.commit()
            mostrarMessageBox(
                "Sucesso!",
                "Cadastro de Caixa efetuado com sucesso!")
        except Exception as e:
            lineno, fname = get_filename_lnumber()
            enviaEmail(e.message, fname, lineno)
            mostrarMessageBox("Erro!", "Não foi possivel salvar os dados no banco. \n %s" % e.message)

            #except Exception as e:
            #print e
            #enviaEmail(e.message)

    def limpar(self, qbutt):
        pai = qbutt.parentWidget()
        if (pai is not None):
            for tipo in (QtGui.QLineEdit, QtGui.QTextEdit):
                for filhos in pai.findChildren(tipo):
                    filhos.setText("")
Exemplo n.º 2
0
    def __init__(self):
        QtGui.QWidget.__init__(self)
        self.ui = Ui_FormCaixa()
        self.ui.setupUi(self)
        self.setMinimumSize(320, 200)
        self.setWindowTitle("Cadastro de Movimento")

        # Sessão do banco de dados
        Session = sessionmaker(bind=engine)
        self.session = Session()

        self.ui.btSalvar.clicked.connect(self.salvar)
        self.ui.btLimpar.clicked.connect(lambda: self.limpar(self.ui.btLimpar))