using System.ComponentModel.DataAnnotations;
using Dlhis.Entity.Sys.Enums;
using Kurisu.AspNetCore.Utils.Extensions;
namespace Dlhis.Basic.Device.Request;
public class DevicePermissionsAssignToDeviceRequest : IValidatableObject
{
///
/// 分配类型
///
public DeviceAssignmentTypeEnumType UniqueType { get; set; }
///
/// 分配值
///
public Guid UniqueValue { get; set; }
///
/// 来源
///
public AssignTypeEnumType AssignType { get; set; }
///
/// 来源值
///
public List Values { get; set; }
///
/// 只删除权限
///
public bool IsDelete { get; set; }
///
/// AssignType == AssignTypeEnumType.Department 需要传入
///
public string TenantId { get; set; }
public IEnumerable Validate(ValidationContext validationContext)
{
if (AssignType == AssignTypeEnumType.Department)
{
if (TenantId.IsEmpty())
{
yield return new ValidationResult("请明确具体的厂区", new[] { nameof(TenantId) });
}
}
}
}