public void Add(Notificacao notificacao) { notificacao.Id = 0; notificacao.DeId = notificacao.De.Id; notificacao.ParaId = notificacao.Para.Id; this.Db.Insert(notificacao); }
public void Salvar(Notificacao notificacao) { ValidarNotificacaoInformada(notificacao); repositorio.Salvar(notificacao); }
public ConfigNotificacao(Notificacao notificacao) { Notificacao = notificacao; }
public override int SaveChanges() { foreach (var entry in ChangeTracker.Entries()) { if (entry.State != EntityState.Unchanged) { var log = new Log(); log.TableName = entry.Entity.GetType().ToString(); log.QueryType = entry.State.ToString(); StringBuilder data = new StringBuilder(); foreach (var prop in entry.Entity.GetType().GetProperties()) { if (data.Length > 0) { data.Append(";"); } data.Append(prop.Name); data.Append(":"); data.Append(prop.GetValue(entry.Entity)); } log.Data = data.ToString(); this.Log.Add(log); } } foreach (var entry in ChangeTracker.Entries()) { if (entry.Entity is NotificacaoMetaData && entry.State != EntityState.Unchanged) { var notificacao = new Notificacao(); bool IsValid = false; notificacao.TipoNotificacao = entry.State.ToString(); notificacao.EntidadeModificada = entry.Entity.GetType().ToString(); notificacao.DataNotificacao = DateTime.Now; if (entry.Cast <NotificacaoMetaData>().Entity.GetTipoNotificacao() == typeof(Grupo)) { var grupo = ((Grupo)entry.Entity); notificacao.Grupo = grupo; notificacao.GrupoId = grupo.Id; notificacao.Texto = string.Format("O grupo {0} foi {1}", grupo.Nome.LimitLines(), entry.State.ToPortuguese().LimitLines()); IsValid = true; } else if (entry.Cast <NotificacaoMetaData>().Entity.GetTipoNotificacao() == typeof(Quest)) { var quest = ((Quest)entry.Entity); if (quest.GrupoCriadorId != null) { notificacao.Grupo = quest.GrupoCriador; notificacao.Texto = string.Format("A Quest {0} do grupo {1} foi {2}", quest.Nome.LimitLines(), quest.GrupoCriador.Nome.LimitLines(), entry.State.ToPortuguese().LimitLines()); IsValid = true; } } else if (entry.Cast <NotificacaoMetaData>().Entity.GetTipoNotificacao() == typeof(Task)) { var task = ((Task)entry.Entity); if (task.Quest.GrupoCriador != null) { notificacao.Grupo = task.Quest.GrupoCriador; notificacao.GrupoId = task.Quest.GrupoCriador.Id; notificacao.Texto = string.Format("A Task {0} do grupo {1} foi {2}", task.Nome.LimitLines(), task.Quest.GrupoCriador.Nome.LimitLines(), entry.State.ToPortuguese().LimitLines()); IsValid = true; } } else if (entry.Cast <NotificacaoMetaData>().Entity.GetTipoNotificacao() == typeof(Feedback)) { var feedback = ((Feedback)entry.Entity); if (feedback.Task.Quest.GrupoCriador != null) { notificacao.Grupo = feedback.Task.Quest.GrupoCriador; notificacao.GrupoId = feedback.Task.Quest.GrupoCriador.Id; notificacao.Texto = string.Format("Um Feedback referente ao grupo {0} foi {1}", feedback.Task.Quest.GrupoCriador.Nome.LimitLines(), entry.State.ToPortuguese().LimitLines()); IsValid = true; } } if (IsValid) { this.Notificacao.Add(notificacao); } } } return(base.SaveChanges()); }
public ValidationFailureCustom(string propertyName, string errorMessage, Notificacao _Notificacao) : this(propertyName, errorMessage) { Notificacao = _Notificacao; }
public ActionResult AdicionarResultado(Resultado r) { Jogo j = JogoDAO.Jogo(r.CodJogo); j.Ocorreu = 1; JogoDAO.Altera(j); // Calculo de pontos de cada usuario foreach (Votacao v in VotacaoDAO.ListaDeVotosDoJogo(j.Id)) { Usuario u = UsuarioDAO.returnUsuario(v.CodUsuario); Notificacao n = new Notificacao(); n.pontosGanhos = u.qntsPontos; if (r.QtdGolA > r.QtdGolB && v.CodTimeVotado == j.CodTimeA) { if (j.QtdVotosTimeA >= j.QtdVotosTimeB && j.QtdVotosTimeA >= j.QtdVotosEmpate) { u.qntsPontos += 100; } if (j.QtdVotosTimeA > j.QtdVotosTimeB && j.QtdVotosTimeA < j.QtdVotosEmpate) { u.qntsPontos += 300; } if (j.QtdVotosTimeA < j.QtdVotosTimeB && j.QtdVotosTimeA > j.QtdVotosEmpate) { u.qntsPontos += 300; } if (j.QtdVotosTimeA < j.QtdVotosTimeB && j.QtdVotosTimeA < j.QtdVotosEmpate) { u.qntsPontos += 500; } } if (r.QtdGolA < r.QtdGolB && v.CodTimeVotado == j.CodTimeB) { if (j.QtdVotosTimeB >= j.QtdVotosTimeA && j.QtdVotosTimeB >= j.QtdVotosEmpate) { u.qntsPontos += 100; } if (j.QtdVotosTimeB > j.QtdVotosTimeA && j.QtdVotosTimeB < j.QtdVotosEmpate) { u.qntsPontos += 300; } if (j.QtdVotosTimeB < j.QtdVotosTimeA && j.QtdVotosTimeB > j.QtdVotosEmpate) { u.qntsPontos += 300; } if (j.QtdVotosTimeB < j.QtdVotosTimeA && j.QtdVotosTimeB < j.QtdVotosEmpate) { u.qntsPontos += 500; } } if (r.QtdGolA == r.QtdGolB && v.CodTimeVotado == 0) { if (j.QtdVotosEmpate >= j.QtdVotosTimeA && j.QtdVotosEmpate >= j.QtdVotosTimeB) { u.qntsPontos += 100; } if (j.QtdVotosEmpate > j.QtdVotosTimeA && j.QtdVotosEmpate < j.QtdVotosTimeB) { u.qntsPontos += 300; } if (j.QtdVotosEmpate < j.QtdVotosTimeA && j.QtdVotosEmpate > j.QtdVotosTimeB) { u.qntsPontos += 300; } if (j.QtdVotosEmpate < j.QtdVotosTimeA && j.QtdVotosEmpate < j.QtdVotosTimeB) { u.qntsPontos += 500; } } n.pontosGanhos = u.qntsPontos - n.pontosGanhos; n.data = DateTime.Now; n.CodJogo = j.Id; n.CodUsuario = u.Id; NotificacaoDAO.Adicionar(n); UsuarioDAO.Alterar(u); } ResultadoDAO.Adiciona(r); return(RedirectToAction("AdicionaResultado", "Admin")); }
public void AdicionarNotificacao(Notificacao notificacao) { _listaNotificacoes.Add(notificacao); }
public void Handle(Notificacao notificacao) { _notificacoes.Add(notificacao); }
public int SetNotificacao(Notificacao notificacao) { return(new NotificacaoBusiness(new NotificacaoEntity(), new AccessEntity(), new AlunoEntity(), new NotificacaoDuvidasAcademicasEntity(), new MenuBusiness(new MenuEntity(), new PessoaEntity(), new BlackListEntity())).SetNotificacaoLida(notificacao)); }
public void showNotification(string title, string msg, float time) { Notificacao notify = this.notifiPopup.GetComponent <Notificacao>(); notify.show(title, msg, time); }
public NotificacaoVM() { Notificacao = new Notificacao(); ArquivoVM = new ArquivoVM(); }
public Notificacao Criar(Notificacao notificacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@" insert into {0}tab_fisc_notificacao (id, fiscalizacao, forma_iuf, forma_jiapi, forma_core, forma_iuf_data, forma_jiapi_data, forma_core_data, tid) values ({0}seq_tab_fisc_notificacao.nextval, :fiscalizacao, :forma_iuf, :forma_jiapi, :forma_core, :forma_iuf_data, :forma_jiapi_data, :forma_core_data, :tid) returning id into :id", EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", notificacao.FiscalizacaoId, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf", notificacao.FormaIUF, DbType.Int32); comando.AdicionarParametroEntrada("forma_jiapi", notificacao.FormaJIAPI, DbType.Int32); comando.AdicionarParametroEntrada("forma_core", notificacao.FormaCORE, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf_data", notificacao.DataIUF.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_jiapi_data", notificacao.DataJIAPI.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_core_data", notificacao.DataCORE.Data, DbType.Date); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); comando.AdicionarParametroSaida("id", DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); notificacao.Id = Convert.ToInt32(comando.ObterValorParametro("id")); #region Anexos foreach (var item in (notificacao.Anexos ?? new List <Anexo>())) { comando = bancoDeDados.CriarComando(@" insert into {0}tab_fisc_notificacao_arq a (id, notificacao, arquivo, ordem, descricao, tid) values ({0}seq_tab_fisc_notificacao_arq.nextval, :notificacao, :arquivo, :ordem, :descricao, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("arquivo", item.Arquivo.Id, DbType.Int32); comando.AdicionarParametroEntrada("ordem", item.Ordem, DbType.Int32); comando.AdicionarParametroEntrada("descricao", DbType.String, 100, item.Descricao); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados); Consulta.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados); bancoDeDados.Commit(); } return(notificacao); }
public Notificacao Obter(int fiscalizacaoId, BancoDeDados banco = null) { var notificacao = new Notificacao(); using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { Comando comando = bancoDeDados.CriarComando(@" select tfn.id, f.id as fiscalizacao, tfn.forma_iuf, tfn.forma_jiapi, tfn.forma_core, tfn.forma_iuf_data, tfn.forma_jiapi_data, tfn.forma_core_data, coalesce(cast(m.iuf_numero as varchar2(10)), tfi.numero_auto_infracao_bloco, cast(f.autos as varchar2(10))) iuf_numero, coalesce(i.pessoa, i.responsavel) pessoa from tab_fiscalizacao f left join tab_fisc_notificacao tfn on (tfn.fiscalizacao = f.id ) left join tab_fisc_multa m on (m.fiscalizacao = f.id ) left join tab_fisc_local_infracao i on (i.fiscalizacao = f.id) left join tab_fisc_infracao tfi on (tfi.fiscalizacao = f.id) where f.id = :fiscalizacao" , EsquemaBanco); comando.AdicionarParametroEntrada("fiscalizacao", fiscalizacaoId, DbType.Int32); using (IDataReader reader = bancoDeDados.ExecutarReader(comando)) { if (reader.Read()) { notificacao = new Notificacao { Id = reader.GetValue <int>("id"), FiscalizacaoId = reader.GetValue <int>("fiscalizacao"), NumeroIUF = reader.GetValue <string>("iuf_numero"), FormaIUF = reader.GetValue <int>("forma_iuf"), FormaJIAPI = reader.GetValue <int>("forma_jiapi"), FormaCORE = reader.GetValue <int>("forma_core"), AutuadoPessoaId = reader.GetValue <int>("pessoa") }; notificacao.DataIUF.Data = reader.GetValue <DateTime>("forma_iuf_data"); notificacao.DataJIAPI.Data = reader.GetValue <DateTime>("forma_jiapi_data"); notificacao.DataCORE.Data = reader.GetValue <DateTime>("forma_core_data"); if (notificacao.DataIUF.Data.HasValue && notificacao.DataIUF.Data.Value.Year == 1) { notificacao.DataIUF = new DateTecno(); } if (notificacao.DataJIAPI.Data.HasValue && notificacao.DataJIAPI.Data.Value.Year == 1) { notificacao.DataJIAPI = new DateTecno(); } if (notificacao.DataCORE.Data.HasValue && notificacao.DataCORE.Data.Value.Year == 1) { notificacao.DataCORE = new DateTecno(); } notificacao.AutuadoPessoa = notificacao.AutuadoPessoaId > 0 ? new PessoaBus().Obter(notificacao.AutuadoPessoaId) : new Pessoa(); } else { notificacao = null; } reader.Close(); } #region Anexos if (notificacao?.Id > 0) { comando = bancoDeDados.CriarComando(@" select a.id Id, a.ordem Ordem, a.descricao Descricao, b.nome, b.extensao, b.id arquivo_id, b.caminho, a.tid Tid from {0}tab_fisc_notificacao_arq a, {0}tab_arquivo b where a.arquivo = b.id and a.notificacao = :notificacao order by a.ordem" , EsquemaBanco); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); notificacao.Anexos = bancoDeDados.ObterEntityList <Anexo>(comando, (IDataReader reader, Anexo item) => { item.Arquivo.Id = reader.GetValue <int>("arquivo_id"); item.Arquivo.Caminho = reader.GetValue <string>("caminho"); item.Arquivo.Nome = reader.GetValue <string>("nome"); item.Arquivo.Extensao = reader.GetValue <string>("extensao"); }); } #endregion } return(notificacao); }
public Notificacao Editar(Notificacao notificacao, BancoDeDados banco = null) { using (BancoDeDados bancoDeDados = BancoDeDados.ObterInstancia(banco)) { bancoDeDados.IniciarTransacao(); Comando comando = bancoDeDados.CriarComando(@" update {0}tab_fisc_notificacao t set t.fiscalizacao = :fiscalizacao, t.forma_iuf = :forma_iuf, t.forma_jiapi = :forma_jiapi, t.forma_core = :forma_core, t.forma_iuf_data = :forma_iuf_data, t.forma_jiapi_data = :forma_jiapi_data, t.forma_core_data = :forma_core_data, t.tid = :tid where t.id = :id", EsquemaBanco); comando.AdicionarParametroEntrada("id", notificacao.Id, DbType.Int32); comando.AdicionarParametroEntrada("fiscalizacao", notificacao.FiscalizacaoId, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf", notificacao.FormaIUF, DbType.Int32); comando.AdicionarParametroEntrada("forma_jiapi", notificacao.FormaJIAPI, DbType.Int32); comando.AdicionarParametroEntrada("forma_core", notificacao.FormaCORE, DbType.Int32); comando.AdicionarParametroEntrada("forma_iuf_data", notificacao.DataIUF.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_jiapi_data", notificacao.DataJIAPI.Data, DbType.Date); comando.AdicionarParametroEntrada("forma_core_data", notificacao.DataCORE.Data, DbType.Date); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); #region Anexos comando = bancoDeDados.CriarComando("delete from {0}tab_fisc_notificacao_arq ra ", EsquemaBanco); comando.DbCommand.CommandText += String.Format("where ra.notificacao = :notificacao{0}", comando.AdicionarNotIn("and", "ra.id", DbType.Int32, notificacao.Anexos?.Select(x => x.Id).ToList())); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); bancoDeDados.ExecutarNonQuery(comando); foreach (var item in (notificacao.Anexos ?? new List <Anexo>())) { if (item.Id > 0) { comando = bancoDeDados.CriarComando(@" update {0}tab_fisc_notificacao_arq t set t.arquivo = :arquivo, t.ordem = :ordem, t.descricao = :descricao, t.tid = :tid where t.id = :id" , EsquemaBanco); comando.AdicionarParametroEntrada("id", item.Id, DbType.Int32); } else { comando = bancoDeDados.CriarComando(@" insert into {0}tab_fisc_notificacao_arq a (id, notificacao, arquivo, ordem, descricao, tid) values ({0}seq_tab_fisc_notificacao_arq.nextval, :notificacao, :arquivo, :ordem, :descricao, :tid)" , EsquemaBanco); comando.AdicionarParametroEntrada("notificacao", notificacao.Id, DbType.Int32); } comando.AdicionarParametroEntrada("arquivo", item.Arquivo.Id, DbType.Int32); comando.AdicionarParametroEntrada("ordem", item.Ordem, DbType.Int32); comando.AdicionarParametroEntrada("descricao", DbType.String, 100, item.Descricao); comando.AdicionarParametroEntrada("tid", DbType.String, 36, GerenciadorTransacao.ObterIDAtual()); bancoDeDados.ExecutarNonQuery(comando); } #endregion Historico.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, eHistoricoAcao.atualizar, bancoDeDados); Consulta.Gerar(notificacao.FiscalizacaoId, eHistoricoArtefato.fiscalizacao, bancoDeDados); bancoDeDados.Commit(); } return(notificacao); }
private async Task GerarNotificacaoFechamento(FechamentoTurmaDisciplina fechamentoTurmaDisciplina, Turma turma, int quantidadePendencias, Usuario usuarioLogado, PeriodoEscolar periodoEscolar) { var componentes = await repositorioComponenteCurricular.ObterDisciplinasPorIds(new long[] { fechamentoTurmaDisciplina.DisciplinaId }); if (componentes == null || !componentes.Any()) { throw new NegocioException("Componente curricular não encontrado."); } var ue = turma.Ue; if (ue == null) { throw new NegocioException("UE não encontrada."); } var dre = ue.Dre; if (dre == null) { throw new NegocioException("DRE não encontrada."); } var urlFrontEnd = configuration["UrlFrontEnd"]; if (string.IsNullOrWhiteSpace(urlFrontEnd)) { throw new NegocioException("Url do frontend não encontrada."); } var notificacao = new Notificacao() { UsuarioId = usuarioLogado.Id, Ano = DateTime.Now.Year, Categoria = NotificacaoCategoria.Aviso, Titulo = $"Pendência no fechamento da turma {turma.Nome}", Tipo = NotificacaoTipo.Fechamento, Mensagem = $"O fechamento do {periodoEscolar.Bimestre}º bimestre de {componentes.FirstOrDefault().Nome} da turma {turma.Nome} da {ue.Nome} ({dre.Nome}) gerou {quantidadePendencias} pendência(s). " + $"Clique <a href='{urlFrontEnd}fechamento/pendencias-fechamento/{periodoEscolar.Bimestre}/{fechamentoTurmaDisciplina.DisciplinaId}'>aqui</a> para mais detalhes." }; servicoNotificacao.Salvar(notificacao); var diretores = servicoEOL.ObterFuncionariosPorCargoUe(ue.CodigoUe, (long)Cargo.Diretor); if (diretores != null) { foreach (var diretor in diretores) { var notificacaoDiretor = notificacao; notificacaoDiretor.Id = 0; var usuario = servicoUsuario.ObterUsuarioPorCodigoRfLoginOuAdiciona(diretor.CodigoRf); notificacaoDiretor.UsuarioId = usuario.Id; servicoNotificacao.Salvar(notificacaoDiretor); } } var cps = servicoEOL.ObterFuncionariosPorCargoUe(ue.CodigoUe, (long)Cargo.CP); if (cps != null) { foreach (var cp in cps) { var notificacaoCp = notificacao; notificacaoCp.Id = 0; var usuario = servicoUsuario.ObterUsuarioPorCodigoRfLoginOuAdiciona(cp.CodigoRf); notificacaoCp.UsuarioId = usuario.Id; servicoNotificacao.Salvar(notificacaoCp); } } }
public async Task MonitoringNotification(Notificacao msg) { await _connection.InvokeAsync("MonitoringNotification", msg); }
public Tipo listarTipoID(Notificacao n) { var qry = from t in contexto.Tipo where t.idTipo == n.Tipo select t; return(qry.Single()); }
/// <summary> /// Cadastrar nova notificacao /// </summary> /// <param name="novoNotificacao"></param> public void Cadastrar(Notificacao novoNotificacao) { novoNotificacao.DataNotificacao = DateTime.Now; ctx.Notificacao.Add(novoNotificacao); ctx.SaveChanges(); }
public void Salvar(Notificacao notificacao) { GeraNovoCodigo(notificacao); repositorioNotificacao.Salvar(notificacao); }