private void wizardPage1_PageCommit(object sender, EventArgs e)
        {
            XFrmWait.ShowSplashScreen("Gerando lançamentos");
            this.completionWizardPage1.AllowFinish = false;

            var manager = new LancamentoDaoManager();

            this._lancamentoList.ForEach(delegate(LancamentoFinanceiro lan)
            {
                try
                {
                    if (_action == FormTypeAction.Salvar)
                    {
                        manager.SaveLancamento(lan);
                    }
                    else
                    {
                        manager.Reparcelar(_lancamentoAtual, lan);
                    }
                }
                catch (Exception ex)
                {
                    XMessageIts.Erro("Falha no parcelamento !\nVerifique a pasta de logs ou contate o administrador", "Operação cancelada");
                    LoggerUtilIts.GenerateLogs(ex);
                    this.Dispose();
                    return;
                }
            });
            this.completionWizardPage1.AllowFinish = true;
            XFrmWait.CloseSplashScreen();
        }
Beispiel #2
0
        private void btnSalvar_Click(object sender, EventArgs e)
        {
            if (btnSalvar.Text.Equals("OK") && _lancAnt != null &&
                _lancAnt.StatusLancamento == TypeStatusLancamentoFinanceiro.Pago)
            {
                this.Dispose();
            }
            else
            {
                LancamentoFinanceiro novo = indexarDados();
                var status = (TypeStatusLancamentoFinanceiro)cbStatusLancamento.SelectedIndex;

                if (novo != null)
                {
                    try
                    {
                        var  manager = new LancamentoDaoManager();
                        bool flag    = false;
                        if (_lancAnt == null)
                        {
                            flag = manager.SaveLancamento(novo);
                            if (flag)
                            {
                                XMessageIts.Mensagem("Lancamento incluso com sucesso!\n\n"
                                                     + "Nº Lançamento: " + novo.IdLancamento);
                            }
                        }
                        else
                        {
                            flag = manager.UpdateLancamento(novo);
                            if (flag)
                            {
                                XMessageIts.Mensagem("Lancamento atualizado com sucesso!");

                                //atualiza no grid
                                this._lancAnt = novo;
                            }
                        }
                        if (flag)
                        {
                            //se setei como pago
                            if (status == TypeStatusLancamentoFinanceiro.Pago)
                            {
                                var lista = new List <LancamentoFinanceiro>();

                                //use esse status pq ainda nao foi pago se nao ira confundir o usuario
                                //verificar se eh null, pq na criacao do lancamento ele eh null, somenta na edicao ele é 'fill'
                                if (this._lancAnt != null)
                                {
                                    novo.StatusLancamento = _lancAnt.StatusLancamento;
                                }

                                //recupera o lancto
                                var r = LancamentoDaoManager.FindCpl(novo);

                                lista.Add(r);
                                //chama o wizard para realizar a baixa
                                var wizard = new XFrmWizardBaixaLancamento(lista);
                                wizard.ShowDialog();

                                //se foi cancelada a baixa
                                if (wizard.IsBaixa == false)
                                {
                                    //consistencia o status do lançamento
                                    novo.StatusLancamento = TypeStatusLancamentoFinanceiro.Aberto;
                                    //invoca o validar lançamento
                                    manager.UpdateLancamento(novo);
                                }
                                novo.Update(r);
                            }
                            //always
                            this.Dispose();
                        }
                    }
                    catch (Exception ex)
                    {
                        XMessageIts.ExceptionJustMessage(ex, "Falha durante a persistência do lançamento!");
                        this.Dispose();
                    }
                }
            }
        }