コード例 #1
0
        public DocumentoPortale RecuperaDocumentoPortale(int id)
        {
            DocumentoPortale DocumentoPortale = null;

            SqlServerExecuteObject sseo = null;
            SqlDataReader          dr   = null;

            string sSql = "SELECT D.DocumentoPortaleID, D.TipoFileID, D.Nome_IT, D.Nome_EN, D.NomeFileOriginale, D.DataInserimento, D.DataUltimaModifica, D.Dimensione FROM dbo.TBL_DocumentiPortale AS D WHERE DocumentoPortaleID = @DocumentoPortaleID;";

            sseo             = new SqlServerExecuteObject();
            sseo.CommandText = sSql;
            sseo.CommandType = CommandType.Text;
            sseo.SqlParameters.AddWithValue("@DocumentoPortaleID", id);

            dr = SqlProvider.ExecuteReaderObject(sseo);

            while (dr.Read())
            {
                DocumentoPortale = RiempiIstanza(dr);
            }

            if (dr != null)
            {
                dr.Close();
                dr.Dispose();
            }

            return(DocumentoPortale);
        }
コード例 #2
0
        private int ModificaDocumentoPortale(DocumentoPortale DocumentoPortale)
        {
            int result = 0;

            SqlServerExecuteObject sseo = null;
            string sSql = "";

            sSql = "UPDATE dbo.TBL_DocumentiPortale SET TipoFileID = @TipoFileID, Nome_IT = @Nome_IT, Nome_EN = @Nome_EN, NomeFileOriginale = @NomeFileOriginale, " +
                   "DataUltimaModifica = @DataUltimaModifica, Dimensione = @Dimensione " +
                   "WHERE DocumentoPortaleID = @DocumentoPortaleID;";

            sseo             = new SqlServerExecuteObject();
            sseo.CommandText = sSql;
            sseo.SqlParameters.AddWithValue("@TipoFileID", DocumentoPortale.TipoFile.ID);
            sseo.SqlParameters.AddWithValue("@Nome_IT", DocumentoPortale.Nome_IT);
            sseo.SqlParameters.AddWithValue("@Nome_EN", DocumentoPortale.Nome_EN);
            sseo.SqlParameters.AddWithValue("@NomeFileOriginale", DocumentoPortale.NomeFileOriginale);
            sseo.SqlParameters.AddWithValue("@DataUltimaModifica", DocumentoPortale.DataUltimaModifica);
            sseo.SqlParameters.AddWithValue("@Dimensione", DocumentoPortale.Dimensione);
            sseo.SqlParameters.AddWithValue("@DocumentoPortaleID", DocumentoPortale.ID);

            SqlProvider.ExecuteNonQueryObject(sseo);

            result = DocumentoPortale.ID;

            return(result);
        }
コード例 #3
0
        private int InserisciDocumentoPortale(DocumentoPortale DocumentoPortale)
        {
            int result = 0;

            SqlServerExecuteObject sseo = null;
            string sSql = "";

            sSql = "INSERT INTO dbo.TBL_DocumentiPortale (TipoFileID, Nome_IT, Nome_EN, NomeFileOriginale, DataInserimento, DataUltimaModifica, Dimensione) VALUES " +
                   "(@TipoFileID, @Nome_IT, @Nome_EN, @NomeFileOriginale, @DataInserimento, @DataUltimaModifica, @Dimensione);" +
                   "SELECT @@IDENTITY;";

            sseo             = new SqlServerExecuteObject();
            sseo.CommandText = sSql;
            sseo.SqlParameters.AddWithValue("@TipoFileID", DocumentoPortale.TipoFile.ID);
            sseo.SqlParameters.AddWithValue("@Nome_IT", DocumentoPortale.Nome_IT);
            sseo.SqlParameters.AddWithValue("@Nome_EN", DocumentoPortale.Nome_EN);
            sseo.SqlParameters.AddWithValue("@NomeFileOriginale", DocumentoPortale.NomeFileOriginale);
            sseo.SqlParameters.AddWithValue("@DataInserimento", DocumentoPortale.DataInserimento);
            sseo.SqlParameters.AddWithValue("@DataUltimaModifica", DocumentoPortale.DataUltimaModifica);
            sseo.SqlParameters.AddWithValue("@Dimensione", DocumentoPortale.Dimensione);

            result = int.Parse(SqlProvider.ExecuteScalarObject(sseo).ToString());

            return(result);
        }
コード例 #4
0
        public ActionResult DocumentoPortale(int id = 0)
        {
            ActionResult     result           = null;
            DocumentoPortale documentoPortale = DocumentoPortaleRepository.Instance.RecuperaDocumentoPortale(id);

            if (documentoPortale != null)
            {
                string filepath    = null;
                string contenttype = null;
                string ext         = Path.GetExtension(documentoPortale.NomeFileOriginale).ToLowerInvariant();

                contenttype = ContentTypeByExtension(ext);

                filepath = FileUtility.VADocumentoPortale(string.Format("{0}{1}", documentoPortale.ID, ext));

                if (System.IO.File.Exists(filepath))
                {
                    result = File(filepath, contenttype, documentoPortale.NomeFileOriginale);
                    if (!Request.Browser.Crawler)
                    {
                        new VAWebRequestDocumentoDownloadEvent("VA Download documento", this, id, VAWebEventTypeEnum.DownloadDocumentoPortale).Raise();
                    }
                }
                else
                {
                    result = HttpNotFound();
                }
            }
            else
            {
                result = HttpNotFound();
            }

            return(result);
        }
コード例 #5
0
        public ActionResult Edita(int id)
        {
            ActionResult result = null;
            DocumentoPortaleEditaModel model            = new DocumentoPortaleEditaModel();
            DocumentoPortale           documentoPortale = null;

            documentoPortale = DocumentoPortaleRepository.Instance.RecuperaDocumentoPortale(id);

            if (documentoPortale != null)
            {
                model.Documento = documentoPortale;

                model.ID                     = id;
                model.EditaNome_IT           = documentoPortale.Nome_IT;
                model.EditaNome_EN           = documentoPortale.Nome_EN;
                model.EditaNomeFileOriginale = documentoPortale.NomeFileOriginale;
                model.EditaDimensione        = documentoPortale.Dimensione;
                model.EditaNuovoFile         = false;

                result = View(model);
            }
            else
            {
                result = HttpNotFound();
            }

            return(View(model));
        }
コード例 #6
0
        public DocumentoPortale CreaDocumentoPortale(string nome_IT, string nome_EN)
        {
            DocumentoPortale documentoPortale = null;

            if (string.IsNullOrWhiteSpace(nome_IT))
            {
                throw new ArgumentException("L'argomento non può essere null, vuoto o contenere solo spazi.", "nome_IT");
            }

            if (string.IsNullOrWhiteSpace(nome_EN))
            {
                throw new ArgumentException("L'argomento non può essere null, vuoto o contenere solo spazi.", "nome_EN");
            }

            documentoPortale = new DocumentoPortale();
            documentoPortale.DataInserimento    = DateTime.Now;
            documentoPortale.DataUltimaModifica = documentoPortale.DataInserimento;
            documentoPortale.NomeFileOriginale  = "-";
            documentoPortale.TipoFile           = null;
            documentoPortale.Dimensione         = 0;

            documentoPortale.Nome_IT = nome_IT;
            documentoPortale.Nome_EN = nome_EN;

            return(documentoPortale);
        }
コード例 #7
0
        public ActionResult Edita(DocumentoPortaleEditaModel model)
        {
            ActionResult     result           = null;
            DocumentoPortale documentoPortale = null;

            if (ModelState.IsValid)
            {
                int id = 0;
                ContenutoService cs       = new ContenutoService();
                string           ext      = Path.GetExtension(model.EditaNomeFileOriginale);
                TipoFile         tipoFile = TipoFileRepository.Instance.RecuperaTipoFile(ext);

                if (model.ID != 0)
                {
                    documentoPortale         = DocumentoPortaleRepository.Instance.RecuperaDocumentoPortale(model.ID);
                    documentoPortale.Nome_IT = model.EditaNome_IT.Trim();
                    documentoPortale.Nome_EN = model.EditaNome_EN.Trim();
                }
                else
                {
                    documentoPortale = cs.CreaDocumentoPortale(model.EditaNome_IT.Trim(), model.EditaNome_EN.Trim());
                }

                if (model.EditaNuovoFile)
                {
                    documentoPortale.TipoFile          = tipoFile;
                    documentoPortale.NomeFileOriginale = model.EditaNomeFileOriginale;
                    documentoPortale.Dimensione        = model.EditaDimensione;
                }

                id = cs.SalvaDocumentoPortale(documentoPortale);


                if (model.EditaNuovoFile)
                {
                    FileUtility.VASpostaDocumentoPortaleTemp(id, model.EditaNomeFileOriginale);
                }

                result = RedirectToAction("Edita", new { id = id });
            }
            else
            {
                if (model.ID != 0)
                {
                    documentoPortale = DocumentoPortaleRepository.Instance.RecuperaDocumentoPortale(model.ID);
                    model.Documento  = documentoPortale;
                }

                result = View(model);
            }

            return(result);
        }
コード例 #8
0
        internal int SalvaDocumentoPortale(DocumentoPortale DocumentoPortale)
        {
            int result = 0;

            if (DocumentoPortale.IsNew)
            {
                result = InserisciDocumentoPortale(DocumentoPortale);
            }
            else
            {
                result = ModificaDocumentoPortale(DocumentoPortale);
            }

            return(result);
        }
コード例 #9
0
        public int SalvaDocumentoPortale(DocumentoPortale documentoPortale)
        {
            int id = 0;

            if (documentoPortale == null)
            {
                throw new ArgumentNullException("documentoPortale");
            }

            documentoPortale.DataUltimaModifica = DateTime.Now;

            id = DocumentoPortaleRepository.Instance.SalvaDocumentoPortale(documentoPortale);

            return(id);
        }
コード例 #10
0
        public IEnumerable <DocumentoPortale> RecuperaDocumentiPortale(string testo, int startrowNum, int endRowNum, out int rows)
        {
            List <DocumentoPortale> documentiPortale = new List <DocumentoPortale>();

            rows = 0;

            SqlServerExecuteObject sseo = null;
            SqlDataReader          dr   = null;
            string sSql = "";

            sSql = "SELECT * FROM (" +
                   "SELECT D.DocumentoPortaleID, D.TipoFileID, D.Nome_IT, D.Nome_EN, D.NomeFileOriginale, D.DataInserimento, D.DataUltimaModifica, D.Dimensione, ROW_NUMBER() " +
                   "OVER(ORDER BY DataInserimento DESC) " +
                   "ROWNUM " +
                   "FROM dbo.TBL_DocumentiPortale AS D WHERE (D.Nome_IT LIKE @testo)" +
                   ") " +
                   "R WHERE R.ROWNUM > @StartRowNum AND R.ROWNUM <= @EndRowNum;" +
                   "SELECT COUNT(*) FROM dbo.TBL_DocumentiPortale AS D WHERE (D.Nome_IT LIKE @testo);";

            sseo             = new SqlServerExecuteObject();
            sseo.CommandText = sSql;
            sseo.SqlParameters.AddWithValue("@StartRowNum", startrowNum);
            sseo.SqlParameters.AddWithValue("@EndRowNum", endRowNum);
            sseo.SqlParameters.AddWithValue("@testo", string.IsNullOrWhiteSpace(testo) ? "%%" : string.Format("%{0}%", testo));

            dr = SqlProvider.ExecuteReaderObject(sseo);

            while (dr.Read())
            {
                DocumentoPortale documentoPortale = RiempiIstanza(dr);
                documentiPortale.Add(documentoPortale);
            }

            if (dr.NextResult() && dr.Read())
            {
                rows = dr.GetInt32(0);
            }

            if (dr != null)
            {
                dr.Close();
                dr.Dispose();
            }

            return(documentiPortale);
        }
コード例 #11
0
        public ActionResult Elimina(int id)
        {
            ActionResult result = null;

            DocumentoPortale d = DocumentoPortaleRepository.Instance.RecuperaDocumentoPortale(id);

            if (d != null)
            {
                string ext = Path.GetExtension(d.NomeFileOriginale);
                FileUtility.VAEliminaDocumentoPortale(d.ID + ext);
                DocumentoPortaleRepository.Instance.Elimina(id);
            }

            result = RedirectToAction("Index");

            return(result);
        }
コード例 #12
0
        private DocumentoPortale RiempiIstanza(SqlDataReader dr)
        {
            if (dr == null)
            {
                throw new ArgumentNullException("dr");
            }

            DocumentoPortale documentoPortale = new DocumentoPortale();

            documentoPortale.ID                 = dr.GetInt32(0);
            documentoPortale.TipoFile           = TipoFileRepository.Instance.RecuperaTipoFile(dr.GetInt32(1));
            documentoPortale.Nome_IT            = dr.GetString(2);
            documentoPortale.Nome_EN            = dr.GetString(3);
            documentoPortale.NomeFileOriginale  = dr.GetString(4);
            documentoPortale.DataInserimento    = dr.GetDateTime(5);
            documentoPortale.DataUltimaModifica = dr.GetDateTime(6);
            documentoPortale.Dimensione         = dr.GetInt32(7);

            return(documentoPortale);
        }