Пример #1
0
        public Visita Novo(int idUsuario, int idClienteAgendamento)
        {
            var model = new Visita();

            _usuario.PermissaoMensagem(idUsuario, _tipoPrograma, EnTipoManutencao.Incluir);
            model.Data = DateTime.Now.Date;

            var StatusServico = new StatusServico();
            var status        = StatusServico.ObterPorPrograma(EnStatus.Visita).First();

            if (status != null)
            {
                model.Status = status;
            }

            if (idClienteAgendamento > 0)
            {
                var ClienteServico = new ClienteServico();
                var cliente        = ClienteServico.ObterPorId(idClienteAgendamento);
                if (cliente != null)
                {
                    model.Cliente = cliente;
                }
            }

            model.Usuario = _usuario.ObterPorId(idUsuario);

            if (!_usuario.HorarioUsoSistema("", "", idUsuario))
            {
                throw new Exception("Horário não disponível para lançamento de visita");
            }

            return(model);
        }
Пример #2
0
        private Status StatusOcorrencia()
        {
            var modelParametro = _parametro.ObterPorParametro(19, 3);
            var StatusServico  = new StatusServico();

            return(StatusServico.ObterPorCodigo(Convert.ToInt32(modelParametro.Valor)));
        }
Пример #3
0
        private bool VerificarAgendamentoAberto(int idUsuario)
        {
            string codigo = AgendamentoEnderrado();

            int idStatusCancelado = 0;
            int idStatusEncerrado = 0;

            var    statusServico = new StatusServico();
            Status model         = new Status();

            model = statusServico.ObterPorCodigo(int.Parse(codigo));
            if (model != null)
            {
                idStatusEncerrado = model.Id;
            }

            codigo = AgendamentoCancelado();
            model  = statusServico.ObterPorCodigo(int.Parse(codigo));
            if (model != null)
            {
                idStatusCancelado = model.Id;
            }

            return(_rep.VerificarAgendamentoAberto(idUsuario, idStatusEncerrado, idStatusCancelado));
        }
Пример #4
0
        private void RetornarEmailConsultor(int usuarioId, Visita visita)
        {
            var notificar = new StatusServico().NotificarConsultor(visita.StatusId);

            if (notificar)
            {
                if (visita.Cliente == null)
                {
                    visita.Cliente = new ClienteServico().ObterPorId(visita.ClienteId);

                    if (visita.Cliente == null)
                    {
                        return;
                    }
                }

                int idUsuario = 0;
                if (visita.Cliente.UsuarioId != null)
                {
                    idUsuario = Convert.ToInt32(visita.Cliente.UsuarioId);
                }

                var usuarioModel = new UsuarioServico().ObterPorId(idUsuario);

                if (usuarioModel == null)
                {
                    return;
                }

                if (!string.IsNullOrEmpty(usuarioModel.Email))
                {
                    Adicionar(usuarioModel.Email);
                }
            }
        }
Пример #5
0
        public void UpdateHoraUsuarioAtual(int idChamado, EnumChamado enumChamado, int idUsuario)
        {
            string codigoStatus = "";

            if (enumChamado == EnumChamado.Chamado)
            {
                codigoStatus = StatusAtendimentoChamado();
            }
            else
            {
                codigoStatus = StatusAtendimentoAtividade();
            }

            if (!string.IsNullOrWhiteSpace(codigoStatus))
            {
                var servicoStatus = new StatusServico();
                var modelStatus   = servicoStatus.ObterPorCodigo(Convert.ToInt32(codigoStatus));

                if (modelStatus == null)
                {
                    throw new Exception("Informe o Status Atendimento na Tabela de Parâmetros !");
                }

                _rep.UpdateHoraUsuarioAtual(idChamado, enumChamado, idUsuario, modelStatus.Id);
                _rep.Commit();
            }
        }
Пример #6
0
        private int StatusEncerramento()
        {
            var modelParametro = _parametro.ObterPorParametro(46, 3);
            var StatusServico  = new StatusServico();
            var model          = StatusServico.ObterPorCodigo(Convert.ToInt32(modelParametro.Valor));

            return(model.Id);
        }
Пример #7
0
 public RecadoServico()
 {
     _rep                     = new RecadoEF();
     _repUsuario              = new UsuarioServico();
     _tipoPrograma            = EnProgramas.Recado;
     _statusServico           = new StatusServico();
     _recadoRepositorioDapper = new RecadoRepositorioDapper();
 }
Пример #8
0
        public ChamadoQuadroViewModel AbrirQuadro(int idUsuario, int idRevenda)
        {
            var lista           = new List <QuadroViewModelChamado>();
            var quadroViewModel = new ChamadoQuadroViewModel();

            if (_tipoPrograma == EnProgramas.Chamado)
            {
                //lista = _repADO.QuadroChamado(idUsuario, idRevenda, EnumChamado.Chamado).ToList();
                lista = _chamadoRepositorioDapper.QuadroChamado(idUsuario, idRevenda, EnumChamado.Chamado).ToList();

                quadroViewModel.Quadro1 = lista.Where(x => x.QuadroTela == "Q1").OrderBy(x => x.Id).ToList();
                quadroViewModel.Quadro2 = lista.Where(x => x.QuadroTela == "Q2").OrderBy(x => x.Id).ToList();
                quadroViewModel.Quadro3 = lista.Where(x => x.QuadroTela == "Q3").OrderBy(x => x.Id).ToList();
                quadroViewModel.Quadro4 = lista.Where(x => x.QuadroTela == "Q4").OrderBy(x => x.Id).ToList();
                quadroViewModel.Quadro5 = lista.Where(x => x.QuadroTela == "Q5").OrderBy(x => x.Id).ToList();
                quadroViewModel.Quadro6 = lista.Where(x => x.QuadroTela == "Q6").OrderBy(x => x.Id).ToList();

                var listaStatus = BuscarTitulosQuadro();

                quadroViewModel.Titulo1 = listaStatus[0].Nome;
                quadroViewModel.Titulo2 = listaStatus[1].Nome;
                quadroViewModel.Titulo3 = listaStatus[2].Nome;
                quadroViewModel.Titulo4 = listaStatus[3].Nome;
                quadroViewModel.Titulo5 = listaStatus[4].Nome;
                quadroViewModel.Titulo6 = listaStatus[5].Nome;

                var codStatusAbertura   = StatusAbertura();
                var codStatusOcorrencia = StatusAtendimentoChamado();

                var statusServico = new StatusServico();

                var    modelServico   = statusServico.ObterPorCodigo(int.Parse(codStatusAbertura));
                string statusAbertura = modelServico.Nome;

                modelServico = statusServico.ObterPorCodigo(int.Parse(codStatusOcorrencia));
                string statusOcorrencia = modelServico.Nome;

                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo1, quadroViewModel.Quadro1);
                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo2, quadroViewModel.Quadro2);
                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo3, quadroViewModel.Quadro3);
                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo4, quadroViewModel.Quadro4);
                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo5, quadroViewModel.Quadro5);
                PreencherQuadro(statusAbertura, statusOcorrencia, quadroViewModel.Titulo6, quadroViewModel.Quadro6);
            }
            else
            {
                lista = _chamadoRepositorioDapper.QuadroChamado(idUsuario, idRevenda, EnumChamado.Atividade).ToList();
            }

            return(quadroViewModel);
            //return _repADO.QuadroChamado(idUsuario, idRevenda, EnumChamado.Atividade).ToList();
        }
Пример #9
0
        private void RetornarEmailSupervisor(int usuarioId, Visita visita)
        {
            var notificar = new StatusServico().NotificarSupervisor(visita.StatusId);

            if (notificar)
            {
                var listaEmail = new DepartamentoEmailServico().RetornarEmail(usuarioId);
                foreach (var item in listaEmail)
                {
                    Adicionar(item.Email);
                }
            }
        }
Пример #10
0
        private List <Status> BuscarTitulosQuadro()
        {
            var parametroServico = new ParametroServico();
            var listaParametros  = parametroServico.BuscarTitulosChamados().OrderBy(x => x.Codigo);

            var statusServico = new StatusServico();
            var listaStatus   = statusServico.ListarTodos();
            var lista         = new List <Status>();

            foreach (var item in listaParametros)
            {
                var model = listaStatus.First(x => x.Codigo == Convert.ToInt32(item.Valor));
                lista.Add(model);
            }

            return(lista);
        }
Пример #11
0
        public Agendamento Novo(int idUsuario)
        {
            if (VerificarAgendamentoAberto(idUsuario))
            {
                throw new Exception("Há Agendamentos em Aberto!");
            }

            var statusServico = new StatusServico();
            var model         = new Agendamento();

            _repUsuario.PermissaoMensagem(idUsuario, _tipoPrograma, EnTipoManutencao.Incluir);
            model.Programa = 2;
            model.Data     = DateTime.Now.Date;
            model.Hora     = TimeSpan.Parse(DateTime.Now.ToShortTimeString());
            model.Usuario  = _repUsuario.ObterPorId(idUsuario);
            model.Tipo     = RetornarTipoAgendamento();
            model.Status   = statusServico.ObterPorCodigo(StatusAbertura());

            return(model);
        }
Пример #12
0
        private int RetornarIdStatus(int codParametro)
        {
            var parametroServico = new ParametroServico();
            var parametro        = parametroServico.ObterPorParametro(codParametro, 0);

            if (parametro == null)
            {
                return(0);
            }

            var statusServico = new StatusServico();
            var modelStatus   = statusServico.ObterPorCodigo(Convert.ToInt32(parametro.Valor));

            if (modelStatus == null)
            {
                return(0);
            }

            return(modelStatus.Id);
        }
Пример #13
0
        public Recado Novo(int usuarioId)
        {
            _repUsuario.PermissaoMensagem(usuarioId, _tipoPrograma, EnTipoManutencao.Incluir);

            var ServicoParametro = new ParametroServico();
            var ServicoStatus    = new StatusServico();
            var ServicoTipo      = new TipoServico();

            var parametro = ServicoParametro.ObterPorParametro(43, 0);

            var model = new Recado();

            model.Data  = DateTime.Now.Date;
            model.Hora  = TimeSpan.Parse(DateTime.Now.ToShortTimeString());
            model.Nivel = 2;

            model.UsuarioLcto = _repUsuario.ObterPorId(usuarioId);
            model.Status      = ServicoStatus.ObterPorCodigo(Convert.ToInt32(parametro.Valor));
            model.Tipo        = ServicoTipo.RetornarUmRegistroPrograma(EnTipos.Recado);

            return(model);
        }
Пример #14
0
        private void RetornarEmailRevenda(int usuarioId, Visita visita)
        {
            var notificar = new StatusServico().NotificarRevenda(visita.StatusId);

            if (notificar)
            {
                if (visita.Cliente == null)
                {
                    return;
                }

                if (visita.Cliente.Revenda == null)
                {
                    return;
                }

                var listaEmail = new RevendaEmailServico().ObterPorRevenda(visita.Cliente.Revenda.Id);

                foreach (var item in listaEmail)
                {
                    Adicionar(item.Email);
                }
            }
        }
Пример #15
0
        public void SalvarAplicativo(ChamadoAplicativoInputViewModel chamadoInputModel)
        {
            try
            {
                string codigoUsuario = UsuarioAplicativo();
                if (string.IsNullOrWhiteSpace(codigoUsuario))
                {
                    throw new Exception("Informe o Código do Usuário do Aplicativo (parâmetro 54)");
                }

                var usuario = _repUsuario.ObterPorCodigo(int.Parse(codigoUsuario));

                int idUsuario = usuario.Id;

                var clienteServico = new ClienteServico();
                var tipoServico    = new TipoServico();

                var chamado = new Chamado
                {
                    DataAbertura = DateTime.Now,
                    HoraAbertura = TimeSpan.Parse(DateTime.Now.ToShortTimeString()),

                    Contato       = chamadoInputModel.Contato,
                    Descricao     = chamadoInputModel.Descricao,
                    Nivel         = 2,
                    TipoMovimento = 1,
                    Origem        = 4,

                    UsuarioAberturaId = idUsuario
                };

                var cliente = clienteServico.ObterPorCNPJ(chamadoInputModel.CNPJ);
                if (cliente != null)
                {
                    chamado.ClienteId = cliente.Id;
                }

                var modelTipo = tipoServico.RetornarUmRegistro(_tipoChamadoAtividade);
                if (modelTipo != null)
                {
                    chamado.TipoId = modelTipo.Id;
                }

                var codStatusAbertura = StatusAbertura();

                if (string.IsNullOrWhiteSpace(codStatusAbertura))
                {
                    throw new Exception("Informe o código do Status de Abertura. (Parâmetro 9,1)");
                }

                var statusServico = new StatusServico();

                var status = statusServico.ObterPorCodigo(int.Parse(codStatusAbertura));
                if (status != null)
                {
                    chamado.StatusId = status.Id;
                }

                Salvar(chamado);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }