public void EntaoApenasASituacaoSituacao1DeveSerOpcaoNoFiltroDeSituacaoEOsColaboradoresColaborador1Colaborador2Colaborador3DevemSerOpcoesNoFiltroDeResponsavel(string situacao1, string colaborador1, string colaborador2, string colaborador3, string colaboradorX) { User usuario1 = colaboradorDic[String.Format("'{0}'", colaborador1)].Usuario; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario1)); User usuario2 = colaboradorDic[String.Format("'{0}'", colaborador2)].Usuario; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario2)); User usuario3 = colaboradorDic[String.Format("'{0}'", colaborador3)].Usuario; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario3)); User usuario4 = colaboradorDic[String.Format("'{0}'", colaborador3)].Usuario; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario4)); ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1)); User usuarioX = colaboradorDic[colaboradorX].Usuario; Assert.IsFalse(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuarioX)); }
/// <summary> /// Ao dar load no objeto /// </summary> protected override void OnLoaded() { if (oldSituacao == null) { oldSituacao = Situacao; } if (oldCliente == null) { oldCliente = Cliente; } if (_dicEmailsCc == null) { _dicEmailsCc = new Dictionary <string, string>(); } if (_dicEmailsCco == null) { _dicEmailsCco = new Dictionary <string, string>(); } if (SolicitacaoOrcamentoHistoricos.Sorting.Count == 0) { SolicitacaoOrcamentoHistoricos.Sorting.Add(new SortProperty("DataHora", SortingDirection.Descending)); } base.OnLoaded(); }
public void EntaoApenasAsSituacoesSituacao1Situacao2Situacao3DevemSerOpcoesNoFiltroDeSituacaoEApenasOColaboradorColaborador1DeveSerOpcaoNoFiltroDeResponsavel(string situacao1, string situacao2, string situacao3, string colaborador1, string situacaoX) { ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1)); ConfiguracaoDocumentoSituacao situacaoObj2 = situacaoDic[String.Format("'{0}'", situacao2)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj2)); ConfiguracaoDocumentoSituacao situacaoObj3 = situacaoDic[String.Format("'{0}'", situacao3)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj3)); ConfiguracaoDocumentoSituacao situacaoObj4 = situacaoDic[String.Format("'{0}'", situacao3)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj4)); User usuario1 = colaboradorDic[String.Format("'{0}'", colaborador1)].Usuario; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario1)); ConfiguracaoDocumentoSituacao situacaoObjX = situacaoDic[situacaoX]; Assert.IsFalse(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObjX)); }
/// <summary> /// Depois de construir o objeto /// </summary> public override void AfterConstruction() { base.AfterConstruction(); TxCc = TxCco = TxUltimoComentario = string.Empty; _dicEmailsCc = new Dictionary <string, string>(); _dicEmailsCco = new Dictionary <string, string>(); // Usuário logado é o solicitante Solicitante = UsuarioDAO.GetUsuarioLogado(Session); // Data atual DtConclusao = DtEmissao = DateUtil.ConsultarDataHoraAtual(); // Prazo para depois de 10 dias DtPrazo = Calendario.AcrescimoDiasUteisData(Session, DateUtil.ConsultarDataHoraAtual(), 10); // Situação inicial Situacao = ConfiguracaoDocumentoSituacao.GetSituacaoInicial( ConfiguracaoDocumento.GetConfiguracaoPorTipo(Session, CsTipoDocumento.SolicitacaoOrcamento)); Colaborador colaborador = Colaborador.GetColaboradorCurrent(Session, UsuarioDAO.GetUsuarioLogado(Session)); if (colaborador != null) { TipoSolicitacao = colaborador.ColaboradorUltimoFiltro.LastTipoSolicitacaoSEOT; Cliente = colaborador.ColaboradorUltimoFiltro.LastEmpresaInstituicaoSEOT; } }
public void GivenAsSeguintesSituacoesDeConfiguracoesDeDocumento(Table table) { string documento = table.Header.ToList()[0]; string descricao = table.Header.ToList()[1]; string cc = table.Header.ToList()[2]; string cco = table.Header.ToList()[3]; string padrao = table.Header.ToList()[4]; ConfiguracaoDocumento config = ConfiguracaoDocumento.GetConfiguracaoPorTipo(SessionTest, CsTipoDocumento.SolicitacaoOrcamento); if (config == null) { ConfiguracaoDocumentoFactory.CriarConfiguracaoDocumento(SessionTest, CsTipoDocumento.SolicitacaoOrcamento, true); } foreach (TableRow row in table.Rows) { string documentoRow = row[documento]; string descricaoRow = row[descricao]; string ccRow = row[cc]; string ccoRow = row[cco]; string padraoRow = row[padrao]; ConfiguracaoDocumentoSituacao situacao = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacaoComConfiguracao( SessionTest, StepConfiguracaoDocumento.ConfiguracoesDocumentoDic[documentoRow], descricaoRow, false); situacao.IsSituacaoInicial = bool.Parse(padraoRow); // Emails CC foreach (string email in ccRow.Split(';')) { ConfiguracaoDocumentoSituacaoEmailCc copia = new ConfiguracaoDocumentoSituacaoEmailCc(SessionTest) { ConfiguracaoDocumentoSituacao = situacao, TxEmail = email }; copia.Save(); situacao.ComCopia.Add(copia); } // Emails CCO foreach (string email in ccoRow.Split(';')) { ConfiguracaoDocumentoSituacaoEmailCco copia = new ConfiguracaoDocumentoSituacaoEmailCco(SessionTest) { ConfiguracaoDocumentoSituacao = situacao, TxEmail = email }; copia.Save(); situacao.ComCopiaOculta.Add(copia); } situacao.ConfiguracaoDocumento = config; situacao.Save(); ConfiguracaoDocumentoSituacoesDic.Add(descricaoRow, situacao); } }
/// <summary> /// Cria um objeto de ConfiguracaoDocumentoSituacao /// </summary> /// <param name="session">Sessão</param> /// <param name="configuracaoDocumento">Objeto de ConfiguracaoDocumento</param> /// <param name="descricao">Descrição da Situação</param> /// <param name="save">É para salvar?</param> /// <returns>Objeto de ConfiguracaoDocumentoSituacao</returns> public static ConfiguracaoDocumentoSituacao CriarConfiguracaoDocumentoSituacaoComConfiguracao(Session session, ConfiguracaoDocumento configuracaoDocumento, string descricao, bool save = false) { ConfiguracaoDocumentoSituacao situacao = new ConfiguracaoDocumentoSituacao(session); situacao.ConfiguracaoDocumento = configuracaoDocumento; situacao.TxDescricao = descricao; if (save) { situacao.Save(); } return(situacao); }
/// <summary> /// Metodo que verifica se a situacao tem seot para ser adicionada ao filtro de situacao /// </summary> /// <param name="session">Sessão</param> /// <param name="situacao">Situacao para verificar se tem seot associada a ela</param> /// <returns>retorna true quando a situacao tem seot e false quando não tem</returns> public static bool RnSeotsPorSituacao(Session session, ConfiguracaoDocumentoSituacao situacao) { XPCollection <SolicitacaoOrcamento> seot = new XPCollection <SolicitacaoOrcamento>(session); var list = from item in seot where situacao.Oid == item.Situacao.Oid select item; if (list.ToList().Count > 0) { return(true); } return(false); }
public void QuandoCriarUmaNovaConfiguracaoDeDocumentoDeSituacaoComOSSeguinteSValores(Table table) { int cont = 0; int contRow = 0; ConfiguracaoDocumento config = ConfiguracaoDocumento.GetConfiguracaoPorTipo(SessionTest, CsTipoDocumento.SolicitacaoOrcamento); if (config == null) { ConfiguracaoDocumentoFactory.CriarConfiguracaoDocumento(SessionTest, CsTipoDocumento.SolicitacaoOrcamento, true); } foreach (var row in table.Rows) { ConfiguracaoDocumentoSituacao situacao = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao(SessionTest, "Descricao", "Red", CsColorDomain.Custom, false); situacao.ConfiguracaoDocumento = config; foreach (var item in table.Rows[contRow].Values) { if (cont == 0) { situacao.TxDescricao = item; } if (cont == 1) { situacao.TxNomeCor = item; } if (cont == 2) { if (item == "true") { situacao.IsSituacaoInicial = true; } } cont++; } ConfiguracaoDocumentoSituacoesDic[situacao.TxDescricao] = situacao; ConfiguracaoDocumentoSituacoesDic[situacao.TxDescricao].Save(); ConfiguracaoDocumentoSituacoesDic[situacao.TxDescricao].RnTrocaSituacaoInicial(); ConfiguracaoDocumentoSituacoesDic[situacao.TxDescricao].Save(); contRow++; cont = 0; } }
public void SolicitacaoComentarioOrcamentlo() { //Criar uma solicitação de orçamento com a situação "Em revisão técnica" //Inicio //Passo 1 DateTime dtPrazo = DateTime.Now; string data = dtPrazo.ToString("dd/MM/yyyy"); string emailCliente = "*****@*****.**"; // Colaborador Colaborador colaborador = ColaboradorFactory.CriarColaborador(SessionTest, "000", DateTime.Now, "*****@*****.**", "Solicitacao", "Orcamento", "Historico", "nome.completo"); // Situações ConfiguracaoDocumentoSituacao situacaoEmrevisaoTecnica = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Em Revisão Técnica", "black", CsColorDomain.System, true); EmpresaInstituicao cliente = EmpresaInstituicaoFactory.Criar(SessionTest, "Novo Cliente", "FPF", emailCliente, "0000-0000", true); //histórico da solicitação de orçamento //Solicitação de orçamento SolicitacaoOrcamento solicitacao = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, situacaoEmrevisaoTecnica, CsPrioridade.Alta, "TesteEditarSalvarSolicitação", dtPrazo, cliente); solicitacao.Save(); //Inicio //Testar editar e salvar uma solicitação de orçamento sem alterar a situação //CT_9.01.02 - Testar editar e salvar uma solicitação de orçamento sem alterar a situação //Inicio //Alterar nome do cliente solicitacao.Reload(); solicitacao.Cliente.TxNome = "Nome do cliente alterado"; solicitacao.Save(); Assert.AreEqual("Em Revisão Técnica", solicitacao.SolicitacaoOrcamentoHistoricos[0].Situacoes.TxDescricao, "A situação em revisão técnica deveria aparecer no histórico"); ConfiguracaoDocumentoSituacao situacaoEntregue = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Entregue", "blue", CsColorDomain.System, true); solicitacao.Reload(); solicitacao.Situacao = situacaoEntregue; solicitacao.Save(); Assert.AreEqual("Entregue", solicitacao.SolicitacaoOrcamentoHistoricos[0].Situacoes.TxDescricao, "A situação Entregue deveria aparecer no histórico"); Assert.IsFalse(string.IsNullOrEmpty(solicitacao.SolicitacaoOrcamentoHistoricos[0].Comentario), "O comentário deveria aparecer no histórico"); }
/// <summary> /// Cria um objeto de ConfiguracaoDocumentoSituacao /// </summary> /// <param name="session">Sessão</param> /// <param name="descricao">Descrição da configuração</param> /// <param name="cor">Cor da configuração</param> /// <param name="tipoCor">O tipo da cor da configuração</param> /// <param name="save">Indica se é para salvar ou não</param> /// <returns>Objeto de ConfiguracaoDocumentoSituacao</returns> public static ConfiguracaoDocumentoSituacao CriarConfiguracaoDocumentoSituacao(Session session, string descricao, string cor, CsColorDomain tipoCor, bool save = false) { ConfiguracaoDocumentoSituacao situacao = new ConfiguracaoDocumentoSituacao(session); situacao.ConfiguracaoDocumento = ConfiguracaoDocumentoFactory.CriarConfiguracaoDocumento(session, CsTipoDocumento.SolicitacaoOrcamento, true); situacao.TxDescricao = descricao; situacao.TxNomeCor = cor; situacao.TypeColor = tipoCor; if (save) { situacao.Save(); } return(situacao); }
public void DadoASSEOTSComOsSeguintesValorEs(Table table) { int cont = 0; int contRow = 0; foreach (var row in table.Rows) { ConfiguracaoDocumentoSituacao situacao = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao(SessionTest, "Descricao", "Red", CsColorDomain.Custom, false); Colaborador colab = ColaboradorFactory.CriarColaborador(SessionTest, "", DateTime.Now, "", "", "", "", "", null, false); SolicitacaoOrcamento seot = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colab, situacao, CsPrioridade.Media, "Titulo", DateTime.Now, StepEmpresaInsituicao.EmpresaInstituicaoDict["Empresa01"], true); cont = 0; foreach (var item in table.Rows[contRow].Values) { if (cont == 0) { seot.TxTitulo = item.ToString(); } if (cont == 1) { colab.Usuario.FirstName = item.ToString(); seot.Responsavel = colab; colaboradorDic[item.ToString()] = seot.Responsavel; } if (cont == 2) { situacao.TxDescricao = item.ToString(); seot.Situacao = situacao; situacaoDic[item.ToString()] = situacao; } if (cont == 5) { seot.TipoSolicitacao = StepTipoSolicitacaoOrcamento.situacaoTS[item]; } cont++; seotsDic[seot.TxCodigo] = seot; seotsDic[seot.TxCodigo].Save(); } contRow++; } }
public void QuandoVerificarAsOpcoesDoFiltroDeSituacao(string situacao1, string situacao2, string situacao3) { ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1); ConfiguracaoDocumentoSituacao situacaoObj2 = situacaoDic[String.Format("'{0}'", situacao2)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj2); ConfiguracaoDocumentoSituacao situacaoObj3 = situacaoDic[String.Format("'{0}'", situacao3)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj3); ConfiguracaoDocumentoSituacao situacaoObj4 = situacaoDic[String.Format("'{0}'", situacao3)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj4); }
public void EntaoApenasAsSituacoesSituacao1Situacao2Situacao3DevemSerOpcoesNoFiltroDeSituacao(string situacao1, string situacao2, string situacao3) { ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1)); ConfiguracaoDocumentoSituacao situacaoObj2 = situacaoDic[String.Format("'{0}'", situacao2)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj2)); ConfiguracaoDocumentoSituacao situacaoObj3 = situacaoDic[String.Format("'{0}'", situacao3)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj3)); ConfiguracaoDocumentoSituacao situacaoObj4 = situacaoDic[String.Format("'{0}'", situacao3)]; Assert.IsTrue(SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj4)); }
public void TestarSEOTUsuario() { //Criar uma solicitação de orçamento com a situação "Em revisão técnica" //Inicio //Passo 1 DateTime dtPrazo = DateTime.Now; string data = dtPrazo.ToString("dd/MM/yyyy"); string emailCliente = "*****@*****.**"; // Colaborador // Criando objetos de usuários que acessarão os cronnogramas Colaborador colaborador = ColaboradorFactory.CriarColaborador(SessionTest, "000", DateTime.Now, "*****@*****.**", "Solicitacao", "Orcamento", "Historico", "nome.completo"); User usuario01 = ColaboradorFactory.CriarUsuario(SessionTest, "nome.completo", "Nome", "Completo", "*****@*****.**", true); // Situações ConfiguracaoDocumentoSituacao situacaoEmrevisaoTecnica = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Em Revisão Técnica", "black", CsColorDomain.System, true); EmpresaInstituicao cliente = EmpresaInstituicaoFactory.Criar(SessionTest, "Novo Cliente", "FPF", emailCliente, "0000-0000", true); //histórico da solicitação de orçamento //Solicitação de orçamento SolicitacaoOrcamento solicitacao = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, situacaoEmrevisaoTecnica, CsPrioridade.Alta, "TesteEditarSalvarSolicitação", dtPrazo, cliente); solicitacao.Save(); solicitacao.Reload(); solicitacao.Cliente.TxNome = "Nome do cliente alterado"; solicitacao.Save(); UsuarioDAO.CurrentUser = colaborador.Usuario; Colaborador.RnSalvarUsuarioUltimaSEOT(SessionTest, UsuarioDAO.CurrentUser.Oid, colaborador); solicitacao.Save(); Assert.AreEqual(UsuarioDAO.CurrentUser.Oid, colaborador.ColaboradorUltimoFiltro.LastUsuarioFilterSeot, "O colaborador selecionado é igual a sua última seleção"); }
public void QuandoVerificarAsOpcoesDoFiltroDeResponsavelEColaborador1ESituacaoSaoSituacao1Situacao2Situacao3(string colaborador1, string situacao1, string situacao2, string situacao3) { ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1); ConfiguracaoDocumentoSituacao situacaoObj2 = situacaoDic[String.Format("'{0}'", situacao2)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj2); ConfiguracaoDocumentoSituacao situacaoObj3 = situacaoDic[String.Format("'{0}'", situacao3)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj3); ConfiguracaoDocumentoSituacao situacaoObj4 = situacaoDic[String.Format("'{0}'", situacao3)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj4); User usuario1 = colaboradorDic[String.Format("'{0}'", colaborador1)].Usuario; SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario1); }
public void QuandoVerificarSeAsOpcoesDoFiltroDeResponsavelSaoColaborador1Colaborador2Colaborador3ESituacaoESituacao1(string colaborador1, string colaborador2, string colaborador3, string situacao1) { User usuario1 = colaboradorDic[String.Format("'{0}'", colaborador1)].Usuario; SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario1); User usuario2 = colaboradorDic[String.Format("'{0}'", colaborador2)].Usuario; SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario2); User usuario3 = colaboradorDic[String.Format("'{0}'", colaborador3)].Usuario; SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario3); User usuario4 = colaboradorDic[String.Format("'{0}'", colaborador3)].Usuario; SolicitacaoOrcamento.RnSeotsPorResponsavel(SessionTest, usuario4); ConfiguracaoDocumentoSituacao situacaoObj1 = situacaoDic[String.Format("'{0}'", situacao1)]; SolicitacaoOrcamento.RnSeotsPorSituacao(SessionTest, situacaoObj1); }
/// <summary> /// Executa a pesquisa para situações /// </summary> /// <param name="sender">objeto sender</param> /// <param name="e">argumentos da ação</param> private void SingleChoiceActionSituacao_Execute(object sender, SingleChoiceActionExecuteEventArgs e) { ListView listView = (ListView)View; Session session = ((ObjectSpace)View.ObjectSpace).Session; CriteriaOperator criteria = null; if (!e.SelectedChoiceActionItem.Caption.Equals("Todas")) { ConfiguracaoDocumentoSituacao result = session.FindObject <ConfiguracaoDocumentoSituacao>(CriteriaOperator.Parse( String.Format("Oid = '{0}'", e.SelectedChoiceActionItem.Data))); if (result != null) { Colaborador.RnSalvarSituacaoUltimaSEOT(session, result.Oid, Colaborador.GetColaboradorCurrent(session)); criteria = CriteriaOperator.Parse("Situacao = ?", result.Oid); } } else { Colaborador.RnSalvarSituacaoUltimaSEOT(session, Guid.Empty, Colaborador.GetColaboradorCurrent(session)); if (!singleChoiceActionUsuarios.SelectedItem.Caption.Equals("Todos")) { Colaborador result = session.FindObject <Colaborador>(CriteriaOperator.Parse(String.Format("Usuario = '{0}'", singleChoiceActionUsuarios.SelectedItem.Data))); if (result != null) { criteria = CriteriaOperator.Parse("Responsavel = ?", result.Oid); } } } listView.CollectionSource.Criteria["FiltroPorSituacao"] = criteria; }
public void EntaoOCampoSituacaoDeveEstarPreechidoComDescricao01(string descricaoPadrao) { Assert.AreEqual(descricaoPadrao, ConfiguracaoDocumentoSituacao.GetSituacaoInicial( ConfiguracaoDocumento.GetConfiguracaoPorTipo(SessionTest, CsTipoDocumento.SolicitacaoOrcamento)).TxDescricao, "A situação inicial ativa deve ser a última definida."); }
public void EntaoAConfiguracaoDeDocumentoDeSituacaoDefinidaComoPadraoEDescricao02(string descricaoPadrao) { Assert.AreEqual(descricaoPadrao, ConfiguracaoDocumentoSituacao.GetSituacaoInicial( ConfiguracaoDocumento.GetConfiguracaoPorTipo(SessionTest, CsTipoDocumento.SolicitacaoOrcamento)).TxDescricao, "A situação inicial ativa deve ser a última definida."); }
public void SolicitacaoOrcamentoTest_001() { #region Passo 1 DateTime dtPrazo = DateTime.Now.AddDays(1); string emailCliente = "*****@*****.**"; // Colaborador Colaborador colaborador = ColaboradorFactory.CriarColaborador(SessionTest, "000", DateTime.Now, "*****@*****.**", "Solicitacao", "Orcamento", "Historico", "nome.completo"); // Situações ConfiguracaoDocumentoSituacao situacaoNaoIniciado = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Não Iniciado", "Green", CsColorDomain.System, true); ConfiguracaoDocumentoSituacao situacaoEmAndamento = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Em Andamento", "Red", CsColorDomain.System, true); ConfiguracaoDocumentoSituacao situacaoConcluido = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Concluído", "Blue", CsColorDomain.System, true); // Cliente EmpresaInstituicao cliente = EmpresaInstituicaoFactory.Criar(SessionTest, "Novo Cliente", "FPF", emailCliente, "0000-0000", true); // Solicitação de Orçamento SolicitacaoOrcamento solicitacao = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, situacaoNaoIniciado, CsPrioridade.Alta, "Teste1", dtPrazo, cliente); solicitacao.Reload(); // Dados do cliente Assert.AreEqual(cliente.TxNome, solicitacao.TxContatoCliente, "O nome do cliente deveria ser o mesmo contato na Solicitação de Orçamento"); Assert.AreEqual(cliente.TxEmail, solicitacao.TxEmailContatoCliente, "O email do cliente deveria ser o mesmo email do contato na Solicitação de Orçamento"); Assert.AreEqual(cliente.TxFoneFax, solicitacao.TxFone, "O fone do cliente deveria ser o mesmo fone do contato na Solicitação de Orçamento"); // Emails Assert.AreEqual(string.Empty, solicitacao.TxCc, "A quantidade de emails para envio com cópia deveria ser 0, pois nenhum email foi cadastrado."); Assert.AreEqual(string.Empty, solicitacao.TxCco, "A quantidade de emails para envio com cópia oculta deveria ser 0, pois nenhum email foi cadastrado."); #endregion #region Passo 2 solicitacao.TxCc = "*****@*****.**"; // Adicionando email para envio solicitacao.Save(); // Persistindo // Verificação de envio de email Assert.AreEqual(true, solicitacao._EmailEnviado, "O email deveria ter sido enviado"); // Verificação das datas Assert.AreEqual(solicitacao.DtEmissao.Date, solicitacao.DtConclusao.Date, "A data de emissão deveria ser a mesma de conclusão"); // Verificação do código gerado Assert.AreEqual("FPF.01/2012", solicitacao.TxCodigo, "O código deveria estar de acordo com o padrão"); // Verificação da quantidade de dias gastos Assert.AreEqual(1, solicitacao._DiasGastos, "A quantidade de dias gastos deveria ser 1."); #endregion #region Passo 3 // Data prazo inválida solicitacao.DtPrazo = DateTime.Now.AddDays(-1); Assert.AreEqual(ValidationState.Valid, ValidationUtil.GetRuleState(solicitacao, "ValidarDtPrazo", DefaultContexts.Save)); solicitacao.DtPrazo = dtPrazo; // Retornando à data anterior #endregion #region Passo 4 // Email inválido solicitacao.TxEmailContatoCliente = "email"; Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(solicitacao, "ValidarEmailContatoCliente", DefaultContexts.Save)); solicitacao.TxEmailContatoCliente = emailCliente; // Retornando ao email anterior #endregion #region Passo 5 // Alteração dos dados do cliente solicitacao.TxContatoCliente = "New Client"; solicitacao.TxEmailContatoCliente = "*****@*****.**"; solicitacao.TxFone = "1111-1111"; solicitacao.Save(); Assert.AreEqual("New Client", cliente.TxNome, "O nome deveria ter mudado no objeto de EmpresaInstituicao"); Assert.AreEqual("*****@*****.**", cliente.TxEmail, "O email deveria ter mudado no objeto de EmpresaInstituicao"); Assert.AreEqual("1111-1111", cliente.TxFoneFax, "O fone/fax deveria ter mudado no objeto de EmpresaInstituicao"); #endregion #region Passo 6 // [email protected] - Cc ConfiguracaoDocumentoSituacaoEmailCc emailCcNaoIniciado = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCc(SessionTest, "*****@*****.**", situacaoNaoIniciado, true); // [email protected] - Cco ConfiguracaoDocumentoSituacaoEmailCco emailCcoNaoIniciado = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCco(SessionTest, "*****@*****.**", situacaoNaoIniciado, true); // [email protected] - Cc ConfiguracaoDocumentoSituacaoEmailCc emailCcEmAndamento = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCc(SessionTest, "*****@*****.**", situacaoEmAndamento, true); // [email protected] - Cco ConfiguracaoDocumentoSituacaoEmailCco emailCcoEmAndamento = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCco(SessionTest, "*****@*****.**", situacaoEmAndamento, true); // [email protected] - Cc ConfiguracaoDocumentoSituacaoEmailCc emailCcConcluido = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCc(SessionTest, "*****@*****.**", situacaoConcluido, true); // [email protected] - Cco ConfiguracaoDocumentoSituacaoEmailCco emailCcoConcluido = ConfiguracaoDocumentoSituacaoEmailFactory.CriarEmailCco(SessionTest, "*****@*****.**", situacaoConcluido, true); situacaoNaoIniciado.ComCopia.Add(emailCcNaoIniciado); situacaoNaoIniciado.ComCopiaOculta.Add(emailCcoNaoIniciado); situacaoEmAndamento.ComCopia.Add(emailCcEmAndamento); situacaoEmAndamento.ComCopiaOculta.Add(emailCcoEmAndamento); situacaoConcluido.ComCopia.Add(emailCcConcluido); situacaoConcluido.ComCopiaOculta.Add(emailCcoConcluido); solicitacao.Situacao = situacaoEmAndamento; // Simular troca de situação solicitacao.Situacao = situacaoNaoIniciado; // Selecionando a situação "Não Iniciado" // Com Cópia Assert.AreEqual(1, solicitacao.TxCc.Split(';').Length, "Deveria ter sido carregado apenas 1 email"); // Com Cópia Oculta Assert.AreEqual(string.Empty, solicitacao.TxCco, "Deveria ter sido carregado nenhum email"); #endregion #region Passo 7 solicitacao.Situacao = situacaoEmAndamento; // Selecionando a situação "Em Andamento" // Com Cópia /* Assert.AreEqual(1, solicitacao.ComCopia.Count, "Deveria ter sido carregado apenas 1 email"); * Assert.AreEqual(situacaoEmAndamento.ComCopia[0].TxEmail, solicitacao.ComCopia[0].TxEmail, * "O email carregado deveria ser o mesmo email da situação"); * * // Com Cópia Oculta * Assert.AreEqual(1, solicitacao.ComCopiaOculta.Count, "Deveria ter sido carregado apenas 1 email"); * Assert.AreEqual(situacaoEmAndamento.ComCopiaOculta[0].TxEmail, solicitacao.ComCopiaOculta[0].TxEmail, * "O email carregado deveria ser o mesmo email da situação"); * #endregion * #region Passo 8 * * solicitacao.Situacao = situacaoConcluido; // Selecionando a situação "Concluído" * * // Com Cópia * Assert.AreEqual(1, solicitacao.ComCopia.Count, "Deveria ter sido carregado apenas 1 email"); * Assert.AreEqual(situacaoConcluido.ComCopia[0].TxEmail, solicitacao.ComCopia[0].TxEmail, * "O email carregado deveria ser o mesmo email da situação"); * * // Com Cópia Oculta * Assert.AreEqual(1, solicitacao.ComCopiaOculta.Count, "Deveria ter sido carregado apenas 1 email"); * Assert.AreEqual(situacaoConcluido.ComCopiaOculta[0].TxEmail, solicitacao.ComCopiaOculta[0].TxEmail, * "O email carregado deveria ser o mesmo email da situação"); * * // Persistindo * solicitacao.Save(); * * // Verificação de envio de email * Assert.AreEqual(true, solicitacao._EmailEnviado, * "O email deveria ter sido enviado"); * #endregion * #region Passo 9 * * // Solicitação de Orçamento nova * SolicitacaoOrcamento solicitacao02 = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, * situacaoNaoIniciado, CsPrioridade.Alta, "Teste1", dtPrazo, cliente); * * Assert.AreEqual(ValidationState.Invalid, ValidationUtil.GetRuleState(solicitacao02, * "SolicitacaoOrcamento_TxTitulo_Unique", DefaultContexts.Save)); * #endregion * #region Passo 10 * * solicitacao02 = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, * situacaoNaoIniciado, CsPrioridade.Alta, "Teste2", dtPrazo, cliente); * * // Novas Solicitações de Orçamento * SolicitacaoOrcamento solicitacao03 = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, * situacaoNaoIniciado, CsPrioridade.Alta, "Teste3", dtPrazo, cliente); * * SolicitacaoOrcamento solicitacao04 = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, * situacaoNaoIniciado, CsPrioridade.Alta, "Teste4", dtPrazo, cliente); * * // Persistência * solicitacao02.Save(); * solicitacao03.Save(); * solicitacao04.Save(); * * // Verificação dos códigos gerados * Assert.AreEqual("FPF.02/2011", solicitacao02.TxCodigo, * "O código deveria estar de acordo com o padrão"); * * Assert.AreEqual("FPF.03/2011", solicitacao03.TxCodigo, * "O código deveria estar de acordo com o padrão"); * * Assert.AreEqual("FPF.04/2011", solicitacao04.TxCodigo, * "O código deveria estar de acordo com o padrão");*/ #endregion }
public void DadoASituacaoSituacaoXSemSEOTAssociadaAEla(string situacaoX) { ConfiguracaoDocumentoSituacao situacao = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao(SessionTest, "", "Red", CsColorDomain.Custom, true); situacaoDic[situacaoX] = situacao; }
/// <summary> /// Cria um objeto de SolicitacaoOrcamento /// </summary> /// <param name="session">Sessão</param> /// <param name="responsavel">Responsável pela Solicitação</param> /// <param name="situacao">Situação da Solicitação</param> /// <param name="prioridade">Prioridade da Solicitação</param> /// <param name="titulo">Título da Solicitação</param> /// <param name="prazo">Prazo da Solicitação</param> /// <param name="cliente">nome do cliente</param> /// <param name="save">Indica se é para salvar ou não</param> /// <returns>Objeto de SolicitacaoOrcamento</returns> public static SolicitacaoOrcamento CriarSolicitacaoOrcamento(Session session, Colaborador responsavel, ConfiguracaoDocumentoSituacao situacao, CsPrioridade prioridade, string titulo, DateTime prazo, EmpresaInstituicao cliente, bool save = false) { SolicitacaoOrcamento solicitacao = new SolicitacaoOrcamento(session); solicitacao.Cliente = cliente; solicitacao.Responsavel = responsavel; solicitacao.Situacao = situacao; solicitacao.CsPrioridade = prioridade; solicitacao.TxTitulo = titulo; solicitacao.DtPrazo = prazo; if (cliente != null) { solicitacao.Cliente = cliente; } if (save) { solicitacao.Save(); } return(solicitacao); }
public void SolicitacaoEditarSalvarOrcamentlo() { //Criar uma solicitação de orçamento com a situação "Em revisão técnica" //Inicio //Passo 1 DateTime dtPrazo = DateTime.Now; string data = dtPrazo.ToString("dd/MM/yyyy"); string emailCliente = "*****@*****.**"; // Colaborador Colaborador colaborador = ColaboradorFactory.CriarColaborador(SessionTest, "000", DateTime.Now, "*****@*****.**", "Solicitacao", "Orcamento", "Historico", "nome.completo"); // Situações ConfiguracaoDocumentoSituacao situacaoEmrevisaoTecnica = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Em Revisão Técnica", "black", CsColorDomain.System, true); EmpresaInstituicao cliente = EmpresaInstituicaoFactory.Criar(SessionTest, "Novo Cliente", "FPF", emailCliente, "0000-0000", true); //histórico da solicitação de orçamento // Solicitação de orçamento SolicitacaoOrcamento solicitacao = SolicitacaoOrcamentoFactory.CriarSolicitacaoOrcamento(SessionTest, colaborador, situacaoEmrevisaoTecnica, CsPrioridade.Alta, "TesteEditarSalvarSolicitação", dtPrazo, cliente); solicitacao.Save(); solicitacao.Reload(); // Dados do cliente //solicitacao.Cliente = cliente; string texto = solicitacao._TextoEmail; solicitacao.SolicitacaoOrcamentoHistoricos[0].Comentario = "Teste cadastrar solicitação"; Assert.AreEqual("Em Revisão Técnica", solicitacao.Situacao.TxDescricao, "Visualizar no grind situação foi alterada"); //testar e-mail Assert.IsTrue((new Regex(String.Format(".<td>{0:dd/MM/yyyy}.", dtPrazo))).IsMatch(texto), "O email deveria conter a data de criação do histórico"); Assert.IsTrue((new Regex(".<td>Em Revisão Técnica</td>.")).IsMatch(texto), "O email deveria conter a situação em revisão técnica"); //testa Histórico Assert.AreEqual("Em Revisão Técnica", solicitacao.SolicitacaoOrcamentoHistoricos[0].Situacoes.TxDescricao, "A situação deveria aparecer no histórico"); Assert.AreEqual(dtPrazo.ToString("dd/MM/yyyy"), solicitacao.SolicitacaoOrcamentoHistoricos[0].DataHora.ToString("dd/MM/yyyy"), "A data atual deveria aparecer no histórico"); Assert.IsNotNull(solicitacao.SolicitacaoOrcamentoHistoricos[0].Comentario, "O comentário deveria aparecer no histórico"); //passo 2 //Editar a solicitação de orçamento da pré-condição. ConfiguracaoDocumentoSituacao situacaoEntregue = ConfiguracaoDocumentoSituacaoFactory.CriarConfiguracaoDocumentoSituacao( SessionTest, "Entregue", "blue", CsColorDomain.System, true); solicitacao.Situacao = situacaoEntregue; solicitacao.TxObservacao = "Solicitação foi mudada para entregue"; solicitacao.Save(); string texto2 = solicitacao._TextoEmail; Assert.AreEqual("Entregue", solicitacao.Situacao.TxDescricao, "Situação deve ter sido alterada para entregue"); //testa Histórico, com situação = entregue Assert.AreEqual("Entregue", solicitacao.SolicitacaoOrcamentoHistoricos[0].Situacoes.TxDescricao, "A situação entregue deveria aparecer no histórico"); Assert.AreEqual(dtPrazo.ToString("dd/MM/yyyy"), solicitacao.SolicitacaoOrcamentoHistoricos[0].DataHora.ToString("dd/MM/yyyy"), "A data atual deveria aparecer no histórico"); Assert.IsNotNull(solicitacao.SolicitacaoOrcamentoHistoricos[0].Comentario, "O comentário deveria aparecer no histórico"); //testar e-mail, com situação = entregue Assert.IsTrue((new Regex(String.Format(".<td>{0:dd/MM/yyyy}.", dtPrazo))).IsMatch(texto2), "O email deveria conter a data de criação do histórico"); }
/// <summary> /// Criar email para envio com cópia oculta /// </summary> /// <param name="session">Sessão</param> /// <param name="txEmail">Email</param> /// <param name="situacao">Situação</param> /// <param name="solicitacao">Solicitação</param> /// <param name="save">Se é para salvar ou não</param> /// <returns>Objeto de ConfiguracaoDocumentoSituacaoEmailCco</returns> public static ConfiguracaoDocumentoSituacaoEmailCco CriarEmailCco(Session session, string txEmail, ConfiguracaoDocumentoSituacao situacao = null, bool save = false) { ConfiguracaoDocumentoSituacaoEmailCco email = new ConfiguracaoDocumentoSituacaoEmailCco(session); email.TxEmail = txEmail; email.ConfiguracaoDocumentoSituacao = situacao; if (save) { email.Save(); } return(email); }