protected void btSalvar_Click(object sender, EventArgs e) { try { using (UnitOfWork loUnitOfWork = new UnitOfWork()) { RelatorioBug loRelatorio = loUnitOfWork.RelatoriosBug.GetByID(Convert.ToInt32(this.Session["RelatorioBugId"])); ComentarioRelatorio loComentario = new ComentarioRelatorio(); loComentario.Conteudo = this.txtComentario.Text.Trim(); loComentario.Data = DateTime.Now; loComentario.DataHora = DateTime.Now; loComentario.UltimaRevisao = DateTime.Now; loComentario.Usuario = this.GetUsuario(loUnitOfWork.Context); loComentario.Relatorio = loRelatorio; loUnitOfWork.Comentario.Insert(loComentario); loUnitOfWork.Save(); this.AddAlert("Resposta enviada com sucesso."); LoadRelatorio(); } } catch (Exception ex) { this.AddErrorAlert(ex.Message); } }
protected void btPagamento_Click(object sender, EventArgs e) { try { using (UnitOfWork loUnitOfWork = new UnitOfWork()) { RelatorioBug loRelatorio = loUnitOfWork.RelatoriosBug.GetByID(Convert.ToInt32(this.Session["RelatorioBugId"])); Recompensa loRecompensa = new Recompensa(); loRecompensa.Estado = EstadoRecompensa.ARetirar; loRecompensa.Pagador = loUnitOfWork.Funcionario.FindByUsername(this.User.Identity.Name); loRecompensa.Relatorio = loRelatorio; loRecompensa.Valor = decimal.Parse(this.txtPagamento.Text.Replace(",", ".").Replace("R$", ""), CultureInfo.InvariantCulture); loRecompensa.Avaliador = loUnitOfWork.Funcionario.FindByUsername(this.User.Identity.Name); loRelatorio.Recompensa = loRecompensa; loUnitOfWork.RelatoriosBug.Update(loRelatorio); loUnitOfWork.Save(); this.AddAlert("O pagamento foi realizado com sucesso."); LoadRelatorio(); } } catch (Exception ex) { this.AddErrorAlert(ex.Message); } }
protected void btSalvar_Click(object sender, EventArgs e) { try { using (UnitOfWork unitOfWork = new UnitOfWork()) { Usuario usuario = this.GetUsuario(unitOfWork.Context); ProgramaRecompensas programa = unitOfWork.ProgramasRecompensas.GetByID(Convert.ToInt32(this.Session["ProgramaRecompensasId"])); RelatorioBug relatorio = new RelatorioBug { Titulo = this.txtTitulo.Text.Trim(), Impacto = this.txtImpacto.Text.Trim(), Descricao = this.txtDescricao.Text.Trim(), Estado = EstadoRelatorioBug.EmAnalise, Pesquisador = usuario.Pesquisador, Programa = programa, Data = DateTime.Now }; unitOfWork.RelatoriosBug.Insert(relatorio); unitOfWork.Save(); this.Response.Redirect(Urls.ProgramasAbertos); } } catch (Exception ex) { this.AddErrorAlert(ex.Message); } }
protected void AnalisarRelatorio(bool aceitar) { try { using (UnitOfWork loUnitOfWork = new UnitOfWork()) { RelatorioBug loRelatorio = loUnitOfWork.RelatoriosBug.GetByID(Convert.ToInt32(this.Session["RelatorioBugId"])); loRelatorio.Estado = aceitar ? EstadoRelatorioBug.Concluido : EstadoRelatorioBug.Recusado; loUnitOfWork.RelatoriosBug.Update(loRelatorio); loUnitOfWork.Save(); this.AddAlert("O relatório foi analisado com sucesso."); this.LoadRelatorio(); } } catch (Exception ex) { this.AddErrorAlert(ex.Message); } }
protected void LoadRelatorio() { using (UnitOfWork unitOfWork = new UnitOfWork()) { RelatorioBug loRelatorio = unitOfWork.RelatoriosBug.GetByID(Convert.ToInt32(this.Session["RelatorioBugId"])); this.lblTitulo.Text = loRelatorio.Titulo; this.lblData.Text = loRelatorio.Data.ToShortDateString(); this.lblPesquisador.Text = " " + loRelatorio.Pesquisador.Usuario.Nome + " " + loRelatorio.Pesquisador.Usuario.Sobrenome; this.lblStatus.Text = Enums.GetDescription(loRelatorio.Estado); this.lblStatus.CssClass = String.Join(" ", lblStatus .CssClass .Split(' ') .Except(new string[] { "", loRelatorio.Estado.GetTextClass() }) .Concat(new string[] { loRelatorio.Estado.GetTextClass() }) .ToArray() ); this.divAceitar.Visible = loRelatorio.Comentarios.Count > 0 && loRelatorio.Estado == EstadoRelatorioBug.EmAnalise; this.divPagamento.Visible = loRelatorio.Estado == EstadoRelatorioBug.Concluido; if (loRelatorio.Recompensa != null) { this.txtPagamento.Text = String.Format("{0:C}", loRelatorio.Recompensa.Valor); this.txtPagamento.Enabled = false; this.btPagamento.Visible = false; } this.lblImpacto.Text = loRelatorio.Impacto; this.divContent.InnerHtml = loRelatorio.Descricao; this.rptComentarios.DataSource = loRelatorio.Comentarios.OrderByDescending(i => i.UltimaRevisao).ToList(); this.rptComentarios.DataBind(); if (loRelatorio.Comentarios.Count > 0) { this.txtComentario.Visible = false; this.btSalvar.Visible = false; } } }