refactor Implementing Provider Service ...
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
using System;
|
||||
using System.Linq;
|
||||
using Microsoft.EntityFrameworkCore.Query;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using xCommons.Configurations;
|
||||
using xCommons.Providers;
|
||||
using xIdentityService.Interfaces;
|
||||
using xPushService.Controllers;
|
||||
using xTagService.Interfaces;
|
||||
using xTagService.Models.Dtos;
|
||||
using xTagService.Models.Entities;
|
||||
using xTagService.Providers.Dtos;
|
||||
|
||||
namespace xTagService.Controllers
|
||||
{
|
||||
public abstract class XTagProviderControllerBase : XBaseProvidedController<XTag, XTagDto, int, XTagDtoHub>, IXTagProviderController
|
||||
{
|
||||
protected XTagProviderControllerBase(
|
||||
ILogger<XTagProviderControllerBase> logger,
|
||||
XAppConfiguration appConfiguration,
|
||||
IXIdentityProvider identityProvider,
|
||||
XValidationProvider validationProvider,
|
||||
IXTagProvider provider,
|
||||
Func<IQueryable<XTag>, IOrderedQueryable<XTag>> defaultOrderBuilder = null,
|
||||
Func<IQueryable<XTag>, IIncludableQueryable<XTag, object>> defaultIncludeBuilder = null
|
||||
) : base(
|
||||
logger,
|
||||
appConfiguration,
|
||||
identityProvider,
|
||||
validationProvider,
|
||||
provider,
|
||||
defaultOrderBuilder,
|
||||
defaultIncludeBuilder
|
||||
)
|
||||
{ }
|
||||
}
|
||||
}
|
||||
@@ -11,8 +11,10 @@ using xExceptions.Constants;
|
||||
using xPushService.DI;
|
||||
using xPushService.Helpers;
|
||||
using xTagService.Helpers;
|
||||
using xTagService.Interfaces;
|
||||
using xTagService.Interfaces.Dtos;
|
||||
using xTagService.Interfaces.Entities;
|
||||
using xTagService.Providers;
|
||||
using xTagService.Providers.Dtos;
|
||||
using xTagService.Providers.Entities;
|
||||
|
||||
@@ -213,6 +215,11 @@ namespace xTagService.DI
|
||||
new ServiceDescriptor(typeof(IXTagRepositoryProvider), typeof(XTagRepositoryProvider), lifeTime)
|
||||
);
|
||||
|
||||
//
|
||||
services.Add(
|
||||
new ServiceDescriptor(typeof(IXTagProvider), typeof(XTagProvider), lifeTime)
|
||||
);
|
||||
|
||||
//
|
||||
Log("Service Regitration Succeed ...");
|
||||
}
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
using xPushService.Interfaces;
|
||||
using xTagService.Models.Dtos;
|
||||
using xTagService.Models.Entities;
|
||||
using xTagService.Providers.Dtos;
|
||||
|
||||
namespace xTagService.Interfaces
|
||||
{
|
||||
public interface IXTagProvider : IXBaseProvided<XTag, XTagDto, int, XTagDtoHub>
|
||||
{ }
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
using xPushService.Interfaces;
|
||||
using xTagService.Models.Dtos;
|
||||
using xTagService.Models.Entities;
|
||||
using xTagService.Providers.Dtos;
|
||||
|
||||
namespace xTagService.Interfaces
|
||||
{
|
||||
public interface IXTagProviderController : IXBaseProvidedController<XTag, XTagDto, int, XTagDtoHub>
|
||||
{ }
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
using xCommons.Extensions;
|
||||
using xIdentityModels.Models;
|
||||
using xPushService.Providers;
|
||||
using xTagService.Interfaces;
|
||||
using xTagService.Interfaces.Dtos;
|
||||
using xTagService.Models.Dtos;
|
||||
using xTagService.Models.Entities;
|
||||
using xTagService.Providers.Dtos;
|
||||
|
||||
namespace xTagService.Providers
|
||||
{
|
||||
public class XTagProvider : XBaseProvided<XTag, XTagDto, int, XTagDtoHub>, IXTagProvider
|
||||
{
|
||||
public XTagProvider(
|
||||
IXTagServiceProvider provider
|
||||
) : base(
|
||||
provider,
|
||||
permittedRoles: new string[] { }
|
||||
)
|
||||
{ }
|
||||
|
||||
public override bool IsOwned(
|
||||
XTagDto item,
|
||||
XUserClaimsInfoDto userInfo
|
||||
)
|
||||
{
|
||||
return !item.IsNullOrDefault();
|
||||
}
|
||||
|
||||
public override bool IsOwned(
|
||||
XTag item,
|
||||
XUserClaimsInfoDto userInfo
|
||||
)
|
||||
{
|
||||
return !item.IsNullOrDefault();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user