diff --git a/NKC_WF/WebUserControls/cmp_fileUpload.ascx b/NKC_WF/WebUserControls/cmp_fileUpload.ascx
index 9b312c7..80839bb 100644
--- a/NKC_WF/WebUserControls/cmp_fileUpload.ascx
+++ b/NKC_WF/WebUserControls/cmp_fileUpload.ascx
@@ -3,6 +3,7 @@
+
<%: traduci("cancel") %>
@@ -21,4 +22,4 @@
+
\ No newline at end of file
diff --git a/NKC_WF/WebUserControls/cmp_fileUpload.ascx.cs b/NKC_WF/WebUserControls/cmp_fileUpload.ascx.cs
index 11d99dd..72b79ab 100644
--- a/NKC_WF/WebUserControls/cmp_fileUpload.ascx.cs
+++ b/NKC_WF/WebUserControls/cmp_fileUpload.ascx.cs
@@ -4,44 +4,38 @@ using System.IO;
namespace NKC_WF.WebUserContols
{
- public class FileUploadEventArgs : EventArgs
- {
- ///
- /// Evento con argomenti soppevato post fileUpload
- ///
- ///
- ///
- ///
- public FileUploadEventArgs(string localPath, string fileName, string batchName)
- {
- _localPath = localPath;
- _fileName = fileName;
- _batchName = batchName;
- }
- private string _localPath;
- private string _fileName;
- private string _batchName;
-
- public string LocalPath
- {
- get { return _localPath; }
- set { _localPath = value; }
- }
- public string FileName
- {
- get { return _fileName; }
- set { _fileName = value; }
- }
- public string BatchName
- {
- get { return _batchName; }
- set { _batchName = value; }
- }
- }
-
-
public partial class cmp_fileUpload : BaseUserControl
{
+ #region Protected Fields
+
+ ///
+ /// Folder REMOTA x copia verso SQL
+ ///
+ protected string _SqlCopyDir = memLayer.ML.CRS("_SqlCopyDir");
+
+ ///
+ /// Folder x SQL import
+ ///
+ protected string _SqlImportDir = memLayer.ML.CRS("_SqlImportDir");
+
+ ///
+ /// Folder di upload temporaneo files
+ ///
+ protected string _tempUploadDir = memLayer.ML.CRS("_tempUploadDir");
+
+ #endregion Protected Fields
+
+ #region Public Events
+
+ ///
+ /// Evento upload e salvataggio su server IIS del file...
+ ///
+ public event EventHandler eh_FileUploaded;
+
+ #endregion Public Events
+
+ #region Public Properties
+
///
/// Prefisso file abilitato
///
@@ -58,131 +52,20 @@ namespace NKC_WF.WebUserContols
}
///
- /// Evento upload e salvataggio su server IIS del file...
+ /// Suffisso file abilitato (=tipo)
///
- public event EventHandler eh_FileUploaded;
- ///
- /// Solelva evento salvataggio file con messaggio path/nome
- ///
- ///
- ///
- public void reportFileUploaded(FileUploadEventArgs e)
- {
- EventHandler handler = eh_FileUploaded;
- if (handler != null)
- {
- handler(this, e);
- }
- }
-
- ///
- /// Folder di upload temporaneo files
- ///
- protected string _tempUploadDir = memLayer.ML.CRS("_tempUploadDir");
- ///
- /// Folder REMOTA x copia verso SQL
- ///
- protected string _SqlCopyDir = memLayer.ML.CRS("_SqlCopyDir");
- ///
- /// Folder x SQL import
- ///
- protected string _SqlImportDir = memLayer.ML.CRS("_SqlImportDir");
-
-
- ///
- /// permesso scrittura SE E' abilitato a partire dalla tab diritti...
- ///
- public bool userIsAuth
+ public string fileSuffix
{
get
{
- return true;
- //return (idxAmm + idxFornitore > 0);
- }
- }
- public bool isWriteEnabled
- {
- get
- {
- bool answ = false;
- bool.TryParse(hfWriteEnabled.Value, out answ);
- return answ;
+ return hfFileSuffix.Value;
}
set
{
- hfWriteEnabled.Value = value.ToString();
- }
- }
- protected void Page_Load(object sender, EventArgs e)
- {
- if (!IsPostBack)
- {
- divMessagge.Visible = false;
- fisVisFU(false);
- deleteOldFiles();
- }
- divNewEdit.Visible = userIsAuth && isWriteEnabled;
- }
- ///
- /// Procedee a bonificare la cartella di upload dei files + vecchi di 3 mesi
- ///
- private void deleteOldFiles()
- {
- string dirPath = Server.MapPath(_tempUploadDir);
- // elenco files nella directory
- string[] files = Directory.GetFiles(dirPath);
- // li guardo tutti e se vecchi li elimino...
- foreach (string file in files)
- {
- FileInfo fi = new FileInfo(file);
- if (fi.LastAccessTime < DateTime.Now.AddMonths(-3))
- fi.Delete();
+ hfFileSuffix.Value = value;
}
}
- protected void Upload(object sender, EventArgs e)
- {
- string csvFileName = "";
- string uploadedFilename = "";
- string batchName = "";
- string savedFilename = "";
- string contentType = "";
- DateTime adesso = DateTime.Now;
- string dirFrom = Server.MapPath(_tempUploadDir);
- // se c'è un file
- if (FileUpload1.PostedFile != null)
- {
- uploadedFilename = Path.GetFileName(FileUpload1.PostedFile.FileName.Replace(" ", "_")).ToLower();
- csvFileName = $"{adesso.ToString("dd-HHmmss")}_{uploadedFilename}";
- batchName = uploadedFilename.Replace(".csv", "").Replace("cnc", "").Replace("kit", "");
- savedFilename = Server.MapPath($"{_tempUploadDir}{csvFileName}");
- divMessagge.Visible = false;
- // verifica preliminare del PRE del name...
- if (!string.IsNullOrEmpty(filePrefix) && !uploadedFilename.StartsWith(filePrefix.ToLower()))
- {
- divMessagge.Visible = true;
- lblMessage.Text = $"{traduci("FilePrefixError")} {filePrefix}";
- }
- else
- {
- contentType = FileUpload1.PostedFile.ContentType;
- // accedo allo stream del file allegato
- using (Stream fs = FileUpload1.PostedFile.InputStream)
- {
- // scrivo su file
- FileStream file = new FileStream(savedFilename, FileMode.Create, FileAccess.Write);
- fs.CopyTo(file);
- file.Close();
- }
- // segnaloc he ho CARICATO IN LOCALE il file
- reportFileUploaded(new FileUploadEventArgs(dirFrom, csvFileName, batchName));
- }
- }
- if (forceRedirect)
- {
- Response.Redirect(Request.RawUrl);
- }
- }
///
/// Indica se fare redirect post upload
///
@@ -200,11 +83,53 @@ namespace NKC_WF.WebUserContols
}
}
- protected void btnAdd_Click(object sender, EventArgs e)
+ public bool isWriteEnabled
{
- fisVisFU(true);
- lbtUpload.Text = traduci("AddNew");
+ get
+ {
+ bool answ = false;
+ bool.TryParse(hfWriteEnabled.Value, out answ);
+ return answ;
+ }
+ set
+ {
+ hfWriteEnabled.Value = value.ToString();
+ }
}
+
+ ///
+ /// permesso scrittura SE E' abilitato a partire dalla tab diritti...
+ ///
+ public bool userIsAuth
+ {
+ get
+ {
+ return true;
+ //return (idxAmm + idxFornitore > 0);
+ }
+ }
+
+ #endregion Public Properties
+
+ #region Private Methods
+
+ ///
+ /// Procedee a bonificare la cartella di upload dei files + vecchi di 3 mesi
+ ///
+ private void deleteOldFiles()
+ {
+ string dirPath = Server.MapPath(_tempUploadDir);
+ // elenco files nella directory
+ string[] files = Directory.GetFiles(dirPath);
+ // li guardo tutti e se vecchi li elimino...
+ foreach (string file in files)
+ {
+ FileInfo fi = new FileInfo(file);
+ if (fi.LastAccessTime < DateTime.Now.AddMonths(-3))
+ fi.Delete();
+ }
+ }
+
///
/// fix visibilità controllo file upload
///
@@ -216,10 +141,164 @@ namespace NKC_WF.WebUserContols
lbtCancel.Visible = showAdd;
}
+ #endregion Private Methods
+
+ #region Protected Methods
+
+ protected void btnAdd_Click(object sender, EventArgs e)
+ {
+ fisVisFU(true);
+ lbtUpload.Text = traduci("AddNew");
+ }
+
protected void btnCancel_Click(object sender, EventArgs e)
{
Response.Redirect(Request.RawUrl);
}
+ protected void Page_Load(object sender, EventArgs e)
+ {
+ if (!IsPostBack)
+ {
+ divMessagge.Visible = false;
+ fisVisFU(false);
+ deleteOldFiles();
+ }
+ divNewEdit.Visible = userIsAuth && isWriteEnabled;
+ }
+
+ protected void Upload(object sender, EventArgs e)
+ {
+ string uploadedFileName = "";
+ string uploadedFilename = "";
+ string batchName = "";
+ string savedFilename = "";
+ string contentType = "";
+ DateTime adesso = DateTime.Now;
+ string dirFrom = Server.MapPath(_tempUploadDir);
+ // se c'è un file
+ if (FileUpload1.PostedFile != null)
+ {
+ uploadedFilename = Path.GetFileName(FileUpload1.PostedFile.FileName.Replace(" ", "_")).ToLower();
+ // verifico suffisso sia corretto...
+ if (!string.IsNullOrEmpty(fileSuffix) && !uploadedFilename.EndsWith(fileSuffix.ToLower()))
+ {
+ divMessagge.Visible = true;
+ lblMessage.Text = $"{traduci("FileSuffixError")} {fileSuffix}";
+ }
+ else
+ {
+ // se sono a validare dxf...
+ if (fileSuffix == ".dxf")
+ {
+ batchName = uploadedFilename;
+ }
+ else
+ {
+ // altrimenti per csv CNC/KIT..
+ uploadedFileName = $"{adesso.ToString("dd-HHmmss")}_{uploadedFilename}";
+ batchName = uploadedFilename.Replace(fileSuffix, "").Replace("cnc", "").Replace("kit", "");
+ }
+ savedFilename = Server.MapPath($"{_tempUploadDir}{uploadedFileName}");
+ divMessagge.Visible = false;
+ // verifica preliminare del PRE del name...
+ if (!string.IsNullOrEmpty(filePrefix) && !uploadedFilename.StartsWith(filePrefix.ToLower()))
+ {
+ divMessagge.Visible = true;
+ lblMessage.Text = $"{traduci("FilePrefixError")} {filePrefix}";
+ }
+ else
+ {
+ contentType = FileUpload1.PostedFile.ContentType;
+ // accedo allo stream del file allegato
+ using (Stream fs = FileUpload1.PostedFile.InputStream)
+ {
+ // scrivo su file
+ FileStream file = new FileStream(savedFilename, FileMode.Create, FileAccess.Write);
+ fs.CopyTo(file);
+ file.Close();
+ }
+ // segnaloc he ho CARICATO IN LOCALE il file
+ reportFileUploaded(new FileUploadEventArgs(dirFrom, uploadedFileName, batchName));
+ }
+ }
+ }
+ if (forceRedirect)
+ {
+ Response.Redirect(Request.RawUrl);
+ }
+ }
+
+ #endregion Protected Methods
+
+ #region Public Methods
+
+ ///
+ /// Solelva evento salvataggio file con messaggio path/nome
+ ///
+ ///
+ ///
+ public void reportFileUploaded(FileUploadEventArgs e)
+ {
+ EventHandler handler = eh_FileUploaded;
+ if (handler != null)
+ {
+ handler(this, e);
+ }
+ }
+
+ #endregion Public Methods
+ }
+
+ public class FileUploadEventArgs : EventArgs
+ {
+ #region Private Fields
+
+ private string _batchName;
+
+ private string _fileName;
+
+ private string _localPath;
+
+ #endregion Private Fields
+
+ #region Public Constructors
+
+ ///
+ /// Evento con argomenti soppevato post fileUpload
+ ///
+ ///
+ ///
+ ///
+ public FileUploadEventArgs(string localPath, string fileName, string batchName)
+ {
+ _localPath = localPath;
+ _fileName = fileName;
+ _batchName = batchName;
+ }
+
+ #endregion Public Constructors
+
+ #region Public Properties
+
+ public string BatchName
+ {
+ get { return _batchName; }
+ set { _batchName = value; }
+ }
+
+ public string FileName
+ {
+ get { return _fileName; }
+ set { _fileName = value; }
+ }
+
+ public string LocalPath
+ {
+ get { return _localPath; }
+ set { _localPath = value; }
+ }
+
+ #endregion Public Properties
}
}
\ No newline at end of file
diff --git a/NKC_WF/WebUserControls/cmp_fileUpload.ascx.designer.cs b/NKC_WF/WebUserControls/cmp_fileUpload.ascx.designer.cs
index 63c0c84..46da4f5 100644
--- a/NKC_WF/WebUserControls/cmp_fileUpload.ascx.designer.cs
+++ b/NKC_WF/WebUserControls/cmp_fileUpload.ascx.designer.cs
@@ -41,6 +41,15 @@ namespace NKC_WF.WebUserContols
///
protected global::System.Web.UI.WebControls.HiddenField hfFilePrefix;
+ ///
+ /// Controllo hfFileSuffix.
+ ///
+ ///
+ /// Campo generato automaticamente.
+ /// Per la modifica, spostare la dichiarazione di campo dal file di progettazione al file code-behind.
+ ///
+ protected global::System.Web.UI.WebControls.HiddenField hfFileSuffix;
+
///
/// Controllo divFileUpl.
///