Пример #1
0
        /// <summary>
        /// Atualizar dados da conta no banco de dados.
        /// </summary>
        /// <param name="codSituacao">nova situação da conta</param>
        /// <param name="valorDesconto">novo valor de desconto</param>
        /// <param name="codConta">conta pesquisada</param>
        public void Atualizar(string codSituacao, decimal desconto, long codConta)
        {
            try
            {
                var query = from contaSet in saceContext.ContaSet
                            where contaSet.codConta == codConta
                            select contaSet;

                ContaE _conta = query.ToList().ElementAtOrDefault(0);
                _conta.codSituacao = codSituacao;
                _conta.desconto    = desconto;


                var query2 = from contaSet in saceContext.ContaSet
                             where contaSet.codSaida == _conta.codSaida
                             select contaSet;

                decimal somaContas = query2.ToList().Sum(c => (c.valor - c.desconto));

                var query3 = from saida in saceContext.tb_saida
                             where saida.codSaida == _conta.codSaida
                             select saida;

                tb_saida _saida = query3.ToList().ElementAtOrDefault(0);
                if (_saida != null)
                {
                    _saida.totalAVista = somaContas;
                }
                saceContext.SaveChanges();
            }
            catch (Exception e)
            {
                throw new DadosException("Conta", e.Message, e);
            }
        }
 /// <summary>
 /// Atualiza Situacao dos pagamentos da saída para quitado quando todas as contas estão quitadas
 /// </summary>
 /// <param name="_contaE"></param>
 private void AtualizaSituacaoPagamentosSaida(ContaE contaE, MovimentacaoContaE movimentacaoContaE, bool removeuMovimento)
 {
     if (!contaE.codSaida.Equals(Global.SAIDA_PADRAO))
     {
         var query = from saida in saceContext.tb_saida
                     where saida.codSaida == contaE.codSaida
                     select saida;
         tb_saida _saidaE = query.FirstOrDefault();
         if (_saidaE != null)
         {
             if (_saidaE.totalAVista == movimentacaoContaE.valor)
             {
                 if (removeuMovimento)
                 {
                     _saidaE.codSituacaoPagamentos = SituacaoPagamentos.LANCADOS;
                 }
                 else
                 {
                     _saidaE.codSituacaoPagamentos = SituacaoPagamentos.QUITADA;
                 }
             }
             else
             {
                 if (GerenciadorConta.GetInstance(saceContext).ObterPorSituacaoSaida(SituacaoConta.SITUACAO_ABERTA, (long)contaE.codSaida).ToList().Count == 0)
                 {
                     _saidaE.codSituacaoPagamentos = SituacaoPagamentos.QUITADA;
                     IEnumerable <Conta> contas         = GerenciadorConta.GetInstance(saceContext).ObterPorSaida(_saidaE.codSaida);
                     List <long>         listaCodContas = new List <long>();
                     foreach (Conta conta in contas)
                     {
                         listaCodContas.Add(conta.CodConta);
                     }
                     decimal somaMovimentacoes = 0;
                     IEnumerable <MovimentacaoConta> listaMovimentacoes = ObterPorContas(listaCodContas);
                     foreach (MovimentacaoConta movimentacao in listaMovimentacoes)
                     {
                         somaMovimentacoes += movimentacao.Valor;
                     }
                     GerenciadorSaida.GetInstance(saceContext).AtualizarTipoPedidoGeradoPorSaida(_saidaE.codTipoSaida, _saidaE.pedidoGerado, _saidaE.tipoDocumentoFiscal, somaMovimentacoes, _saidaE.codSaida);
                     //_saidaE.totalAVista = somaMovimentacoes;
                 }
                 else
                 {
                     _saidaE.codSituacaoPagamentos = SituacaoPagamentos.LANCADOS;
                 }
             }
             saceContext.SaveChanges();
         }
     }
 }
        private static void RemoverContasSaida(tb_saida saidaE, SaceEntities saceEntities, RepositorioGenerico <ContaE> repConta)
        {
            try
            {
                var query = from contaSet in saceEntities.ContaSet
                            where contaSet.codSaida == saidaE.codSaida
                            select contaSet;

                foreach (ContaE _contaE in query)
                {
                    repConta.Remover(_contaE);
                }
                repConta.SaveChanges();
            }
            catch (Exception e)
            {
                throw new DadosException("Conta", e.Message, e);
            }
        }
Пример #4
0
        public long InserirAutorizacaoCartao(Cartao.ResultadoProcessamento resultadoProcessamento, List <tb_solicitacao_saida> listaSolicitacaoSaida)
        {
            var repAutorizacao = new RepositorioGenerico <tb_autorizacao_cartao>();
            //var repSaida = new RepositorioGenerico<tb_saida>();
            tb_autorizacao_cartao _autorizacao_cartaoE;

            try
            {
                foreach (Cartao.RespostaAprovada respostaAprovada in resultadoProcessamento.ListaRespostaAprovada)
                {
                    _autorizacao_cartaoE = new tb_autorizacao_cartao();
                    _autorizacao_cartaoE.codigoAutorizacaoAdquirente = respostaAprovada.CodAutorizacaoAdquirente;
                    _autorizacao_cartaoE.dataHoraAutorizacao         = respostaAprovada.DataHoraAutorizacao;
                    _autorizacao_cartaoE.nomeAdquirente     = respostaAprovada.NomeAdquirente;
                    _autorizacao_cartaoE.nomeBandeiraCartao = respostaAprovada.NomeBandeiraCartao;
                    _autorizacao_cartaoE.nsuAdquirente      = String.IsNullOrEmpty(respostaAprovada.NsuAdquirente) ? "" : respostaAprovada.NsuAdquirente;
                    _autorizacao_cartaoE.nsuTef             = String.IsNullOrEmpty(respostaAprovada.NsuTef) ? "" : respostaAprovada.NsuTef;
                    _autorizacao_cartaoE.numeroControle     = String.IsNullOrEmpty(respostaAprovada.NumeroControle) ? "" : respostaAprovada.NumeroControle;

                    repAutorizacao.Inserir(_autorizacao_cartaoE);
                    repAutorizacao.SaveChanges();
                    foreach (tb_solicitacao_saida solicitacaoSaida in listaSolicitacaoSaida)
                    {
                        var saceEntities = (SaceEntities)repAutorizacao.ObterContexto();
                        var query        = from saida in saceEntities.tb_saida
                                           where saida.codSaida == solicitacaoSaida.codSaida
                                           select saida;

                        tb_saida saidaE = query.FirstOrDefault();

                        _autorizacao_cartaoE.tb_saida.Add(saidaE);
                    }

                    repAutorizacao.SaveChanges();
                }
            }
            catch (Exception e)
            {
                throw new DadosException("Autorização Cartão", e.Message, e);
            }
            return(0);
        }