Ejemplo n.º 1
0
        protected void grdConta_SelectedIndexChanged(object sender, EventArgs e)
        {
            // Pega a data de vencimento do boleto, que pode ter sido alterado
            bool   boletoChegou = ((HiddenField)((GridView)sender).SelectedRow.FindControl("hdfBoletoChegou")).Value.ToLower() == "true";
            string idContaPg    = ((HiddenField)((GridView)sender).SelectedRow.FindControl("hdfIdContaPg")).Value;
            string dataVenc     = null;

            if (!boletoChegou)
            {
                dataVenc = ((TextBox)((GridView)sender).SelectedRow.FindControl("txtDataVenc")).Text;

                if (!FuncoesData.ValidaData(dataVenc))
                {
                    Glass.MensagemAlerta.ShowMsg("Data inválida.", Page);
                    return;
                }
            }

            ContasPagarDAO.Instance.BoletoChegou(null, !boletoChegou, 0, Glass.Conversoes.StrParaUint(idContaPg), dataVenc);

            // Desmarca linha da grid como selecionada
            ((GridView)sender).SelectedIndex = -1;

            grdConta.DataBind();
        }
Ejemplo n.º 2
0
        public RetornoGerar Gerar(uint idCustoFixo, string mesAno, int diaVenc, decimal valorVenc, string obs)
        {
            lock (gerarCustoFixo)
            {
                using (var transaction = new GDATransaction())
                {
                    try
                    {
                        transaction.BeginTransaction();

                        CustoFixo c = GetElement(transaction, idCustoFixo);

                        RetornoGerar retorno = new RetornoGerar();
                        retorno.Descricao = c.Descricao;

                        // Verifica se o dia escolhido para gerar o custo fixo é válido.
                        if (!FuncoesData.ValidaData(diaVenc + "/" + mesAno))
                        {
                            retorno.Tipo = RetornoGerar.TipoRetorno.DataInvalida;
                            return(retorno);
                        }

                        // Verifica se este custo fixo já foi gerado para este mês
                        else if (ContasPagarDAO.Instance.ExistsCustoFixo(transaction, idCustoFixo, mesAno))
                        {
                            retorno.Tipo = RetornoGerar.TipoRetorno.JaExiste;
                            return(retorno);
                        }

                        ContasPagar contaPagar = new ContasPagar();
                        contaPagar.IdCustoFixo = c.IdCustoFixo;
                        contaPagar.DataVenc    = DateTime.Parse(diaVenc + "/" + mesAno);
                        contaPagar.IdConta     = c.IdConta;
                        contaPagar.IdFornec    = c.IdFornec;
                        contaPagar.IdLoja      = c.IdLoja;
                        contaPagar.Paga        = false;
                        contaPagar.ValorVenc   = valorVenc;
                        contaPagar.Contabil    = c.Contabil;
                        contaPagar.Obs         = obs;

                        // Atualizar o valor, a data de vencimento e a data que foi gerado deste custo fixo
                        UpdateValorDiaVenc(transaction, idCustoFixo, valorVenc, diaVenc);

                        // Insere conta a pagar e atualiza o número das parcelas
                        ContasPagarDAO.Instance.Insert(transaction, contaPagar);
                        ContasPagarDAO.Instance.AtualizaNumParcCustoFixo(transaction, idCustoFixo);

                        retorno.Tipo = RetornoGerar.TipoRetorno.OK;

                        transaction.Commit();
                        transaction.Close();

                        return(retorno);
                    } catch (Exception ex)
                    {
                        transaction.Rollback();
                        transaction.Close();
                        ErroDAO.Instance.InserirFromException("CustoFixoDAO(Gerar). IdCustoFixo:" + idCustoFixo, ex);
                        throw;
                    }
                }
            }
        }