コード例 #1
0
        private void MoveClientFiles(RegisterModel model)
        {
            FileRequestModel FileRequestModel = (FileRequestModel)Session["FileRequestModel"];
            int GID = FileRequestModel.GID;
            //CreateRootFolder
            FileSystemBL      fBL              = new FileSystemBL();
            string            RootFolderName   = AppConstants.ROOT_FOLDER_NAME;
            MessageBL         mBL              = new MessageBL();
            var               GetAttachmentLog = mBL.GetAttachmentLog(GID);
            ELTFileSystemItem RootFolderItem   = new ELTFileSystemItem()
            {
                Owner_Email = model.UserName, IsFolder = true, Name = RootFolderName, ParentID = -1
            };

            fBL.InsertFile(RootFolderItem);
            string            SenderEmailFolder     = GetAttachmentLog[0].SenderEmail;
            ELTFileSystemItem SenderEmailFolderItem = new ELTFileSystemItem()
            {
                Owner_Email = model.UserName, IsFolder = true, Name = SenderEmailFolder, ParentID = RootFolderItem.ID
            };

            fBL.InsertFile(SenderEmailFolderItem);
            string            DocFolder     = GetAttachmentLog[0].ReferenceNo;
            ELTFileSystemItem DocFolderItem = new ELTFileSystemItem()
            {
                Owner_Email = model.UserName, IsFolder = true, Name = DocFolder, ParentID = SenderEmailFolderItem.ID
            };

            fBL.InsertFile(DocFolderItem);

            //mBL.CopyAttachment(GID, model.UserName, DocFolderItem.ID);

            Session["FileFolderToBeSet"] = DocFolderItem.Name;
        }
コード例 #2
0
        protected void GeneratePDFFiles(EmailAttachment attachment, List<EmailAttachment> ListWithID)
        {

            FileSystemBL FSBL = new FileSystemBL();
            if (attachment.IsSelected)
            {
                var count = (from c in ListWithID where c.FileName == attachment.FileName select c).Count();
                if (count == 0)
                {
                    Stream receiveStream = null;
                    ELT.COMMON.Util.ReadFileStream(Url.Content(attachment.GeneratorPath), ref receiveStream);
                    if (receiveStream != null)
                    {
                        using (var memoryStream = new MemoryStream())
                        {
                            receiveStream.CopyTo(memoryStream);
                            Byte[] array = memoryStream.ToArray();
                            ELTFileSystemItem item = new ELTFileSystemItem() { Data = new Binary(array), Name = attachment.FileName + ".pdf", ParentID = -1, Owner_Email = "*****@*****.**" };

                            FSBL.InsertFile(item);
                            attachment.FileID = item.ID;
                            ListWithID.Add(attachment);
                        }
                    }
                }
            }
        }      
コード例 #3
0
        public void InsertFile(ELTFileSystemItem newFile)
        {
            FileSystemDA da = new FileSystemDA();

            da.InsertFile(newFile);
            GetFiles().Add(newFile);
        }
コード例 #4
0
        protected ActionResult ReturnELTFile(int FileID)
        {
            FileSystemBL      fBL           = new FileSystemBL();
            ELTFileSystemItem file          = fBL.GetFileByID(FileID);
            Stream            receiveStream = new MemoryStream(file.Data.ToArray());

            return(File(receiveStream, COMMON.Util.GetOutputFileExtension(file.Name), file.Name));
        }
コード例 #5
0
        public override IEnumerable <FileManagerFolder> GetFolders(FileManagerFolder parentFolder)
        {
            ELTFileSystemItem FileFolderItem = FindELTFolderItem(parentFolder);
            var folders = from FileItem in FolderCache.Values
                          where FileItem.IsFolder && FileItem.ParentID == FileFolderItem.ID
                          select new FileManagerFolder(this, parentFolder, FileItem.Name);

            return(folders);
        }
コード例 #6
0
        public override IEnumerable <FileManagerFile> GetFiles(FileManagerFolder folder)
        {
            ELTFileSystemItem FileFolderItem = FindELTFolderItem(folder);
            var files = from FileItem in ELTFileBL.GetFiles()
                        where !FileItem.IsFolder && FileItem.ParentID == FileFolderItem.ID
                        select new FileManagerFile(this, folder, FileItem.Name);

            return(files);
        }
コード例 #7
0
        protected ELTFileSystemItem FindELTFileItem(FileManagerFile file)
        {
            ELTFileSystemItem ELTFolderItem = FindELTFolderItem(file.Folder);

            if (ELTFolderItem == null)
            {
                return(null);
            }
            return(ELTFileBL.GetFiles().FindAll(item => (int)item.ParentID == ELTFolderItem.ID && !item.IsFolder && item.Name == file.Name).FirstOrDefault());
        }
コード例 #8
0
 public void DeleteFile(ELTFileSystemItem File)
 {
     if (File.IsFolder)
     {
         List <ELTFileSystemItem> childFolders = GetFiles().FindAll(item => item.IsFolder && item.ParentID == File.ID);
         if (childFolders != null)
         {
             foreach (ELTFileSystemItem childFolder in childFolders)
             {
                 DeleteFile(childFolder);
             }
         }
     }
     GetFiles().Remove(File);
 }
コード例 #9
0
        protected string GetRelativeName(ELTFileSystemItem FileFolderItem)
        {
            if (FileFolderItem.ID == RootItemID)
            {
                return(string.Empty);
            }
            if (FileFolderItem.ParentID == RootItemID)
            {
                return(FileFolderItem.Name);
            }
            if (!FolderCache.ContainsKey((int)FileFolderItem.ParentID))
            {
                return(null);
            }
            string name = GetRelativeName(FolderCache[(int)FileFolderItem.ParentID]);

            return(name == null ? null : Path.Combine(name, FileFolderItem.Name));
        }
コード例 #10
0
ファイル: FilesDA.cs プロジェクト: gitelt/e-logitech-v1
        public List <ELTFileSystemItem> GetFiles(string OwnerEmail)
        {
            SqlConnection conn = new SqlConnection(GetConnectionString(AppConstants.DB_CONN_PROD));
            SqlCommand    cmd  = new SqlCommand()
            {
                Connection = conn, CommandType = CommandType.StoredProcedure, CommandText = "dbo.GetFiles"
            };
            List <ELTFileSystemItem> list = new List <ELTFileSystemItem>();

            try
            {
                cmd.Parameters.Add(new SqlParameter("@OwnerEmail", OwnerEmail));

                conn.Open();

                using (SqlDataReader reader = cmd.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        ELTFileSystemItem item = new ELTFileSystemItem()
                        {
                            ID = Convert.ToInt32(reader["ID"]),

                            Data          = reader["Data"].GetType() == typeof(System.DBNull) ? null : new System.Data.Linq.Binary((System.Byte[])reader["Data"]),
                            IsFolder      = Convert.ToBoolean(reader["IsFolder"]),
                            LastWriteTime = Convert.ToDateTime(reader["LastWriteTime"]),
                            Name          = Convert.ToString(reader["Name"]),
                            ParentID      = Convert.ToInt32(reader["ParentID"])
                        };
                        list.Add(item);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }
            return(list);
        }
コード例 #11
0
ファイル: FilesDA.cs プロジェクト: gitelt/e-logitech-v1
        public ELTFileSystemItem CopyFile(ELTFileSystemItem oldFile, int ParentID)
        {
            SqlConnection conn = new SqlConnection(GetConnectionString(AppConstants.DB_CONN_PROD));
            SqlCommand    cmd  = new SqlCommand()
            {
                Connection = conn, CommandType = CommandType.StoredProcedure, CommandText = "dbo.CreateFile"
            };
            List <ELTFileSystemItem> list    = new List <ELTFileSystemItem>();
            ELTFileSystemItem        newFile = new ELTFileSystemItem()
            {
                IsFolder = oldFile.IsFolder, Data = oldFile.Data, LastWriteTime = oldFile.LastWriteTime, Name = oldFile.Name, ParentID = ParentID
            };

            try
            {
                cmd.Parameters.Add(new SqlParameter("@Name", oldFile.Name));
                cmd.Parameters.Add(new SqlParameter("@ParentID", ParentID));
                cmd.Parameters.Add(new SqlParameter("@IsFolder", oldFile.IsFolder));
                cmd.Parameters.Add(new SqlParameter("@CreatorEmail", oldFile.Owner_Email));
                cmd.Parameters.Add(new SqlParameter("@FromID", oldFile.ID));
                cmd.Parameters.Add(new SqlParameter("@ID", 0));
                cmd.Parameters["@ID"].Direction = ParameterDirection.InputOutput;
                cmd.Parameters["@ID"].Size      = 100;
                conn.Open();
                cmd.ExecuteNonQuery();
                newFile.ID = Convert.ToInt32(cmd.Parameters["@ID"].Value);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }
            return(newFile);
        }
コード例 #12
0
ファイル: FilesDA.cs プロジェクト: gitelt/e-logitech-v1
        public void InsertFile(ELTFileSystemItem newFile)
        {
            SqlConnection conn = new SqlConnection(GetConnectionString(AppConstants.DB_CONN_PROD));
            SqlCommand    cmd  = new SqlCommand()
            {
                Connection = conn, CommandType = CommandType.StoredProcedure, CommandText = "dbo.CreateFile"
            };
            List <ELTFileSystemItem> list = new List <ELTFileSystemItem>();

            try
            {
                cmd.Parameters.Add(new SqlParameter("@Name", newFile.Name));
                cmd.Parameters.Add(new SqlParameter("@ParentID", newFile.ParentID));
                if (!newFile.IsFolder)
                {
                    cmd.Parameters.Add(new SqlParameter("@Data", (SqlBinary)newFile.Data.ToArray()));
                }
                cmd.Parameters.Add(new SqlParameter("@IsFolder", newFile.IsFolder));
                cmd.Parameters.Add(new SqlParameter("@CreatorEmail", newFile.Owner_Email));
                cmd.Parameters.Add(new SqlParameter("@ID", newFile.ID));
                cmd.Parameters["@ID"].Direction = ParameterDirection.InputOutput;
                cmd.Parameters["@ID"].Size      = 100;
                conn.Open();
                cmd.ExecuteNonQuery();
                newFile.ID = Convert.ToInt32(cmd.Parameters["@ID"].Value);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                conn.Close();
                conn.Dispose();
            }
        }
コード例 #13
0
 public void UpdateFile(ELTFileSystemItem File, Action <ELTFileSystemItem> update)
 {
     update(File);
 }