예제 #1
0
        public long ObterAtividadeStatusPorNome(string nome, string atividadeValida)
        {
            var atividadeStatusEntity = _statusAtividadeServico.ObterStatusAtividade(nome, atividadeValida);

            if (!atividadeStatusEntity.Any())
            {
                return(0);
            }
            var firstOrDefault = atividadeStatusEntity.FirstOrDefault();

            return(firstOrDefault != null ? firstOrDefault.Id : 0);
        }
        public Atividade AdicionarAtividadeEmail(string userId, long?ocorrenciaId, long?contratoId,
                                                 long?atendimentoId, string titulo, string descricao, long?pessoaFisicaId, long?pessoaJuridicaId,
                                                 long?potencialClienteId, int?canalId, int?midiaId, string iniciadoPorUserId, long?atividadeDeOrigemId,
                                                 IEnumerable <AtividadeParteEnvolvida> envolvidos, string responsavelPorUserId, bool enviarEmail,
                                                 int?statusAtividadeId)
        {
            if (string.IsNullOrEmpty(userId))
            {
                var usuarioAdm = _servicoUsuario.ObterPorEmail("*****@*****.**");
                userId = usuarioAdm != null ? usuarioAdm.Id : "f712efbb-4646-4870-8f37-a687cb2e8978";
            }

            var atividadeTipo = _servicoAtividadeTipo.BuscarPorNome("email");

            //var statusAtividadeId = 0;

            if (enviarEmail)
            {
                var statusAtividade = _servicoStatusAtividade.ObterStatusAtividade("Aguardando Envio", "email");
                if (statusAtividade != null)
                {
                    statusAtividadeId = statusAtividade.FirstOrDefault().Id;
                }
            }

            if (!statusAtividadeId.HasValue || statusAtividadeId == 0)
            {
                var statusAtividade = _servicoStatusAtividade.ObterStatusAtividadeEmail().FirstOrDefault();
                if (statusAtividade != null)
                {
                    statusAtividadeId = statusAtividade.Id;
                }
            }

            if (!canalId.HasValue)
            {
                var canal = _canalServico.ObterCanalEmail();
                if (canal.ValidationResult.IsValid)
                {
                    canalId = canal.Id;
                }
            }

            var atividade = new Atividade(userId, (int)statusAtividadeId, atividadeTipo.Id, titulo, pessoaFisicaId,
                                          pessoaJuridicaId, potencialClienteId, ocorrenciaId, descricao, atendimentoId, midiaId, envolvidos,
                                          responsavelPorUserId, atividadeDeOrigemId, null, canalId, iniciadoPorUserId);

            atividade.ValidationResult = Adicionar(atividade);

            return(atividade);
        }