Files
xFileService/Providers/XFileTagProvided.cs
T
2026-05-28 11:39:34 +03:30

56 lines
1.4 KiB
C#

using System;
using xCommons.Extensions;
using xFileService.Interfaces;
using xFileService.Interfaces.Dtos;
using xFileService.Models.Dtos;
using xFileService.Models.Entities;
using xFileService.Providers.Dtos;
using xIdentityModels.Models;
using xTagService.Interfaces;
using xTagService.Providers;
namespace xFileService.Providers
{
public class XFileTagProvided : XBaseTagProvided<XFile, XFileDto, Guid, XFileDtoHub>, IXFileTagProvided
{
public XFileTagProvided(
IXFileTagProvider tagProvider,
IXFileServiceProvider provider
) : base(
provider: provider,
tagProvider: tagProvider,
permittedRoles: new string[] { "admin" }
)
{ }
public override bool IsOwned(
XFileDto item,
XUserClaimsInfoDto userInfo
)
{
//
var result =
!item.IsNullOrDefault() &&
!userInfo.IsNullOrDefault() &&
item.OwnerId == userInfo.UserId;
//
return result;
}
public override bool IsOwned(
XFile item,
XUserClaimsInfoDto userInfo
)
{
//
var result =
!item.IsNullOrDefault() &&
!userInfo.IsNullOrDefault() &&
item.OwnerId == userInfo.UserId;
//
return result;
}
}
}