private void BtnBoletar_Click(object sender, EventArgs e)
        {
            if (CmbCotista.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum Cotistas Selecionado!");
            }
            else if (CmbBoxOp.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum tipo de Operação Selecionada!");
                CmbBoxOp.Focus();
            }
            else if (CmbBoxLiquida.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum tipo de liquidação Selecionada!");
                CmbBoxLiquida.Focus();
            }
            else if (CmbBoxConta.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhuma conta selecionada!");
                CmbBoxConta.Focus();
            }
            else if (TextBoxValor.Text.Length == 0)
            {
                MessageBox.Show("Favor preencher o valor do resgate!");
                TextBoxValor.Focus();
            }
            else
            {
                //Converte Para Boleta de Resgate
                #region
                ContaCredito = ContasCredito.FirstOrDefault(X => X.DISPLAYCONTA == CmbBoxConta.Text);

                long    Codcot  = Convert.ToInt64(CmbCotista.SelectedValue);
                long    Codfund = FIQ.CODFUND;
                string  Op      = CmbBoxOp.Text;
                decimal Valor   = Convert.ToDecimal(TextBoxValor.Text);
                string  Status  = "Pendente";
                string  Conta   = ContaCredito.DISPLAYCONTA;

                #endregion

                try
                {
                    new BL_RegistroResgate().Inserir(Codcot, Codfund, Op, Valor, Conta, Status);
                    MessageBox.Show("Registro Incluído com Sucesso!");
                    Limpar();
                }
                catch (ArgumentException Ex)
                {
                    MessageBox.Show("Erro ao Incluir: " + Ex.Message);
                }
            }
        }
Beispiel #2
0
        //List<long> CODFUNDSRAPTOR = new List<long>();

        //Clicks Botoes
        #region
        private void BtnIncluir_Click(object sender, EventArgs e)
        {
            if (CmbCotista.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum Cotistas Selecionado!");
            }
            else if (CmbBoxOp.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum tipo de Operação Selecionada!"); CmbBoxOp.Focus();
            }
            else if (CmbBoxLiquida.SelectedIndex == -1)
            {
                MessageBox.Show("Nenhum tipo de liquidação Selecionada!"); CmbBoxLiquida.Focus();
            }
            else if (CmbBoxConta.SelectedIndex == -1 && !(LabelOp.Text == "Aplicação" && CmbBoxLiquida.Text == "TED"))
            {
                MessageBox.Show("Nenhuma conta selecionada!"); CmbBoxConta.Focus();
            }
            else if (TextBoxValor.Text.Length == 0)
            {
                MessageBox.Show("Favor preencher o valor da operação!"); TextBoxValor.Focus();
            }
            else if (CheckPorCautela.Checked == true && ComboBoxCautela.SelectedIndex == -1)
            {
                MessageBox.Show("Favor selecionar uma cautela!");
            }
            //else if (LabelOp.Text != "Aplicação" && CODFUNDSRAPTOR.Contains(Convert.ToInt64(CmbBoxFIQ.SelectedValue))) { Limpar(); MessageBox.Show("Resgates do Raptor devem ser feitos manualmente!"); }

            else
            {//Conversor
                string Op()
                {
                    if (LabelOp.Text == "Aplicação")
                    {
                        return("AP");
                    }
                    else if (CmbBoxOp.Text == "Por Cotas")
                    {
                        return("RC");
                    }
                    else if (CmbBoxOp.Text == "Total")
                    {
                        return("RT");
                    }
                    else
                    {
                        return("R");
                    }
                }

                //Variaveis
                long    CODCOT   = Convert.ToInt64(CmbCotista.SelectedValue);
                long    CODFUND  = Convert.ToInt64(CmbBoxFIQ.SelectedValue);
                string  OPERACAO = Op();
                decimal VALOR    = Convert.ToDecimal(TextBoxValor.Text);
                string  CONTA    = CmbBoxConta.Text;
                if (CONTA == "")
                {
                    CONTA = "VIA TED";
                }

                List <BL_Boleta> Boletas = new List <BL_Boleta>();
                BL_FIQ           Fundo   = new BL_FIQ().DadosPorCODFUND(CODFUND);
                BL_Cotista       Cotista = new BL_Cotista().DadosPorCODCOT(CODCOT);

                if (Op() == "R" && CheckPorCautela.Checked)
                {
                    MessageBox.Show("Não é possível realizar resgates financeiros por cautela!");
                }
                else if (Op() == "R" && Fundo.LOCKUP != 0)
                {
                    MessageBox.Show("Não é possível resgatar por financeiro em fundos com lockup!");
                }
                else if (Op() != "AP" && Fundo.LOCKUP != 0 && !CheckPorCautela.Checked)
                {
                    if (VALOR > new BL_Saldo().DadosPorCODCOTeCODFUND(Cotista.CODCOT, Fundo.CODFUND).QNTCOTAS)
                    {
                        MessageBox.Show("O valor solicitado é maior que o saldo disponível!");
                    }
                    else
                    {
                        Boletas = new BL_Boleta().BoletaPorCautela(Cotista, Fundo, VALOR, DateTime.Today, Op(), CONTA);
                    }
                }
                else if (CheckPorCautela.Checked)
                {
                    DataGridBoletas.Columns["Cautela"].Visible = true;
                    long     CAUTELA = Convert.ToInt64(ComboBoxCautela.SelectedValue);
                    BL_Saldo Cautela = new BL_Saldo().CautelasPorCODCOTeCODFUND(Cotista.CODCOT, Fundo.CODFUND).FirstOrDefault(x => x.CAUTELA == CAUTELA);
                    if (VALOR > Cautela.QNTCOTAS)
                    {
                        MessageBox.Show("O valor solicitado é maior que a quantidade de cotas disponível na cautela!");
                    }
                    else
                    {
                        Boletas.Add(new BL_Boleta().GeraBoleta(Cotista, Fundo, VALOR, DateTime.Today, Op(), CONTA, CAUTELA));
                    }
                }
                else
                {
                    Boletas.Add(new BL_Boleta().GeraBoleta(Cotista, Fundo, VALOR, DateTime.Today, Op(), CONTA));
                    if (Op() == "AP")
                    {
                        Boletas[0].STATUS = new BL_Boleta().VerificarCotista(CODCOT, CODFUND, Properties.Settings.Default.Usuario, Properties.Settings.Default.Senha);
                    }
                }

                Boletas.OrderBy(x => x.COTIZACAO).ToList();
                foreach (BL_Boleta Boleta in Boletas)
                {
                    DataGridBoletas.Rows.Add(Boleta.CODCOT, Boleta.CODFUND, Boleta.CPFCNPJ, Boleta.NOME, Boleta.FUNDO, Boleta.OPERACAO, Boleta.STATUS,
                                             Boleta.VALOR, Boleta.CONTA, Boleta.COTIZACAO.ToShortDateString(), Boleta.IMPACTO.ToShortDateString(), Boleta.CAUTELA);
                }
                Limpar();
            }
        }