using Application.Domain.Entities; using Infrastructure.Application; using IoT.Shared.Areas.IoTCenter.Controlls; using System; using System.ComponentModel; using System.ComponentModel.DataAnnotations; namespace IoT.Shared.Application.Models { [Display(Name = "数据")] public class EditIoTDataModel : EditModel { [ReadOnlyForEdit] [Display(Name = "产品")] [SelectList] public Guid? IoTProductId { get; set; } [Display(Name = "网关")] [ReadOnlyForEdit] [SelectList(nameof(IoTDeviceId), nameof(AjaxBaseController.GetIoTDevice))] public Guid? IoTGatewayId { get; set; } [Display(Name = "设备")] [ReadOnlyForEdit] [SelectList] public Guid? IoTDeviceId { get; set; } [Display(Name = "键")] [ReadOnlyForEdit] [Required(ErrorMessage = nameof(RequiredAttribute))] public string Key { get; set; } [Display(Name = "值")] public string Value { get; set; } [Display(Name = "名称")] [ReadOnlyForEdit] [Required(ErrorMessage = nameof(RequiredAttribute))] public string Name { get; set; } [SelectList] [Display(Name = "数据分类")] [ReadOnlyForEdit] [Required(ErrorMessage = nameof(RequiredAttribute))] public IoTDataType? DataType { get; set; } [SelectList] [Display(Name = "数值类型")] [ReadOnlyForEdit] [Required(ErrorMessage = nameof(RequiredAttribute))] public IoTValueType? ValueType { get; set; } [SkipSearch] [SkipList] [Display(Name = "对象模式")] [Description("描述枚举、对象和数组的类型定义")] public string ValueSchema { get; set; } [Display(Name = "单位")] [ReadOnlyForEdit] public string Unit { get; set; } [Display(Name = "描述")] [ReadOnlyForEdit] public string Description { get; set; } [SkipSearch] [Display(Name = "时间戳")] [ReadOnlyForEdit] [Required(ErrorMessage = nameof(RequiredAttribute))] public long? Timestamp { get; set; } [Display(Name = "隐藏")] [ReadOnlyForEdit] public bool? Hidden { get; set; } } }