private UtilRetorno atualizar(ConfiguracaoPromocao New)
        {
            var Retorno = new UtilRetorno();

            var Old = db.ConfiguracaoPromocao.Find(New.id);

            New.setDefaultUpdateValues <ConfiguracaoPromocao>();

            var Entry = db.Entry(Old);

            Entry.CurrentValues.SetValues(New);
            Entry.ignoreFields <ConfiguracaoPromocao>();

            db.SaveChanges();

            if (New.id > 0)
            {
                Retorno.flagError = false;
                Retorno.listaErros.Add("Configuração Atualizada com sucesso");
            }
            else
            {
                Retorno.flagError = true;
                Retorno.listaErros.Add("Ocorreu um erro ao persistir os dados");
            }

            return(Retorno);
        }
 public UtilRetorno salvar(ConfiguracaoPromocao NewObj)
 {
     if (NewObj.id == 0)
     {
         return(inserir(NewObj));
     }
     return(atualizar(NewObj));
 }
        private UtilRetorno inserir(ConfiguracaoPromocao NewObj)
        {
            var Retorno = new UtilRetorno();

            NewObj.setDefaultInsertValues <ConfiguracaoPromocao>();

            db.ConfiguracaoPromocao.Add(NewObj);

            db.SaveChanges();

            if (NewObj.id > 0)
            {
                Retorno.flagError = false;
                Retorno.listaErros.Add("Configuração Cadastrada com sucesso");
            }
            else
            {
                Retorno.flagError = true;
                Retorno.listaErros.Add("Ocorreu um erro ao persistir os dados");
            }

            return(Retorno);
        }
Esempio n. 4
0
        //Gerar saldo inicial quando houve promoção ativa
        public UtilRetorno gerarSaldoInicial(int id, int idOrganizacaoParam)
        {
            UtilRetorno ORetorno = new UtilRetorno {
                flagError = false
            };

            ConfiguracaoPromocao OConfiguracaoPromocao = this.OConfiguracaoPromocaoConsultaBL.carregar();

            if (OConfiguracaoPromocao.id == 0 || OConfiguracaoPromocao.valorPremioNovoMembro <= 0)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("Não existem promoções disponíveis!");

                return(ORetorno);
            }

            if (OConfiguracaoPromocao.dtInicioPremioNovoMembro > DateTime.Now.Date || OConfiguracaoPromocao.dtFimPremioNovoMembro < DateTime.Now.Date)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("Não existem promoções disponíveis!");

                return(ORetorno);
            }

            if (id == 0)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("Não foi possível localizar o membro!");

                return(ORetorno);
            }

            Associado OMembro = this.OAssociadoConsultaBL.queryNoFilter().FirstOrDefault(x => x.id == id) ?? new Associado();

            if (OMembro.id.toInt() == 0)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("Não foi possível localizar o membro!");

                return(ORetorno);
            }

            if (OMembro.idTipoCadastro == AssociadoTipoCadastroConst.COMERCIANTE)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("Tipo de cadastro inválido para aplicação da promoção!");

                return(ORetorno);
            }

            MembroSaldo OSaldo = this.OMembroSaldoConsultaBL.query(id, idOrganizacaoParam).FirstOrDefault() ?? new MembroSaldo();

            if (OSaldo.saldoAtual > 0)
            {
                ORetorno.flagError = true;
                ORetorno.listaErros.Add("O membro já possui saldo no sistema!");

                return(ORetorno);
            }

            MovimentoOperacaoDTO OTransacao = new MovimentoOperacaoDTO();

            OTransacao.nroContaOrigem   = 1;
            OTransacao.nroContaDestino  = OMembro.nroAssociado.toInt();
            OTransacao.valorOperacao    = OConfiguracaoPromocao.valorPremioNovoMembro.toDecimal();
            OTransacao.flagIgnorarSenha = true;

            OTransacao = this.CarregadorDados.carregar(OTransacao);

            ORetorno = this.OTransferenciaFacade.transferir(OTransacao);

            return(ORetorno);
        }