/// <summary>
        /// Evento chamado quando modifica uma modalidade mo lookup
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void lookUpEdit1_EditValueChanged(object sender, EventArgs e)
        {
            if (Planejamento != null)
            {
                spinEditPeriodoAquisitivoFeriasPlanejadas.EditValue           = Planejamento.Periodo._PlanejamentoFerias;
                spinEditPeriodoAquisitivoFeriasPlanejadas.Properties.ReadOnly = true;
            }

            if (lookUpEditModalidade.EditValue == null)
            {
                vendaFeriascomboBoxEdit.Enabled   = false;
                vendaFeriascomboBoxEdit.EditValue = null;

                return;
            }

            if (((ModalidadeFerias)lookUpEditModalidade.EditValue).PodeVender)
            {
                vendaFeriascomboBoxEdit.Enabled   = true;
                vendaFeriascomboBoxEdit.EditValue = EnumUtil.DescricaoEnum(CsSimNao.Sim);
            }
            else
            {
                vendaFeriascomboBoxEdit.Enabled   = false;
                vendaFeriascomboBoxEdit.EditValue = EnumUtil.DescricaoEnum(CsSimNao.Não);
            }

            SetDtTermino();
            this.Refresh();
        }
Example #2
0
        /// <summary>
        /// Regra de negócio que faz a concatenação da string de CasoTestePassoResultadoEsperado.TxResultadoEsperado
        /// </summary>
        /// <returns>String Concatenadas</returns>
        public String GetStringsConcatenadas()
        {
            StringBuilder str = new StringBuilder();

            ResultadosEsperados.Sorting.Add(new SortProperty("NbSequencia", SortingDirection.Ascending));

            foreach (CasoTestePassoResultadoEsperado item in ResultadosEsperados)
            {
                str.AppendLine(String.Format("{0} - {1}", EnumUtil.DescricaoEnum(item.CsTiposResultado), item.TxResultadoEsperado));
            }

            return(str.ToString());
        }
Example #3
0
        public ActionResult SituacoesGet()
        //Usar Listar ao invés de Get. Ass.: Ayrton
        {
            //Passar isso para um BO. Ass.: Ayrton
            var situacoes = (from s in Enum.GetValues(typeof(CsProjetoSituacaoDomain)).Cast <int>()
                             select new
            {
                Valor = s,
                Desc = EnumUtil.DescricaoEnum((CsProjetoSituacaoDomain)s)
            }).ToList();


            return(Json(new { situacoes = situacoes }, JsonRequestBehavior.AllowGet));
        }
        /// <summary>
        /// Método que popula o modal com os valores do registro selecionado
        /// </summary>
        private void PopulateComponents()
        {
            vendaFeriascomboBoxEdit.Properties.Items.Add(EnumUtil.DescricaoEnum(CsSimNao.Sim));
            vendaFeriascomboBoxEdit.Properties.Items.Add(EnumUtil.DescricaoEnum(CsSimNao.Não));

            if (!(string.IsNullOrWhiteSpace(Appointment.Description)))
            {
                string[] values = Appointment.Description.Split(',');

                this.Text = String.Format("Planejamento de ferias - {0}", values[10]);

                //popula os campos do area de periodo aquisitivo=
                lookUpEditColaborador.EditValue = Session.FindObject <Colaborador>(CriteriaOperator.Parse("Oid = ?", values[0]));
                // lookUpEditColaborador.Text = lookUpEditColaborador.EditValue.ToString();
                lookUpEditPeriodo.EditValue = Session.FindObject <ColaboradorPeriodoAquisitivo>(CriteriaOperator.Parse("Oid = ?", values[1]));
                spinEditPeriodoAquisitivoFeriasPlanejadas.EditValue = values[2];

                //Popula a area de planejamento de ferias
                dateEditPLFeriasInicio.EditValue = Appointment.Start;
                textBoxDtTermino.Text            = Appointment.End.ToShortDateString();

                //insere a modalidade do registro selecionado
                lookUpEditModalidade.EditValue = Session.FindObject <ModalidadeFerias>(CriteriaOperator.Parse("Oid = ?", values[3]));

                vendaFeriascomboBoxEdit.Enabled = true;

                if (values[7].Equals(CsSimNao.Sim))
                {
                    vendaFeriascomboBoxEdit.EditValue = EnumUtil.DescricaoEnum(CsSimNao.Sim);
                }
                else
                {
                    vendaFeriascomboBoxEdit.EditValue = EnumUtil.DescricaoEnum(CsSimNao.Não);
                }

                textEditAtualizadoPor.EditValue = values[5];
                textEditPlanejadoPor.EditValue  = values[4];

                if (values[6].Equals("EmAtraso"))
                {
                    //insere o valor da situação do item selecionado se a situação for 'em atraso'
                    comboBoxEdit1.EditValue = EnumUtil.DescricaoEnum(CsSituacaoFerias.EmAtraso);
                }
                else
                {
                    //insere o valor da situação do item selecionado
                    comboBoxEdit1.EditValue = values[6];
                }
            }

            if (!(string.IsNullOrWhiteSpace(Appointment.Description)))
            {
                lookUpEditColaborador.Properties.ReadOnly = true;
                lookUpEditPeriodo.Properties.ReadOnly     = true;
            }
            else
            {
                //insere as modalidades no lookup de modalidades
                lookUpEditColaborador.EditValue = Colaborador.GetColaboradorCurrent(Session);
                lookUpEditPeriodo.EditValue     = Colaborador.GetColaboradorCurrent(Session).PeriodosAquisitivos[Colaborador.GetColaboradorCurrent(Session).PeriodosAquisitivos.Count - 1];

                textEditAtualizadoPor.Visible     = false;
                textEditPlanejadoPor.Visible      = false;
                labelPlanejadoPor.Visible         = false;
                labelControlAtualizadoPor.Visible = false;
            }

            //Pega todas as modalidades de ferias que estão ativas
            XPCollection <ModalidadeFerias> modalidades = new XPCollection <ModalidadeFerias>(Session, CriteriaOperator.Parse("CsSituacao = 'Ativo'"));

            //insere as modalidades no lookup de modalidades
            if (modalidades.Count > 0)
            {
                lookUpEditModalidade.Properties.DataSource = modalidades;
            }
            else
            {
                EnableComponents(false);
                throw new UserFriendlyException("Você deve primeiro cadastrar uma modalidade de férias.");
            }
            //insere os valores no comboBox de situação das ferias
            comboBoxEdit1.Properties.Items.Add(CsSituacaoFeriasPlanejamento.Planejado);
            comboBoxEdit1.Properties.Items.Add(CsSituacaoFeriasPlanejamento.Realizado);

            spinEditPeriodoAquisitivoFeriasPlanejadas.Properties.ReadOnly = true;

            //muda os campos de planejamento de ferias para ReadOnly
            textEditAtualizadoPor.Properties.ReadOnly = true;
            textEditPlanejadoPor.Properties.ReadOnly  = true;
        }
        /// <summary>
        /// Envio de email
        /// </summary>
        /// <returns>True se o email foi enviado e False se não foi</returns>
        private bool EnviarEmails()
        {
            try
            {
                // Dados não obrigatórios para inserção no email
                string tipoSolic;
                string reposit;
                string desc;
                string obs;

                if (TipoSolicitacao != null)
                {
                    tipoSolic = TipoSolicitacao.TxDescricao;
                }
                else
                {
                    tipoSolic = "<i>Não informado</i>";
                }

                if (!string.IsNullOrEmpty(TxRepositorio))
                {
                    reposit = TxRepositorio;
                }
                else
                {
                    reposit = "<i>Não informado</i>";
                }

                if (!string.IsNullOrEmpty(TxDescricao))
                {
                    desc = TxDescricao;
                }
                else
                {
                    desc = "<i>Não informada</i>";
                }

                if (!string.IsNullOrEmpty(TxObservacao))
                {
                    obs = TxObservacao;
                }
                else
                {
                    obs = "<i>Não informada</i>";
                }

                MailMessage mail = new MailMessage()
                {
                    From = new MailAddress(Solicitante.Email, "WexProject")
                };
                mail.To.Add(new MailAddress(Responsavel.Usuario.Email, Responsavel.Usuario.FullName));

                // Emails com cópia
                foreach (string cc in TxCc.Split(';'))
                {
                    if (!string.IsNullOrEmpty(cc))
                    {
                        mail.CC.Add(cc);
                    }
                }

                // Emails com cópia oculta
                foreach (string cco in TxCco.Split(';'))
                {
                    if (!string.IsNullOrEmpty(cco))
                    {
                        mail.Bcc.Add(cco);
                    }
                }

                mail.Subject    = GerarAssuntoEmailSeot();
                mail.IsBodyHtml = true;

                // Corpo do email
                string       body;
                const string Separador     = "<br style='clear: both;'>";
                string       styleFonte    = "font-family: Arial; font-size: 12px;";
                string       styleDivTitle = "style='background-color: #006600; color: #FFFFFF; text-align: left;";
                styleDivTitle += "font-weight: bold; width: 100%; margin: 0px; padding: 3px;'";

                body = String.Format("<div style='width: 100%; {0}'>", styleFonte);

                //Informação Mais Recente

                var ultimo_historico = SolicitacaoOrcamentoHistorico.GetUltimoHistorico(this);

                body += String.Format("<div {0}>Informação Mais Recente</div>", styleDivTitle);
                body += String.Format("{0}<b>Situação:</b> {1}", Separador, Situacao.TxDescricao);
                body += String.Format("{0}<b>Comentário:</b> {1}", Separador, ultimo_historico.Comentario);
                body += String.Format("{0}<b>Data/Hora:</b> {1}", Separador, ultimo_historico.DataHora.ToString("dd/MM/yyyy hh:mm"));
                body += String.Format("{0}<b>Alterado Por:</b> {1} {2}", Separador, ultimo_historico.AtualizadoPor.Usuario.FullName, Separador);
                // Dados Gerais
                body += String.Format("{0}<div {1}>Dados Gerais</div>", Separador, styleDivTitle);
                body += String.Format("{0}<b>Solicitante:</b> {1}", Separador, _Solicitante);
                body += String.Format("{0}<b>Responsável:</b> {1} ({2})", Separador, Responsavel.Usuario.FullName, Responsavel.Usuario.UserName);
                body += String.Format("{0}<b>Tipo:</b> {1}", Separador, tipoSolic);
                body += String.Format("{0}<b>Prioridade:</b> {1} {2}", Separador, EnumUtil.DescricaoEnum(CsPrioridade), Separador);
                // Dados da Solicitação de Orçamento
                body += String.Format("{0}<div {1}>Dados da Solicitação de Orçamento</div>", Separador, styleDivTitle);
                body += String.Format("{0}<b>Código:</b> {1}", Separador, TxCodigo);
                body += String.Format("{0}<b>Título:</b> {1}", Separador, TxTitulo);
                body += String.Format("{0}<b>Prazo:</b> {1}", Separador, DtPrazo.ToString("dd/MM/yyyy"));
                body += String.Format("{0}<b>Repositório:</b> {1} {2}", Separador, reposit, Separador);
                // Dados do Cliente
                body += String.Format("{0}<div {1}>Dados do Cliente</div>", Separador, styleDivTitle);
                body += String.Format("{0}<b>Cliente:</b> {1}", Separador, Cliente.TxNome);
                body += String.Format("{0}<b>Nome:</b> {1}", Separador, TxContatoCliente);
                body += String.Format("{0}<b>E-mail:</b> {1}", Separador, TxEmailContatoCliente);
                body += String.Format("{0}<b>Fone/Fax:</b> {1} {2}", Separador, TxFone, Separador);

                // Outros
                body += String.Format("{0}<div {1}>Outros</div>", Separador, styleDivTitle);
                body += String.Format("{0}<b>Descrição:</b> {1}", Separador, desc);
                body += String.Format("{0}<b>Observação:</b> {1} {2}", Separador, obs, Separador);

                // Tabela Histórico
                string stylePositionTable = "position: relative;left: -1.7px;top: -1px;right: -50px;";
                body += String.Format("{0}<div {1}>Histórico</div>", Separador, styleDivTitle);
                body += String.Format("<table style='width: 100%;{0};'><tbody><tr {1}>", stylePositionTable, styleDivTitle);
                body += String.Format("<td><div style='{0}'>Data/Hora</div></td>", styleFonte + "color: #FFFFFF;");
                body += String.Format("<td><div style='{0}'>Situação</div></td>", styleFonte + "color: #FFFFFF;");
                body += String.Format("<td><div style='{0}'>Responsavél</div></td>", styleFonte + "color: #FFFFFF;");
                body += String.Format("<td><div style='{0}'>Comentário</div></td>", styleFonte + "color: #FFFFFF;");
                body += String.Format("<td><div style='{0}'>Alterado Por</div></td></tr>", styleFonte + "color: #FFFFFF;");

                /*body += String.Format("{0}<table style='width: 100%;{1}'><tbody><tr {2}>", Separador, styleFonte, styleDivTitle);
                 * body += "<td>Data/Hora</td>";
                 * body += "<td>Situação</td>";
                 * body += "<td>Responsavél</td>";
                 * body += "<td>Comentário</td>";
                 * body += "<td>Alterado Por</td></tr>";*/

                foreach (SolicitacaoOrcamentoHistorico soh in SolicitacaoOrcamentoHistoricos)
                {
                    body += "<tr>";
                    body += String.Format("<td>{0}</td>", soh.DataHora.ToString("dd/MM/yyyy HH:mm"));
                    body += String.Format("<td>{0}</td>", soh.Situacoes);
                    body += String.Format("<td>{0}</td>", soh.ResponsavelHistorico);
                    body += String.Format("<td>{0}</td>", soh.Comentario);

                    if (soh.AtualizadoPor != null)
                    {
                        body += String.Format("<td>{0}</td>", soh.AtualizadoPor.ToString());
                    }
                    else
                    {
                        body += String.Format("<td>{0}</td>", string.Empty);
                    }

                    body += "</tr>";
                }

                body += "</tbody></table></div>";

                mail.Body  = body;
                textoEmail = body;

                SmtpClient smtp = new SmtpClient("fpfmail.dom.fpf.br", 25)
                {
                    EnableSsl = false
                };
                smtp.Send(mail);

                return(true);
            }
            catch (Exception e)
            {
                e.GetBaseException();
                return(false);
            }
        }
        /// <summary>
        /// String que concatena o campo TxMeta com as Estórias associadas
        /// </summary>
        /// <returns>String concatenada</returns>
        public String GetMetaPlusEstorias()
        {
            StringBuilder str = new StringBuilder();

            if (!string.IsNullOrEmpty(TxMeta))
            {
                str.AppendLine(TxMeta);
            }

            DesenvEstorias.Sorting.Add(new SortProperty("NbSequencia", SortingDirection.Ascending));

            foreach (CicloDesenvEstoria item in DesenvEstorias)
            {
                if (item.Meta == true)
                {
                    str.AppendLine(String.Format("- {0}({1} pts, Meta) - {2}", StrUtil.LimitarTamanhoColuna(100, item.Estoria._TxIdEstoria_Titulo), item.Estoria.NbTamanho, EnumUtil.DescricaoEnum(item.CsSituacao)));
                }
                else
                {
                    str.AppendLine(String.Format("- {0}({1} pts) - {2}", StrUtil.LimitarTamanhoColuna(100, item.Estoria._TxIdEstoria_Titulo), item.Estoria.NbTamanho, EnumUtil.DescricaoEnum(item.CsSituacao)));
                }
            }

            return(str.ToString());
        }
Example #7
0
        /// <summary>
        /// Cálculo do texto de planejamento de férias
        /// </summary>
        /// <param name="planCollection">Coleção de Planejamentos</param>
        /// <param name="planejamento">Texto do Planejamento de Férias</param>
        /// <param name="csSituacaoFerias">Situação de Férias</param>
        /// <returns>Texto do Planejamento de Férias</returns>
        public static string CalculoTextoPlanejamentoFerias(XPCollection <FeriasPlanejamento> planCollection, ref string planejamento, ref CsSituacaoFerias csSituacaoFerias)
        {
            if (planejamento == null)
            {
                planejamento     = string.Empty;
                csSituacaoFerias = CsSituacaoFerias.Planejado;
                planCollection.Sorting.Add(new SortProperty("DtInicio", SortingDirection.Ascending));

                foreach (FeriasPlanejamento plan in planCollection)
                {
                    if (plan.Oid != Guid.Empty)
                    {
                        if (plan.Vender == CsSimNao.Sim)
                        {
                            planejamento += String.Format("{0} dia(s) (Venda das Férias) - {1:dd/MM/yyyy} - {2:dd/MM/yyyy} ({3})\n",
                                                          plan.Modalidade.NbDias, plan.DtInicio, plan._DtRetorno, EnumUtil.DescricaoEnum(plan.CsSituacao));
                        }
                        else
                        {
                            planejamento += String.Format("{0} dia(s) - {1:dd/MM/yyyy} - {2:dd/MM/yyyy} ({3})\n",
                                                          plan.Modalidade.NbDias, plan.DtInicio, plan._DtRetorno, EnumUtil.DescricaoEnum(plan.CsSituacao));
                        }

                        // Setando a situação das férias do colaborador (em geral)
                        if (plan.CsSituacao == CsSituacaoFerias.EmAtraso)
                        {
                            csSituacaoFerias = CsSituacaoFerias.EmAtraso;
                        }
                    }
                }
            }

            return(planejamento);
        }
 /// <summary>
 /// Chamado ao transformar o objeto em string
 /// </summary>
 /// <returns>String</returns>
 public override string ToString()
 {
     return(EnumUtil.DescricaoEnum(CsTipoDocumento));
 }