示例#1
0
        public void Validar(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            var eventoFacade = new EventoFacade(envelope.Evento);

            if (!eventoFacade.Validar())
            {
                throw new coreexceptions.EventoInvalidoException(envelope.Evento);
            }
        }
示例#2
0
        public comum_dto.Ponto Pontuar(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            var regra = Factory.ObtemRegra(envelope.Evento);

            var pontos = regra.Pontuar(envelope.Evento);

            var eventoFacade = new EventoFacade(envelope.Evento);

            return(new comum_dto.Ponto(envelope.Id, envelope.UsuarioId, envelope.EmpresaId, eventoFacade.PostId, eventoFacade.PerfilId, envelope.DataEvento, corehelper.DateTimeHelper.Now(), eventoFacade.Tipo, pontos, coreenums.RedeSocialEnum.facebook));
        }
        public comum_dto.Reacao ObterUltimaReacao(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            var dto = new EventoFacade(envelope.Evento);

            var response = facebookClient.ObterUltimaReacao(envelope.UsuarioId, dto.PostId);

            var evento = response.Item;

            return(evento);
        }
示例#4
0
        public static coreinterfaces.pontuador.IRegraPontuador <Evento> ObtemRegra(Evento evento)
        {
            coreinterfaces.pontuador.IRegraPontuador <Evento> regra = new coreservices.pontuador.RegraNulllable <Evento>();

            var dto = new EventoFacade(evento);

            var value = dto.Value;

            regra = RegraPontuacaoPadrao(value);

            return(regra);
        }
        public void RegistrarEvento(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            var dto = new EventoFacade(envelope.Evento);

            facebookClient.RegistrarReacao(
                envelope.Id,
                envelope.UsuarioId,
                dto.PerfilId,
                dto.PostId,
                envelope.DataEvento,
                envelope.Evento,
                dto.Intensidade,
                dto.Tipo);
        }
示例#6
0
        public coreinterfaces.triador.IEventoTriado Triar(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            coreinterfaces.triador.IEventoTriado eventoTriado = new EventoTriadoNullable();

            var eventoFacade = new EventoFacade(envelope.Evento);

            if (eventoFacade.Value.item == EventoItemEnum.reaction.ToString())
            {
                if (eventoFacade.Value.verb == EventoVerbEnum.add.ToString())
                {
                    eventoTriado = new Reacao(registradorReacao, avaliadorCurtida, enfileiradorClient, envelope);
                }
                else if (eventoFacade.Value.verb == EventoVerbEnum.remove.ToString())
                {
                    eventoTriado = new Reacao(registradorReacao, avaliadorDescurtida, enfileiradorClient, envelope);
                }
                else
                {
                    throw new Exception($"Facebook: Tipo de reação não identificada {eventoFacade.Value.verb}");
                }
            }

            return(eventoTriado);
        }
示例#7
0
        public adduohelper.envelopes.ResponseEnvelope <comum_dto.Perfil> Identificar(comum_dto.EnvelopeEvento <Evento> envelope)
        {
            var eventoFacade = new EventoFacade(envelope.Evento);

            return(client.Obter(envelope.EmpresaId, coreenums.RedeSocialEnum.facebook, eventoFacade.PerfilId));
        }