protected Reuniao CarregaReuniao(int id_reuniao) { //Cria o wrapper spsWrapper2 objWrapper = new spsWrapper2(); //carrega a REunião var objSaida = (from SPListItem item in objWrapper.RetornaLista("Reunioes", new string[] { "Hora de Início", "Title" }, SPContext.Current.Web.ID) where item.ID == id_reuniao select new Reuniao { dt_reuniao = Convert.ToDateTime(item["Hora de Início"]), ID_Reuniao = item.ID, Titulo = item.Title } ).FirstOrDefault(); //Adiciona os Participantes. //Participantes.. objSaida.Participantes.AddRange(Participante.Participantes(objSaida.ID_Reuniao)); DateTime dtInicioFiltro = objSaida.dt_reuniao.Date.AddDays(-7); ////Carrega as pautas que tiveram tarefas alteradas List <Pauta> objPautas = Pauta.Pautas(dtInicioFiltro, objSaida.dt_reuniao); //Pauta.Pautas().Where(f => f.dt_modificado >= dtInicioFiltro && f.dt_modificado <= objSaida.dt_reuniao).ToList(); objSaida.Pautas.AddRange(objPautas.OrderBy(f => f.Titulo)); return(objSaida); }
protected void AtualizaCache() { // ViewState["Pautas"] = CarregaPautas(); lock (_lock) { SPContext.Current.Site.Cache["Pautas"] = Pauta.Pautas(); } }
public void LimpaCachePautas(HttpContext context) { string strSaida = "{'Resposta': {" + " 'Codigo': '{0}', " + " 'Descricao': '{1}' " + "}} "; try { SPContext.Current.Site.Cache["Pautas"] = Pauta.Pautas(); context.Response.Write(strSaida.Replace("{0}", "0").Replace("{1}", "Sucesso")); } catch (Exception ex) { context.Response.Write(strSaida.Replace("{0}", "-1").Replace("{1}", ex.Message)); } }
//Gerar a ata protected void btnGerar_Click(object sender, EventArgs e) { if (this.cboDataReuniao.SelectedItem == null) { this.lblErro.Text = "Erro, você deve selecionar uma reunião para gerar a ATA"; this.pnlErro.Visible = true; return; } int idReuniao = Convert.ToInt32(this.cboDataReuniao.SelectedItem.Value); //Carrega a reunião Reuniao objReuniao = CarregaReuniao(idReuniao); //Verifica se a reunião existe if (objReuniao == null) { lblErro.Text = "Reunião Não encontrada!"; this.pnlErro.Visible = true; return; } try { //Instancia o relatório reports.rptGeradorAta2 objRelatorio = new reports.rptGeradorAta2(); //Instancia o dataset DataSet objDs = objRelatorio.dsAta1; //Adiciona a reunião objDs.Tables["Reuniao"].Rows.Add(objReuniao.ID_Reuniao, objReuniao.dt_reuniao > new DateTime(2000, 1, 1) ? (DateTime?)objReuniao.dt_reuniao : null, //objReuniao.dt_reuniao, objReuniao.Titulo); //Adiciona os PArticipantes foreach (Participante p in objReuniao.Participantes) { objDs.Tables["Participantes"].Rows.Add(p.ID_Reuniao, p.Nome, "mailto:" + p.Email); } //Pautas originais (status originais) List <Pauta> objPautasOriginais = Pauta.Pautas(); //Adiciona as Pautas foreach (Pauta pauta in objReuniao.Pautas) { //Adiciona a pauta objDs.Tables["Pauta"].Rows.Add(idReuniao, pauta.ID, pauta.Titulo, objPautasOriginais.Find(p => p.ID == pauta.ID).Status); foreach (Tarefa tarefa in pauta.Tarefas) { //Id-tarefa, idpauta, titulo, atribuidoa, status, data prevista //Adiciona as tarefas da pauta. objDs.Tables["Tarefa"].Rows.Add(tarefa.ID, tarefa.ID_Pauta, tarefa.Titulo, tarefa.Atribuidaa, objPautasOriginais.Find(p => p.ID == pauta.ID).Tarefas.Find(t => t.ID == tarefa.ID).Status, ((tarefa.DataPrevista.HasValue && tarefa.DataPrevista.Value > new DateTime(2000, 01, 01)) ? tarefa.DataPrevista : null), tarefa.Descricao, ((tarefa.DataConclusao.HasValue && tarefa.DataConclusao.Value > new DateTime(2000, 01, 01)) ? tarefa.DataConclusao : null)); foreach (ItemTarefa itemTarefa in tarefa.Itens) { objDs.Tables["ItemTarefa"].Rows.Add( itemTarefa.ID, itemTarefa.ID_TAREFA, //itemTarefa.dt_reuniao, ((itemTarefa.dt_reuniao.HasValue && itemTarefa.dt_reuniao.Value > new DateTime(2000, 01, 01)) ? itemTarefa.dt_reuniao : null), objPautasOriginais.Find(p => p.ID == pauta.ID).Tarefas.Find(t => t.ID == tarefa.ID).Itens.Find(i => i.ID == itemTarefa.ID).Status, //itemTarefa.Status, itemTarefa.LoginResponsavel.Replace("EMBRATEL\\", "").Replace("DESENV2010\\", "") + "@", itemTarefa.Detalhes, itemTarefa.Titulo, itemTarefa.Prazo.HasValue && itemTarefa.Prazo.Value > new DateTime(2000, 1, 1) ? itemTarefa.Prazo : null //itemTarefa.Prazo ); } } } //Verifica se há pauta em andamento caso não adiciona uma pauta em branco // objDs.Tables["Pauta"].Rows.Add(idReuniao, pauta.ID, pauta.Titulo, objPautasOriginais.Find(p => p.ID == pauta.ID).Status); objDs.Tables["Pauta"].DefaultView.Sort = "Status desc"; if (!(objDs.Tables["Pauta"].DefaultView.Find("Concluído") >= 0)) { objDs.Tables["Pauta"].Rows.Add(idReuniao, -1, "", "Concluído"); } if (!(objDs.Tables["Pauta"].DefaultView.Find("Em Andamento") >= 0)) { objDs.Tables["Pauta"].Rows.Add(idReuniao, -1, "", "Em Andamento"); } //Grava o arquivo no sharepoint //Limpa os arquivos anexos da reuniao MemoryStream msArquivo = new MemoryStream(); objRelatorio.ExportToRtf(msArquivo); //monta o nome do arquivo string strNomeArquivo = string.Format("ATA_PREVENTIVAS_{0:dd_MM_yyyy}_.RTF", objReuniao.dt_reuniao); GravaAtaReuniao(objReuniao.ID_Reuniao, strNomeArquivo, msArquivo.ToArray()); //seta os componentes this.btnEnviarEmail.CommandArgument = objReuniao.ID_Reuniao.ToString(); this.btnVisualizar.NavigateUrl = string.Format("/ComunidadePreventivasVoc/Lists/Reunioes/Attachments/{0}/{1}", objReuniao.ID_Reuniao, strNomeArquivo); this.pnlErro.Visible = false; this.pnlResultado.Visible = true; } catch (Exception ex) { this.lblErro.Text = "Erro ao gerar a ATA o erro foi: " + ex.Message; this.pnlErro.Visible = true; } }