public int ArquivarContribuicao(Contribuicao e)
        {
            using (var ctx = new DesenvContext())
            {
                try
                {
                    var entity = ctx.tblContribuicao.FirstOrDefault(x => x.intContribuicaoID == e.ContribuicaoId);
                    if (entity != null)
                    {
                        var contribuicaoArquivada = new tblContribuicoes_Arquivadas()
                        {
                            intContribuicaoID   = entity.intContribuicaoID,
                            intClientID         = e.ClientId,
                            dteDataCriacao      = DateTime.Now,
                            bitAprovarMaisTarde = e.BitAprovarMaisTarde
                        };

                        ctx.tblContribuicoes_Arquivadas.Add(contribuicaoArquivada);
                    }
                    return(ctx.SaveChanges());
                }
                catch
                {
                    return(0);
                }
            }
        }
        public ActionResult buscarVencimentos(int?idContribuicao, int?idAssociado)
        {
            Contribuicao OContribuicao = this.OContribuicaoBL.carregar(UtilNumber.toInt32(idContribuicao));

            if (OContribuicao == null)
            {
                return(Json(new JsonMessage {
                    error = true, message = "Esse método precisa do código da contribuicao para calcular o valor."
                }, JsonRequestBehavior.AllowGet));
            }

            var listaVencimentos = OContribuicao.listaContribuicaoVencimento.Where(x => x.dtExclusao == null)
                                   .ToList()
                                   .Select(x => string.Concat(x.diaVencimento.ToString().PadLeft(2, '0'), "/", x.mesVencimento.ToString().PadLeft(2, '0')))
                                   .ToList();

            var OVencimento = this.OAssociadoContribuicaoVencimentoBL.retornarProximoVencimento(OContribuicao, UtilNumber.toInt32(idAssociado)) ?? new ContribuicaoVencimento();


            return(Json(new { error = false,
                              listaVencimentos,
                              qtdeMeses = OContribuicao.PeriodoContribuicao?.qtdeMeses,
                              dtVencimento = OVencimento.dtVencimento.exibirData(),
                              flagVencimentoFixo = (listaVencimentos.Count > 0) },
                        JsonRequestBehavior.AllowGet));
        }
Beispiel #3
0
 public int EncaminharContribuicao(Contribuicao e)
 {
     using (MiniProfiler.Current.Step("[INSERT] - Encaminhar CA"))
     {
         return(_rep.EncaminharContribuicao(e));
     }
 }
        //Persistir e inserir um novo registro
        //Inserir Contribuicao e lista de ContribuicaoPreco vinculados
        protected override bool inserir(Contribuicao OContribuicao)
        {
            OContribuicao.setDefaultInsertValues();

            OContribuicao.listaContribuicaoVencimento.ForEach(Item => {
                Item.setDefaultInsertValues();
            });

            OContribuicao.listaContribuicaoPreco = null;

            OContribuicao.PeriodoContribuicao = null;

            OContribuicao.TipoGeracaoContribuicao = null;

            OContribuicao.TipoVencimento = null;

            OContribuicao.CentroCusto = null;

            OContribuicao.MacroConta = null;

            OContribuicao.CategoriaTitulo = null;

            OContribuicao.ContaBancaria = null;

            db.Contribuicao.Add(OContribuicao);

            db.SaveChanges();

            return(OContribuicao.id > 0);
        }
 public int EncaminharContribuicao(Contribuicao e)
 {
     using (var ctx = new DesenvContext())
     {
         try
         {
             foreach (var idProfessor in e.ProfessoresSelecionados)
             {
                 var obj = new tblContribuicao_Encaminhadas
                 {
                     intContribuicaoID     = e.ContribuicaoId,
                     intClientID           = e.ClientId,
                     intEmployeeID         = idProfessor,
                     dteDataEncaminhamento = DateTime.Now
                 };
                 ctx.tblContribuicao_Encaminhadas.Add(obj);
             }
             return(ctx.SaveChanges());
         }
         catch
         {
             return(0);
         }
     }
 }
        public IActionResult Gravar([FromForm] Contribuicao contribuicao)
        {
            string mensagem = null;

            if (contribuicao == null)
            {
                mensagem = "Dados inválidos!";
            }
            else
            {
                mensagem = contribuicao.Validar();
            }

            if (mensagem != null)
            {
                return(Erro(mensagem));
            }

            if (contribuicao.Codigo == 0)
            {
                ContribuicaoRepository.Criar(contribuicao);
            }
            else
            {
                ContribuicaoRepository.Alterar(contribuicao);
            }

            return(Ok());
        }
        public int InserirContribuicao(Contribuicao e)
        {
            using (var ctx = new DesenvContext())
            {
                var entity = new tblContribuicao()
                {
                    intClientID          = e.ClientId,
                    intApostilaID        = e.ApostilaId,
                    dteDataCriacao       = DateTime.Now,
                    txtDescricao         = e.Descricao,
                    bitAtiva             = true,
                    txtOrigem            = e.Origem,
                    bitEditado           = false,
                    txtEstado            = e.Estado,
                    intNumCapitulo       = Convert.ToInt32(e.NumeroCapitulo),
                    txtTrechoSelecionado = e.TrechoApostila,
                    txtCodigoMarcacao    = e.CodigoMarcacao,
                    txtOrigemSubnivel    = e.OrigemSubnivel,
                    intOpcaoPrivacidade  = (int)e.OpcaoPrivacidade,
                    intTipoCategoria     = (int)e.TipoCategoria,
                    intTipoContribuicao  = (int)e.TipoContribuicao,
                };


                ctx.tblContribuicao.Add(entity);
                ctx.SaveChanges();
                return(entity.intContribuicaoID);
            }
        }
Beispiel #8
0
 public int AprovarContribuicao(Contribuicao e)
 {
     using (MiniProfiler.Current.Step("[SELECT] - Obtendo o estado do aluno"))
     {
         return(_rep.AprovarContribuicao(e));
     }
 }
 public bool HasContribuicaoArquivada(Contribuicao e)
 {
     using (var ctx = new DesenvContext())
     {
         return(ctx.tblContribuicoes_Arquivadas
                .Any(x => x.intClientID == e.ClientId && x.intContribuicaoID == e.ContribuicaoId && x.bitAprovarMaisTarde == e.BitAprovarMaisTarde));
     }
 }
        //Realizar os tratamentos necessários
        //Salvar um novo registro
        public override bool salvar(Contribuicao OContribuicao)
        {
            OContribuicao.idTipoContribuicao = TipoContribuicaoConst.ANUIDADES;

            OContribuicao.descricao = String.Concat("Anuidade ", OContribuicao.anoInicioVigencia.ToString());

            return(base.salvar(OContribuicao));
        }
Beispiel #11
0
        public int InserirContribuicao(Contribuicao e)
        {
            if (e.ContribuicaoId == 0)
            {
                using (MiniProfiler.Current.Step("[SELECT] - Obtendo o estado do aluno"))
                {
                    e.Estado = Utilidades.GetEstadoCursoAluno(e.ClientId);
                }

                using (MiniProfiler.Current.Step("[INSERT] - Inserindo contribuição no BD"))
                {
                    e.ContribuicaoId = _rep.InserirContribuicao(e);
                }

                using (MiniProfiler.Current.Step("[INSERT] - Inserindo arquivos da CA no BD"))
                {
                    foreach (var item in e.Arquivos)
                    {
                        item.ContribuicaoID = e.ContribuicaoId;
                        var result = _repArquivo.InserirContribuicaoArquivo(item);
                        if (result == 0)
                        {
                            return(result);
                        }
                    }
                }

                return(e.ContribuicaoId);
            }
            else
            {
                var ret = 0;
                using (MiniProfiler.Current.Step("[UPDATE] - Atualizando CA"))
                {
                    ret = _rep.UpdateContribuicao(e);
                }

                using (MiniProfiler.Current.Step("[INSERT] Inserindo ou atualizando arquivos da CA no BD"))
                {
                    foreach (var item in e.Arquivos)
                    {
                        if (item.Id == 0)
                        {
                            item.ContribuicaoID = e.ContribuicaoId;
                            _repArquivo.InserirContribuicaoArquivo(item);
                        }
                        else
                        {
                            _repArquivo.UpdateContribuicaoArquivo(item);
                        }
                    }
                }

                return(ret);
            }
        }
        public int UpdateContribuicao(Contribuicao e)
        {
            using (var ctx = new DesenvContext())
            {
                var entity = ctx.tblContribuicao.FirstOrDefault(x => x.intContribuicaoID == e.ContribuicaoId);

                entity.txtDescricao = e.Descricao;
                entity.bitEditado   = true;
                return(ctx.SaveChanges());
            }
        }
        public int AprovarContribuicao(Contribuicao e)
        {
            using (var ctx = new DesenvContext())
            {
                var entity = ctx.tblContribuicao.FirstOrDefault(x => x.intContribuicaoID == e.ContribuicaoId);
                entity.bitAprovacaoMedgrupo = true;
                entity.intMedGrupoID        = e.MedGrupoID;

                return(ctx.SaveChanges());
            }
        }
        //Desvincula de um associado a contribuição.
        public ContribuicaoVencimento retornarProximoVencimento(Contribuicao Contribuicao, int idAssociado)
        {
            if (Contribuicao.idTipoVencimento == TipoVencimentoConst.FIXO_PELA_CONTRIBUICAO)
            {
                return(this.retornarVencimentoFixo(Contribuicao));
            }

            var OVencimento = this.retornarVencimentoAdmissao(Contribuicao, idAssociado);

            return(OVencimento);
        }
Beispiel #15
0
        //
        public bool registrarEmailsCobrancas(Contribuicao OContribuicao, List <int> idsAssociadoContribuicoes)
        {
            var ONotificacao = this.gerarNotificacao(OContribuicao);

            if (ONotificacao.id > 0)
            {
                this.vincularAssociados(ONotificacao, idsAssociadoContribuicoes);

                return(true);
            }

            return(false);
        }
        //Persistir e inserir um novo registro
        //Inserir Contribuicao e lista de ContribuicaoPreco vinculados
        protected virtual bool inserir(Contribuicao OContribuicao)
        {
            OContribuicao.setDefaultInsertValues();

            OContribuicao.listaContribuicaoPreco.ForEach(Item => {
                Item.setDefaultInsertValues();
                Item.TipoAssociado = null;
            });

            db.Contribuicao.Add(OContribuicao);
            db.SaveChanges();

            return(OContribuicao.id > 0);
        }
        //Atributos

        //Propriedades

        //
        public UtilRetorno validar(Contribuicao OContribuicao)
        {
            var ORetorno = UtilRetorno.newInstance(false);

            if (OContribuicao.flagBoletoBancarioPermitido == true)
            {
            }

            if (OContribuicao.flagCartaoCreditoPermitido == true)
            {
            }

            return(ORetorno);
        }
        //Persistir e atualizar um registro existente
        //Atualizar dados da Contribuicao e lista de ContribuicaoPreco
        protected virtual bool atualizar(Contribuicao OContribuicao)
        {
            //Localizar existentes no banco
            Contribuicao dbContribuicao = this.carregar(OContribuicao.id);

            //Configurar valores padrão
            OContribuicao.setDefaultUpdateValues();

            //Atualizacao da lista de preços enviados
            foreach (var ItemContribuicaoPreco in OContribuicao.listaContribuicaoPreco)
            {
                var dbContribuicaoPreco = db.ContribuicaoPreco.FirstOrDefault(e => e.id == ItemContribuicaoPreco.id);

                ItemContribuicaoPreco.TipoAssociado = null;

                if (dbContribuicaoPreco == null)
                {
                    ItemContribuicaoPreco.idContribuicao = OContribuicao.id;

                    ItemContribuicaoPreco.setDefaultInsertValues();

                    ItemContribuicaoPreco.flagSistema = "N";

                    db.ContribuicaoPreco.Add(ItemContribuicaoPreco);
                }
                else
                {
                    var ContribuicaoPrecoEntry = db.Entry(dbContribuicaoPreco);

                    ItemContribuicaoPreco.flagSistema = "N";

                    ItemContribuicaoPreco.setDefaultUpdateValues();

                    ItemContribuicaoPreco.ativo = "S";

                    ContribuicaoPrecoEntry.CurrentValues.SetValues(ItemContribuicaoPreco);

                    ContribuicaoPrecoEntry.ignoreFields(new[] { "idTipoAssociado", "idContribuicao" });
                }
            }

            //Atualizacao da Contribuição
            var ContribuicaoEntry = db.Entry(dbContribuicao);

            ContribuicaoEntry.CurrentValues.SetValues(OContribuicao);
            ContribuicaoEntry.ignoreFields(new[] { "idTipoContribuicao" });

            db.SaveChanges();
            return(OContribuicao.id > 0);
        }
Beispiel #19
0
        //Verificar se já existe uma anuidade com para o ano informado
        public override bool existe(Contribuicao OContribuicao)
        {
            var db = this.getDataContext();

            var query = from Contr in db.Contribuicao.AsNoTracking()
                        where
                        Contr.id != OContribuicao.id &&
                        Contr.descricao == OContribuicao.descricao &&
                        Contr.dtCancelamento == null
                        select
                        Contr;

            bool flagExiste = (query.Count() > 0);

            return(flagExiste);
        }
Beispiel #20
0
        public static void Criar(Contribuicao contribuicao)
        {
            using (MySqlConnection connection = Sql.Open())
            {
                using (MySqlCommand command = new MySqlCommand(@"
                INSERT INTO contribuicao (codigo_usuario, codigo_tarefa) 
                VALUES (@codigo_usuario, @codigo_tarefa);
                ", connection))
                {
                    command.Parameters.AddWithValue("@codigo_usuario", contribuicao.CodigoUsuario);
                    command.Parameters.AddWithValue("@codigo_tarefa", contribuicao.CodigoTarefa);

                    command.ExecuteNonQuery();
                }
            }
        }
        //Verificar se já existe uma anuidade com para o ano informado
        public override bool existe(Contribuicao OContribuicao)
        {
            var query = from Contr in db.Contribuicao.AsNoTracking()
                        where
                        Contr.id != OContribuicao.id &&
                        Contr.anoInicioVigencia == OContribuicao.anoInicioVigencia &&
                        Contr.dtCancelamento == null
                        select
                        Contr;

            query = query.condicoesSeguranca();

            bool flagExiste = query.Any();

            return(flagExiste);
        }
        //Realizar os tratamentos necessários
        //Salvar um novo registro
        public virtual bool salvar(Contribuicao OContribuicao)
        {
            if (Convert.ToInt32(OContribuicao.mesInicioVigencia) == 0)
            {
                OContribuicao.mesInicioVigencia = 1;
            }

            OContribuicao.dtInicioVigencia = new DateTime(Convert.ToInt32(OContribuicao.anoInicioVigencia), Convert.ToInt32(OContribuicao.mesInicioVigencia), 1, 00, 00, 00);

            if (OContribuicao.id == 0)
            {
                return(this.inserir(OContribuicao));
            }

            return(this.atualizar(OContribuicao));
        }
        // Vincular contribuição ao Associado
        private void vincularContribuicao()
        {
            try {
                ConfiguracaoContribuicao OConfiguracaoContribuicao = ConfiguracaoContribuicaoBL.getInstance.carregar();

                var Contribuicao = new Contribuicao();

                //if (OConfiguracaoContribuicao.idTipoContribuicaoAtual == TipoContribuicaoConst.ANUIDADES) {
                //    Contribuicao = this.OContribuicaoAtualBL.carregarAnuidade((short) DateTime.Today.Year);
                //} else {
                //       Contribuicao = this.OContribuicaoAtualBL.carregarMensalidade((short)DateTime.Today.Month, (short)DateTime.Today.Year);
                //   }

                if (Contribuicao == null)
                {
                    return;
                }

                //      AssociadoContribuicao OAssociadoContribuicao = new AssociadoContribuicao();

                //      OAssociadoContribuicao.Associado = this.OAssociado;

                //OAssociadoContribuicao.idAssociado = this.OAssociado.id;

                //OAssociadoContribuicao.idTipoAssociado = UtilNumber.toInt32(this.OAssociado.idTipoAssociado);

                //OAssociadoContribuicao.Contribuicao = Contribuicao;

                //OAssociadoContribuicao.idContribuicao = Contribuicao.id;

                //OAssociadoContribuicao.valorOriginal = Contribuicao.retornarValorVigente(UtilNumber.toInt32(this.OAssociado.idTipoAssociado), true);

                //OAssociadoContribuicao.valorAtual = OAssociadoContribuicao.valorOriginal;

                //OAssociadoContribuicao.dtVencimentoOriginal = Contribuicao.retornarVencimentoVigente(UtilNumber.toInt32(this.OAssociado.idTipoAssociado), OConfiguracaoContribuicao);

                //OAssociadoContribuicao.dtVencimentoAtual = OAssociadoContribuicao.dtVencimentoOriginal;

                //if(OConfiguracaoContribuicao.idTipoContribuicaoAtual == TipoContribuicaoConst.ANUIDADES) {
                //    this.OAssociadoAnuidadeBL.salvar(OAssociadoContribuicao);
                //} else {
                //    this.OAssociadoMensalidadeBL.salvar(OAssociadoContribuicao);
                //}
            } catch (Exception ex) {
                UtilLog.saveError(ex, String.Format("Erro ao vincular uma anuidade para o associado {0}", this.OAssociado.Pessoa.nome));
            }
        }
Beispiel #24
0
        public async Task <Contribuicao> InserirContribuicao(Contribuicao e)
        {
            if (!e.Valido(_contribuicaoRep))
            {
                return(e);
            }

            await _contribuicaoRep.Adicionar(e);

            foreach (var arquivo in e.Arquivos)
            {
                arquivo.ContribuicaoId = e.Id;
                await _contribuicaoArquivosRep.Adicionar(arquivo);
            }

            return(e);
        }
        //Realizar os tratamentos necessários
        //Salvar um novo registro
        public override bool salvar(Contribuicao OContribuicao)
        {
            bool flagSucesso;

            if (OContribuicao.id == 0)
            {
                flagSucesso = this.inserir(OContribuicao);

                this.OContribuicaoVencimentoBL.salvarLote(OContribuicao, OContribuicao.listaContribuicaoVencimento);

                return(flagSucesso);
            }

            flagSucesso = this.atualizar(OContribuicao);

            return(flagSucesso);
        }
        //Persistir e atualizar um registro existente
        //Atualizar dados da Contribuicao e lista de ContribuicaoPreco
        protected override bool atualizar(Contribuicao OContribuicao)
        {
            //Localizar existentes no banco
            Contribuicao dbContribuicao = this.carregar(OContribuicao.id);

            //Configurar valores padrão
            OContribuicao.setDefaultUpdateValues();

            //Atualizacao da Contribuição
            var ContribuicaoEntry = db.Entry(dbContribuicao);

            ContribuicaoEntry.CurrentValues.SetValues(OContribuicao);
            ContribuicaoEntry.ignoreFields(new[] { "idPeriodoContribuicao", "idTipoVencimento" });

            db.SaveChanges();
            return(OContribuicao.id > 0);
        }
        //Verificar se o contato já existe
        public bool validarVencimento(Contribuicao OContribuicao, DateTime dtVencimento)
        {
            if (OContribuicao.idTipoVencimento != TipoVencimentoConst.FIXO_PELA_CONTRIBUICAO)
            {
                return(true);
            }

            byte dia = (byte)dtVencimento.Day;

            byte mes = (byte)dtVencimento.Month;

            var listaVencimentos = OContribuicao.listaContribuicaoVencimento.Where(x => x.dtExclusao == null).ToList();

            bool flagExiste = listaVencimentos.Any(x => x.diaVencimento == dia && x.mesVencimento == mes);

            return(flagExiste);
        }
        //Atributos

        //Propriedades


        //Carregameno da ultima contribuicao do sistema
        public Contribuicao carregar()
        {
            ConfiguracaoContribuicao OConfiguracaoContribuicao = ConfiguracaoContribuicaoBL.getInstance.carregar();

            Contribuicao Contribuicao = new Contribuicao();

            //if (OConfiguracaoContribuicao.idTipoContribuicaoAtual == TipoContribuicaoConst.ANUIDADES) {

            //    Contribuicao = this.carregarAnuidade((short) DateTime.Today.Year);

            //} else {

            //       Contribuicao = this.carregarMensalidade((short)DateTime.Today.Month, (short)DateTime.Today.Year);

            //   }

            return(Contribuicao);
        }
Beispiel #29
0
        //Verificar se a quantidade de dias de antecedencia nao antecede o periodo da contribuicao
        private bool validarQtdeDias(Contribuicao OContribuicao)
        {
            var OContribuicaoDb = this.OContribuicaoPadraoBL.carregar(OContribuicao.id);

            var OPeriodo = OContribuicaoDb.PeriodoContribuicao;

            if (OPeriodo == null)
            {
                return(false);
            }

            if (OPeriodo.qtdeDias <= OContribuicao.qtdeDiasEnvioCobranca)
            {
                return(false);
            }

            return(true);
        }
Beispiel #30
0
        //
        private NotificacaoSistema gerarNotificacao(Contribuicao OContribuicao)
        {
            var ONotificacao = new NotificacaoSistema();

            ONotificacao.idOrganizacao             = OContribuicao.idOrganizacao;
            ONotificacao.flagEmail                 = true;
            ONotificacao.flagTodosAssociados       = false;
            ONotificacao.flagAssociadosEspecificos = true;
            ONotificacao.flagSistema               = false;
            ONotificacao.flagMobile                = false;

            ONotificacao.idTipoNotificacao = TipoNotificacaoConst.COBRANCA_CONTRIBUICAO;
            ONotificacao.titulo            = OContribuicao.emailCobrancaTitulo;
            ONotificacao.notificacao       = OContribuicao.emailCobrancaHtml;

            this.ONotificacaoSistemaCadastroBL.salvar(ONotificacao);

            return(ONotificacao);
        }