public void EntaoOProjetoDeveriaTerSidoSalvoComoUltimoProjetoSelecionadoParaOUsuario(string projeto, string colaborador)
        {
            Projeto projetoAtual = ProjetosDic[projeto];

            Projeto ultimoProjetoSelecionado = ColaboradorUltimoFiltro.GetUltimoProjetoSelecionadoPorColaborador(SessionTest, StepColaborador.ColaboradoresDic[colaborador].Oid);

            Assert.AreEqual(projetoAtual.Oid, ultimoProjetoSelecionado.Oid, "Os projetos devem ser os mesmos.");
        }
        public void EntaoOProjetoDeveFicarPreenchidoAutomaticamente(string projeto)
        {
            string colaborador = UsuarioDAO.CurrentUser.UserName;

            Projeto ultimoProjetoSelecionado = ColaboradorUltimoFiltro.GetUltimoProjetoSelecionadoPorColaborador(SessionTest, StepColaborador.ColaboradoresDic[colaborador].Oid);

            Assert.AreEqual(projeto, ultimoProjetoSelecionado.TxNome);

            Projeto.SelectedProject = ultimoProjetoSelecionado.Oid;
        }
Пример #3
0
        /// <summary>
        /// Método responsável por salvar o último projeto selecionado pelo colaborador
        /// </summary>
        /// <param name="contexto">Instância de conexão com o banco</param>
        /// <param name="oidColaborador">Oid do colaborador</param>
        /// <param name="oidProjeto">Oid do projeto</param>
        public static void SalvarUltimoProjetoSelecionado(Guid oidColaborador, Guid oidProjeto)
        {
            using (WexDb contexto = ContextFactoryManager.CriarWexDb())
            {
                ColaboradorUltimoFiltro colUltimoFiltro = ColaboradorDAO.ConsultarColaborador(oidColaborador, o => o.ColaboradorUltimoFiltro).ColaboradorUltimoFiltro;

                colUltimoFiltro.OidUltimoProjetoSelecionado = oidProjeto;

                contexto.ColaboradorUltimoFiltroes.Attach(colUltimoFiltro);
                contexto.Entry <ColaboradorUltimoFiltro>(colUltimoFiltro).State = System.Data.EntityState.Modified;
                contexto.SaveChanges();
            }
        }
Пример #4
0
        public void DeveAlterarUltimoProjetoSelecionadoQuandoUsuarioSelecionarOutroProjetoTest()
        {
            ColaboradorUltimoFiltro colaboradorUltimoFiltro = ColaboradorUltimoFiltroBO.CriarColaboradorUltimoFiltroPadrao(contexto);

            Colaborador colaborador = ColaboradorFactoryEntity.CriarColaborador(contexto, "anderson.lins", colaboradorUltimoFiltro.Oid);

            Projeto projeto = ProjetoFactoryEntity.Criar(contexto, 10, "ProjetoTest");

            Guid oidUltimoProjetoSelecionadoAntigo = ColaboradorUltimoFiltroBO.ConsultarUltimoProjetoSelecionadoPorColaborador(colaborador.Oid);

            ColaboradorUltimoFiltroBO.SalvarUltimoProjetoSelecionado(colaborador.Oid, projeto.Oid);

            Guid oidUltimoProjetoSelecionadoAtualizado = ColaboradorUltimoFiltroBO.ConsultarUltimoProjetoSelecionadoPorColaborador(colaborador.Oid);

            Assert.AreNotEqual(oidUltimoProjetoSelecionadoAntigo, oidUltimoProjetoSelecionadoAtualizado, "Oids deveriam ser diferentes, caso contrário não salvou a alteração.");
        }
Пример #5
0
        /// <summary>
        /// Método responsável por consultar qual foi o último projeto selecionado por um colaborador
        /// </summary>
        /// <param name="oidColaborador">Oid do colaborador que se deseja obter o último projeto selecionado</param>
        /// <returns>último projeto selecionado</returns>
        public static Projeto ConsultarUltimoProjetoSelecionadoPorColaborador(Guid oidColaborador)
        {
            Projeto ultimoProjetoSelecionado;

            if (oidColaborador != new Guid())
            {
                ColaboradorUltimoFiltro colaboradorUltimoFiltro = ColaboradorDAO.ConsultarColaborador(oidColaborador, o => o.ColaboradorUltimoFiltro).ColaboradorUltimoFiltro;

                if (colaboradorUltimoFiltro != null && colaboradorUltimoFiltro.OidUltimoProjetoSelecionado.HasValue && colaboradorUltimoFiltro.OidUltimoProjetoSelecionado.Value != Guid.Empty)
                {
                    ultimoProjetoSelecionado = ProjetoDao.Instancia.ConsultarProjetoPorOid(colaboradorUltimoFiltro.OidUltimoProjetoSelecionado.Value);

                    return(ultimoProjetoSelecionado);
                }
            }

            return(null);
        }
Пример #6
0
        /// <summary>
        /// Método responsável por instaciar e salvar no banco um colaboradorUltimoFiltro padrão.
        /// </summary>
        /// <returns>Objeto criado e salvo no banco</returns>
        public static ColaboradorUltimoFiltro CriarColaboradorUltimoFiltroPadrao(WexDb contexto)
        {
            ColaboradorUltimoFiltro colaboradorUltimoFiltro = new ColaboradorUltimoFiltro()
            {
                OidUltimoProjetoSelecionado = null,
                LastSuperiorImediatoFilterPlanejamentoFerias = null,
                LastSituacaoFeriasFilterPlanejamentoFerias   = null,
                OidLastSituacaoFilterSeot            = new Guid(),
                OidLastUsuarioFilterSeot             = new Guid(),
                LastPeriodoFilterPlanejamentoFerias  = -1,
                LastSituacaoFilterPlanejamentoFerias = -1,
                OidLastEmpresaInstituicaoSEOT        = null,
                OidLastTipoSolicitacaoSEOT           = null
            };

            contexto.ColaboradorUltimoFiltroes.Add(colaboradorUltimoFiltro);
            contexto.SaveChanges();

            return(colaboradorUltimoFiltro);
        }
Пример #7
0
        /// <summary>
        /// Método responsável por criar o colaborador caso não exista.
        /// É usado pelo AD
        /// <param name="extensaoEmail">Extensao do email da empresa</param>
        /// <param name="contexto">Sessão</param>
        /// <param name="login">Login do usuário</param>
        /// </summary>
        public static Colaborador CriarColaborador(string login, string extensaoEmail)
        {
            string   primeiroNome;
            string   ultimoNome;
            string   nomeCompleto;
            DateTime dtAdmissao;

            Colaborador colaboradorPesquisado = ColaboradorDAO.ConsultarColaborador(login, o => o.Usuario);

            if (colaboradorPesquisado != null)
            {
                return(colaboradorPesquisado);
            }

            if (login.Contains("."))
            {
                primeiroNome = StrUtil.UpperCaseFirst(login.Split('.')[0]);
                ultimoNome   = StrUtil.UpperCaseFirst(login.Split('.')[1]);
                nomeCompleto = String.Format("{0} {1}", StrUtil.UpperCaseFirst(primeiroNome), StrUtil.UpperCaseFirst(ultimoNome));
            }
            else
            {
                primeiroNome = login;
                ultimoNome   = String.Empty;
                nomeCompleto = String.Format("{0}", StrUtil.UpperCaseFirst(login));
            }

            using (WexDb contexto = ContextFactoryManager.CriarWexDb())
            {
                ColaboradorUltimoFiltro colaboradorUltimoFiltro = ColaboradorUltimoFiltroBO.CriarColaboradorUltimoFiltroPadrao(contexto);

                Party party = PartyBO.CriarPartyPadrao(contexto);

                Person person = PersonBO.CriarPersonPadrao(contexto, party, primeiroNome, ultimoNome, login, extensaoEmail);

                User usuario = UserBO.CriarUserPadrao(contexto, person, login);

                dtAdmissao = DateUtil.ConsultarDataHoraAtual();

                Colaborador novoColaborador = new Colaborador()
                {
                    OidUsuario                 = usuario.Oid,
                    TxMatricula                = null,
                    DtAdmissao                 = dtAdmissao,
                    OidCoordenador             = null,
                    OidCargo                   = null,
                    OidColaboradorUltimoFiltro = colaboradorUltimoFiltro.Oid
                };

                contexto.Colaboradores.Add(novoColaborador);
                contexto.SaveChanges();

                Role roleDefault = ColaboradorDAO.ConsultarRolePorNome("Default");
                Role roleAdmin   = ColaboradorDAO.ConsultarRolePorNome("Administradores");

                UserBO.CriarPermissaoParaUsuario(contexto, usuario, roleDefault);
                UserBO.CriarPermissaoParaUsuario(contexto, usuario, roleAdmin);

                ColaboradorPeriodoAquisitivoBO.CriarPeridoAquisitivoParaColaborador(contexto, novoColaborador, dtAdmissao);

                return(novoColaborador);
            }
        }