示例#1
0
        public AtividadeNewViewModel Carregar(string userId, long?pessoaFisicaId, long?pessoaJuridicaId,
                                              long?potencialClientesId, long?ocorrenciaId)
        {
            var model = new AtividadeNewViewModel
            {
                pessoaFisicaID     = pessoaFisicaId,
                pessoaJuridicaID   = pessoaJuridicaId,
                potencialClienteID = potencialClientesId,
                ocorrenciaID       = ocorrenciaId,
                criadoPor          = userId
            };

            var statusAtividadeLigacao = _statusAtividadeServico.ObterStatusAtividadeLigacaoReceptiva();

            if (statusAtividadeLigacao != null)
            {
                model.listaStatusAtividade = statusAtividadeLigacao.ToList();
            }

            var filas = _filaServico.ObterFilasLigacao();

            if (filas != null)
            {
                model.listaFila = new SelectList(filas, "id", "nome");
            }

            var canal = _canalServico.ObterCanalTelefone();

            model.listaMidia = new SelectList(_midiaServico.ObterPor(null, canal.Id), "id", "nome");

            return(model);
        }
示例#2
0
        public _LigacaoViewModel Carregar(long?id, long?atividadiId)
        {
            var ligacao = _servicoLigacao.ObterPor(id, atividadiId);

            if (ligacao == null)
            {
                var retorno = new _LigacaoViewModel();
                retorno.ValidationResult.Add(
                    new ValidationError("Nenhuma Ligação Encontrada com os parametros fornecidos"));
                return(retorno);
            }

            if (ligacao.Atividade.Atendimento == null)
            {
                var atendimento = _servicoAtendimento.AdicionarNovoAtendimento(1, "f712efbb-4646-4870-8f37-a687cb2e8978",
                                                                               ligacao.Atividade.MidiasId);

                if (atendimento != null)
                {
                    ligacao.Atividade.Atendimento = atendimento;
                }
            }

            if (ligacao.TelefoneId.HasValue)
            {
                ligacao.Telefone = _servicoTelefone.ObterPorId(ligacao.TelefoneId.Value);
            }

            if (ligacao.Atividade.StatusAtividadeId > 0)
            {
                ligacao.Atividade.StatusAtividade =
                    _statusAtividadeServico.ObterPorId(ligacao.Atividade.StatusAtividadeId);
            }

            var midias           = _servicoMidia.ObterTodos();
            var statusAtividades = ligacao.Receptiva == null
                ? _statusAtividadeServico.ObterTodos()
                : (ligacao.Receptiva.Value
                    ? _statusAtividadeServico.ObterStatusAtividadeLigacaoReceptiva()
                    : _statusAtividadeServico.ObterStatusAtividadeLigacaoAtiva());

            return(new _LigacaoViewModel(ligacao, midias, statusAtividades));
        }
        public ReceptivoViewModel NovaLigacaoReceptiva(string userId, string informacaoUra, string numeroTelefone,
                                                       string codLigacao, string terminal)
        {
            var statusUra = false;
            var ligacao   = new Ligacao();

            if (!string.IsNullOrEmpty(numeroTelefone))
            {
                ligacao   = _servicoLigacao.ObterLigacaoReceptivaUra(numeroTelefone);
                statusUra = true;

                if (ligacao.Id > 0)
                {
                    if (ligacao.Atividade != null)
                    {
                        if (ligacao.Atividade.Id > 0)
                        {
                            if (ligacao.Atividade.Atendimento != null)
                            {
                                if (ligacao.Atividade.Atendimento.Id > 0)
                                {
                                    _servicoLigacao.AtualizarLigacaoGeradorProtocoloUra(userId, ligacao.Id,
                                                                                        ligacao.Atividade.Id, ligacao.Atividade.Atendimento.Id);
                                }
                            }
                        }
                    }
                }
            }

            if (ligacao.Id == 0)
            {
                ligacao = _servicoLigacao.AdicionarLigacaoReceptiva(userId, numeroTelefone, null);
            }



            if (ligacao.ValidationResult.IsValid)
            {
                if (!string.IsNullOrEmpty(ligacao.Documento))
                {
                    informacaoUra = ligacao.Documento;
                }

                var canalTelefoneId      = Convert.ToInt32(CanalEnum.Telefone);
                var listaMidias          = new SelectList(_servicoMidia.ObterPor(null, canalTelefoneId), "id", "nome");
                var listaStatusAtividade =
                    new SelectList(_servicoStatusAtividade.ObterStatusAtividadeLigacaoReceptiva(), "id", "descricao");
                if (ligacao.Atividade == null || ligacao.Atividade.AtendimentoId == null)
                {
                    return(null);
                }

                if (ligacao.Atividade.Atendimento != null)
                {
                    return(new ReceptivoViewModel((long)ligacao.Atividade.AtendimentoId, ligacao.Id,
                                                  ligacao.AtividadeId, informacaoUra, numeroTelefone, ligacao.Atividade.Atendimento.Protocolo,
                                                  null, null, null, null, null, listaMidias, listaStatusAtividade, null, statusUra, false, null));
                }
            }
            else
            {
                var retorno = new ReceptivoViewModel {
                    ValidationResult = ligacao.ValidationResult
                };
                return(retorno);
            }
            return(null);
        }