forked from xiongyuxing/tiku-backend.net
106 lines
2.2 KiB
C#
106 lines
2.2 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using Tiku.Application.Assets;
|
|
|
|
namespace Tiku.Api.Contracts;
|
|
|
|
/// <summary>
|
|
/// 资产查询参数。
|
|
/// </summary>
|
|
public sealed class AssetQueryDto
|
|
{
|
|
/// <summary>
|
|
/// 租户编码。
|
|
/// </summary>
|
|
[StringLength(100)]
|
|
public string? TenantCode { get; set; }
|
|
|
|
/// <summary>
|
|
/// 地区 ID。
|
|
/// </summary>
|
|
public Guid? RegionId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 科目 ID。
|
|
/// </summary>
|
|
public Guid? SubjectId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 分类 ID。
|
|
/// </summary>
|
|
public Guid? CategoryId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 内容节点 ID。
|
|
/// </summary>
|
|
public Guid? ContentNodeId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 题目 ID。
|
|
/// </summary>
|
|
public Guid? QuestionId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 资产 ID。
|
|
/// </summary>
|
|
public Guid? AssetId { get; set; }
|
|
|
|
/// <summary>
|
|
/// 资产类型。
|
|
/// </summary>
|
|
[StringLength(50)]
|
|
public string? AssetType { get; set; }
|
|
|
|
/// <summary>
|
|
/// 分类。
|
|
/// </summary>
|
|
[StringLength(100)]
|
|
public string? Category { get; set; }
|
|
|
|
/// <summary>
|
|
/// 资产键。
|
|
/// </summary>
|
|
[StringLength(200)]
|
|
public string? AssetKey { get; set; }
|
|
|
|
/// <summary>
|
|
/// 关键字。
|
|
/// </summary>
|
|
[StringLength(100)]
|
|
public string? Keyword { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否包含锁定资源。
|
|
/// </summary>
|
|
public bool IncludeLocked { get; set; }
|
|
|
|
/// <summary>
|
|
/// 是否包含停用数据。
|
|
/// </summary>
|
|
public bool IncludeInactive { get; set; }
|
|
|
|
/// <summary>
|
|
/// 返回数量上限。
|
|
/// </summary>
|
|
[Range(1, 500)]
|
|
public int? Limit { get; set; }
|
|
|
|
public AssetFilter ToFilter(Guid tenantId)
|
|
{
|
|
return new AssetFilter(
|
|
tenantId,
|
|
RegionId,
|
|
SubjectId,
|
|
CategoryId,
|
|
ContentNodeId,
|
|
QuestionId,
|
|
AssetId,
|
|
AssetType,
|
|
Category,
|
|
AssetKey,
|
|
Keyword,
|
|
IncludeLocked,
|
|
IncludeInactive,
|
|
Limit);
|
|
}
|
|
}
|