refactoring email verification
This commit is contained in:
		@ -19,6 +19,7 @@ namespace Oqtane.Repository
 | 
			
		||||
        public virtual DbSet<Log> Log { get; set; }
 | 
			
		||||
        public virtual DbSet<Notification> Notification { get; set; }
 | 
			
		||||
        public virtual DbSet<Folder> Folder { get; set; }
 | 
			
		||||
        public virtual DbSet<File> File { get; set; }
 | 
			
		||||
 | 
			
		||||
        public TenantDBContext(ITenantResolver TenantResolver, IHttpContextAccessor accessor) : base(TenantResolver, accessor)
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										62
									
								
								Oqtane.Server/Repository/FileRepository.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								Oqtane.Server/Repository/FileRepository.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,62 @@
 | 
			
		||||
using Microsoft.EntityFrameworkCore;
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using System.Linq;
 | 
			
		||||
using Oqtane.Models;
 | 
			
		||||
 | 
			
		||||
namespace Oqtane.Repository
 | 
			
		||||
{
 | 
			
		||||
    public class FileRepository : IFileRepository
 | 
			
		||||
    {
 | 
			
		||||
        private TenantDBContext db;
 | 
			
		||||
        private readonly IPermissionRepository Permissions;
 | 
			
		||||
 | 
			
		||||
        public FileRepository(TenantDBContext context, IPermissionRepository Permissions)
 | 
			
		||||
        {
 | 
			
		||||
            db = context;
 | 
			
		||||
            this.Permissions = Permissions;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public IEnumerable<File> GetFiles(int FolderId)
 | 
			
		||||
        {
 | 
			
		||||
            IEnumerable<Permission> permissions = Permissions.GetPermissions("Folder", FolderId);
 | 
			
		||||
            IEnumerable<File> files = db.File.Where(item => item.FolderId == FolderId);
 | 
			
		||||
            foreach (File file in files)
 | 
			
		||||
            {
 | 
			
		||||
                file.Folder.Permissions = Permissions.EncodePermissions(FolderId, permissions);
 | 
			
		||||
            }
 | 
			
		||||
            return files;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public File AddFile(File File)
 | 
			
		||||
        {
 | 
			
		||||
            db.File.Add(File);
 | 
			
		||||
            db.SaveChanges();
 | 
			
		||||
            return File;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public File UpdateFile(File File)
 | 
			
		||||
        {
 | 
			
		||||
            db.Entry(File).State = EntityState.Modified;
 | 
			
		||||
            db.SaveChanges();
 | 
			
		||||
            return File;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public File GetFile(int FileId)
 | 
			
		||||
        {
 | 
			
		||||
            File file = db.File.Find(FileId);
 | 
			
		||||
            if (file != null)
 | 
			
		||||
            {
 | 
			
		||||
                IEnumerable<Permission> permissions = Permissions.GetPermissions("Folder", file.FolderId);
 | 
			
		||||
                file.Folder.Permissions = Permissions.EncodePermissions(file.FolderId, permissions);
 | 
			
		||||
            }
 | 
			
		||||
            return file;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        public void DeleteFile(int FileId)
 | 
			
		||||
        {
 | 
			
		||||
            File File = db.File.Find(FileId);
 | 
			
		||||
            db.File.Remove(File);
 | 
			
		||||
            db.SaveChanges();
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										14
									
								
								Oqtane.Server/Repository/Interfaces/IFileRepository.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								Oqtane.Server/Repository/Interfaces/IFileRepository.cs
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,14 @@
 | 
			
		||||
using System.Collections.Generic;
 | 
			
		||||
using Oqtane.Models;
 | 
			
		||||
 | 
			
		||||
namespace Oqtane.Repository
 | 
			
		||||
{
 | 
			
		||||
    public interface IFileRepository
 | 
			
		||||
    {
 | 
			
		||||
        IEnumerable<File> GetFiles(int FolderId);
 | 
			
		||||
        File AddFile(File File);
 | 
			
		||||
        File UpdateFile(File File);
 | 
			
		||||
        File GetFile(int FileId);
 | 
			
		||||
        void DeleteFile(int FileId);
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
		Reference in New Issue
	
	Block a user