IConnectorProficiencyManagement.csβ’1.56 kB
ο»Ώusing Api.DigitalPages.Interfaces.Models;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Api.DigitalPages.Interfaces.Connector
{
public interface IConnectorProficiencyManagement :
ISystemConnectorBaseCrudFlowV3<IUserProficiencyRegister, ProficiencyRegisterOptions>,
ISystemConnectorBasePagedFlow<IUserProficiencyRegister, ProficiencyRegisterOptions>,
IConnectorContextRequired,
IConnectorDetail
{
public List<Guid> AuthorizedEntityContextSchemas { get; set; }
public List<Guid> AuthorizedEntityTargetSchemas { get; set; }
public Guid? DefaultEntityContextSchema { get; set; }
public Guid? DefaultEntityTargetSchema { get; set; }
public double MaxScore { get; set; }
public Task<List<IProficiencySummarize>> Summarize(ProficiencyRegisterOptions options, AdditionalDimension dimension);
public Task<List<IProficiencyScore>> Score(ProficiencyRegisterOptions options, AdditionalDimension dimension);
}
public enum AdditionalDimension
{
None,
Context,
User
}
public class ProficiencyRegisterOptions : IBaseCrudOptions
{
public List<Guid> FilterContext { get; set; }
public List<Guid> FilterUser { get; set; }
public List<Guid> FilterEntityContext { get; set; }
public List<Guid> FilterEntityTarget { get; set; }
public DateTime? FilterStartDate { get; set; }
public DateTime? FilterEndDate { get; set; }
}
}