public DocumentoCondivisione RecuperaDocumentoCondivisione(Guid id) { DocumentoCondivisione documento = null; SqlServerExecuteObject sseo = null; SqlDataReader dr = null; string sSql = @"SELECT R.IDRisorsaCondivisione, R.IDTipoContenutoRisorsa, R.Titolo, R.Url, R.Soggetto, R.Scopo, R.Abstract, R.Lingua, R.Commenti, R.Origine, R.Riferimenti, R.ParoleChiave, R.Territori, R.DataValidita AS DataScadenza, R.DataPubblicazione, R.DataCreazione, R.Autore, R.ResponsabileMetadato, R.ResponsabilePubblicazione, R.Dimensione FROM dbo.TBLRisorseCondivisione AS R WHERE R.IDRisorsaCondivisione = @IDRisorsaCondivisione;"; sseo = new SqlServerExecuteObject(); sseo.CommandText = sSql; sseo.CommandType = CommandType.Text; sseo.SqlParameters.AddWithValue("@IDRisorsaCondivisione", id); dr = SqlProvider.ExecuteReaderObject(sseo); while (dr.Read()) { documento = RiempiIstanza(dr); } if (dr != null) { dr.Close(); dr.Dispose(); } return(documento); }
private DocumentoCondivisione RiempiIstanza(SqlDataReader dr) { if (dr == null) { throw new ArgumentNullException("dr"); } DocumentoCondivisione d = new DocumentoCondivisione(); d.ID = dr.GetGuid(0); d.TipoContenutoRisorsa = TipoContenutoRisorsaRepository.Instance.RecuperaTipoContenutoRisorsa(dr.GetInt32(1)); d.Titolo = dr.GetString(2); d.Url = dr.IsDBNull(3) ? "" : dr.GetString(3); d.Soggetto = dr.IsDBNull(4) ? "" : dr.GetString(4); d.Scopo = dr.IsDBNull(5) ? "" : dr.GetString(5); d.Abstract = dr.IsDBNull(6) ? "" : dr.GetString(6); d.Lingua = dr.IsDBNull(7) ? "" : dr.GetString(7); d.Commenti = dr.IsDBNull(8) ? "" : dr.GetString(8); d.Origine = dr.IsDBNull(9) ? "" : dr.GetString(9); d.Riferimenti = dr.IsDBNull(10) ? "" : dr.GetString(10); d.ParoleChiave = dr.IsDBNull(11) ? "" : dr.GetString(11); d.Territori = dr.IsDBNull(12) ? "" : dr.GetString(12); d.DataScadenza = dr.IsDBNull(13) ? null : (DateTime?)dr.GetDateTime(13); d.DataPubblicazione = dr.IsDBNull(14) ? null : (DateTime?)dr.GetDateTime(14); d.DataCreazione = dr.IsDBNull(15) ? null : (DateTime?)dr.GetDateTime(15); d.Autore = dr.IsDBNull(16) ? "" : dr.GetString(16); d.ResponsabileMetadato = dr.IsDBNull(17) ? "" : dr.GetString(17); d.ResponsabilePubblicazione = dr.IsDBNull(18) ? "" : dr.GetString(18); d.Dimensione = dr.IsDBNull(19) ? null : (int?)dr.GetInt32(19); return(d); }
public List <DocumentoCondivisione> RecuperaDocumentiCondivisione(string testo, string elencoID, int startrowNum, int endRowNum, out int rows) { List <DocumentoCondivisione> documentiCondivisione = new List <DocumentoCondivisione>(); rows = 0; SqlServerExecuteObject sseo = null; SqlDataReader dr = null; string sSql, sSqlW = ""; if (elencoID.Contains(",")) { sSqlW = " WHERE S.IDElenco in (" + elencoID + ") AND ((R.Titolo LIKE @testo) OR (R.Soggetto LIKE @testo))"; } else { sSqlW = " WHERE (S.IDElenco = " + elencoID + " OR " + elencoID + " IS NULL) AND ((R.Titolo LIKE @testo) OR (R.Soggetto LIKE @testo))"; } sSql = @"SELECT * FROM ( SELECT R.IDRisorsaCondivisione, R.IDTipoContenutoRisorsa, R.Titolo, R.Url, R.Soggetto, R.Scopo, R.Abstract, R.Lingua, R.Commenti, R.Origine, R.Riferimenti, R.ParoleChiave, R.Territori, R.DataValidita AS DataScadenza, R.DataPubblicazione, R.DataCreazione, R.Autore, R.ResponsabileMetadato, R.ResponsabilePubblicazione, R.Dimensione, ROW_NUMBER() OVER(ORDER BY S.Ordine ASC) ROWNUM FROM dbo.TBLRisorseCondivisione AS R INNER JOIN dbo.STGRisorseElenchi AS S ON R.IDRisorsaCondivisione = S.IDRisorsa " + sSqlW + ") R WHERE R.ROWNUM > @StartRowNum AND R.ROWNUM <= @EndRowNum; SELECT COUNT(*) FROM dbo.TBLRisorseCondivisione AS R INNER JOIN dbo.STGRisorseElenchi AS S ON R.IDRisorsaCondivisione = S.IDRisorsa " + sSqlW + ";"; sseo = new SqlServerExecuteObject(); sseo.CommandText = sSql; sseo.SqlParameters.AddWithValue("@StartRowNum", startrowNum); sseo.SqlParameters.AddWithValue("@EndRowNum", endRowNum); sseo.SqlParameters.AddWithValue("@testo", string.Format("%{0}%", testo)); dr = SqlProvider.ExecuteReaderObject(sseo); while (dr.Read()) { DocumentoCondivisione documento = RiempiIstanza(dr); documentiCondivisione.Add(documento); } if (dr.NextResult() && dr.Read()) { rows = dr.GetInt32(0); } if (dr != null) { dr.Close(); dr.Dispose(); } return(documentiCondivisione); }
public ActionResult DocumentoCondivisione(Guid?id) { ActionResult result = null; DocumentoCondivisione documento = null; if (id.HasValue) { documento = DocumentoCondivisioneRepository.Instance.RecuperaDocumentoCondivisione(id.Value); } if (documento != null && documento.TipoContenutoRisorsa.ID != 12) { string filepath = null; string contenttype = null; string ext = Path.GetExtension(documento.Url).ToLowerInvariant(); contenttype = ContentTypeByExtension(ext); filepath = FileUtility.VADocumentoCondivisione(documento.Url); if (System.IO.File.Exists(filepath)) { result = File(filepath, contenttype, documento.Url); if (!Request.Browser.Crawler) { new VAWebRequestDocumentoDownloadEvent("VA Download documento", this, id, VAWebEventTypeEnum.DownloadDocumentoCondivisione).Raise(); } } else { result = HttpNotFound(); } } else { result = HttpNotFound(); } return(result); }
public ActionResult MetadatoRisorsaCondivisione(Guid id) { ActionResult result = null; DatiEStrumentiMetadatoRisorsaCondivisioneModel model = new DatiEStrumentiMetadatoRisorsaCondivisioneModel(); model.VoceMenu = VoceMenuRepository.Instance.RecuperaVoceMenu("MetadatoRisorsaCondivisione"); DocumentoCondivisione risorsa = DocumentoCondivisioneRepository.Instance.RecuperaDocumentoCondivisione(id); if (risorsa != null && model.VoceMenu != null) { model.Risorsa = risorsa; if (!string.IsNullOrWhiteSpace(risorsa.Soggetto)) { ModelUtils.AggiungiRiga(model.InformazioniGenerali, DizionarioService.METADATO_LabelOggetto, risorsa.Soggetto); } if (!string.IsNullOrWhiteSpace(risorsa.Scopo)) { ModelUtils.AggiungiRiga(model.InformazioniGenerali, DizionarioService.METADATO_LabelScopo, risorsa.Scopo); } if (!string.IsNullOrWhiteSpace(risorsa.Abstract)) { ModelUtils.AggiungiRiga(model.InformazioniGenerali, DizionarioService.METADATO_LabelAbstract, risorsa.Abstract); } if (!string.IsNullOrWhiteSpace(risorsa.Lingua)) { ModelUtils.AggiungiRiga(model.InformazioniGenerali, DizionarioService.METADATO_LabelLingua, risorsa.Lingua); } // Informazioni Ricerca if (!string.IsNullOrWhiteSpace(risorsa.Commenti)) { ModelUtils.AggiungiRiga(model.InformazioniRicerca, DizionarioService.METADATO_LabelCommenti, risorsa.Commenti); } if (!string.IsNullOrWhiteSpace(risorsa.Origine)) { ModelUtils.AggiungiRiga(model.InformazioniRicerca, DizionarioService.METADATO_LabelOrigine, risorsa.Origine); } if (!string.IsNullOrWhiteSpace(risorsa.Riferimenti)) { ModelUtils.AggiungiRiga(model.InformazioniRicerca, DizionarioService.METADATO_LabelRiferimenti, risorsa.Riferimenti); } if (!string.IsNullOrWhiteSpace(risorsa.ParoleChiave)) { ModelUtils.AggiungiRiga(model.InformazioniRicerca, DizionarioService.METADATO_LabelParoleChiave, risorsa.ParoleChiave); } if (!string.IsNullOrWhiteSpace(risorsa.Territori)) { ModelUtils.AggiungiRiga(model.InformazioniRicerca, DizionarioService.METADATO_LabelTerritori, risorsa.Territori); } // Date if (risorsa.DataScadenza.HasValue) { ModelUtils.AggiungiRiga(model.Date, DizionarioService.METADATO_LabelDataScadenza, risorsa.DataScadenza.Value.ToString(CultureHelper.GetDateFormat())); } if (risorsa.DataPubblicazione.HasValue) { ModelUtils.AggiungiRiga(model.Date, DizionarioService.METADATO_LabelDataPubblicazione, risorsa.DataPubblicazione.Value.ToString(CultureHelper.GetDateFormat())); } if (risorsa.DataCreazione.HasValue) { ModelUtils.AggiungiRiga(model.Date, DizionarioService.METADATO_LabelDataStesura, risorsa.DataCreazione.Value.ToString(CultureHelper.GetDateFormat())); } if (!string.IsNullOrWhiteSpace(risorsa.Autore)) { ModelUtils.AggiungiRiga(model.Entita, DizionarioService.METADATO_LabelAutore, risorsa.Autore); } if (!string.IsNullOrWhiteSpace(risorsa.ResponsabileMetadato)) { ModelUtils.AggiungiRiga(model.Entita, DizionarioService.METADATO_LabelResponsabileMetadato, risorsa.ResponsabileMetadato); } if (!string.IsNullOrWhiteSpace(risorsa.ResponsabilePubblicazione)) { ModelUtils.AggiungiRiga(model.Entita, DizionarioService.METADATO_LabelResponsabilePubblicazione, risorsa.ResponsabilePubblicazione); } // model.Widget = widget; result = View(model); } else { result = HttpNotFound(); } return(result); }