public static long GetValue(PontuacaoEnum enumValue) { switch (enumValue) { case PontuacaoEnum.CadastroUsuario: return(5); case PontuacaoEnum.AcessoReclamacao: return(1); case PontuacaoEnum.CadastroReclamacao: return(10); case PontuacaoEnum.CurtirReclamacao: return(2); case PontuacaoEnum.ReclamacaoCurtida: return(2); case PontuacaoEnum.DescurtirReclamacao: return(1); case PontuacaoEnum.ReclamacaoDescurtida: return(-1); case PontuacaoEnum.ComentarReclamacao: return(3); case PontuacaoEnum.MarcarSolucaoComentario: return(5); case PontuacaoEnum.DesmarcarSolucaoComentario: return(-5); case PontuacaoEnum.CurtirComentario: return(1); case PontuacaoEnum.ComentarioCurtido: return(1); case PontuacaoEnum.DescurtirComentario: return(1); case PontuacaoEnum.ComentarioDescurtido: return(-1); case PontuacaoEnum.SolucioncarReclamacao: return(50); case PontuacaoEnum.ReclamacaoEmMidia: return(3); default: return(0); } }
public static string GetDescription(PontuacaoEnum enumValue) { switch (enumValue) { case PontuacaoEnum.CadastroUsuario: return("Cadastrou Usuário"); case PontuacaoEnum.AcessoReclamacao: return("Acessou Reclamação"); case PontuacaoEnum.CadastroReclamacao: return("Cadastrou Reclamação"); case PontuacaoEnum.CurtirReclamacao: return("Curtiu Reclamação"); case PontuacaoEnum.ReclamacaoCurtida: return("Reclamação Curtida"); case PontuacaoEnum.DescurtirReclamacao: return("Descurtiu Reclamação"); case PontuacaoEnum.ReclamacaoDescurtida: return("Reclamação Descurtida"); case PontuacaoEnum.ComentarReclamacao: return("Comentou Reclamação"); case PontuacaoEnum.MarcarSolucaoComentario: return("Comentário Marcado Como Solução"); case PontuacaoEnum.DesmarcarSolucaoComentario: return("Comentário Desmarcado Como Solução"); case PontuacaoEnum.CurtirComentario: return("Curtiu Comentário"); case PontuacaoEnum.ComentarioCurtido: return("Comentário Curtido"); case PontuacaoEnum.DescurtirComentario: return("Descurtiu Comentário"); case PontuacaoEnum.ComentarioDescurtido: return("Comentário Descurtido"); case PontuacaoEnum.SolucioncarReclamacao: return("Solucionou Reclamação"); case PontuacaoEnum.ReclamacaoEmMidia: return("Inseriu uma mídia na reclamação"); default: return(""); } }
public static void Pontuar(Pessoa pessoa, PontuacaoEnum tipoPonto) { var model = ConnectionDbClass.DataModel; var logNivel = model.Pessoa_nivel_pontos.FirstOrDefault(f => f.Id_pessoa == pessoa.Id); if (logNivel == null) { logNivel = new Pessoa_nivel_ponto() { Id_pessoa = pessoa.Id, Nivel = 0, Pontos = -1 }; model.Add(logNivel); } var logPontos = new Log_pontos_pessoa() { Id_pessoa = pessoa.Id, Pontos = PontuacaoEnumHelper.GetValue(tipoPonto), TipoPonto = (int)tipoPonto, Descricao = PontuacaoEnumHelper.GetDescription(tipoPonto), Data = DateTime.Now }; if (logNivel != null) { logNivel.Pontos += logPontos.Pontos; } if (AvancarNivel(pessoa)) { var nivelAtual = model.Pessoa_nivel_pontos.First(f => f.Id_pessoa == pessoa.Id); nivelAtual.Nivel++; } model.Add(logPontos); if (model.HasChanges) { model.SaveChanges(); } }