using BPA.SAAS.Manage.Comm.Enum;
using BPA.SAAS.Manage.Core.Base;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BPA.SAAS.Manage.Core.Product
{
    /// <summary>
    ///产品功能
    /// </summary>
    [SugarTable("bpa_productfunction")]
    public class BPA_ProductFunction : IBaseEntity
    {
        /// <summary>
        /// 功能名称
        /// </summary>
        public string Name { get; set; }
        /// <summary>
        /// 状态 0启用 1禁用
        /// </summary>
        public CommonStatus Status { get; set; } = CommonStatus.ENABLE;
        /// <summary>
        /// 加盟商id
        /// </summary>
      //  public string GroupId { get; set; }
        /// <summary>
        /// 外键
        /// </summary>
        public string ForeignKeyRe { get; set; }
        /// <summary>
        /// 设备版本
        /// </summary>
        public string DeviceVersionKey { get; set; }
        /// <summary>
        /// 功能类型 0属性1服务2事件
        /// </summary>
        public FunctionTypeEnum Type { get; set; }
        /// <summary>
        /// 数据类型
        /// </summary>
        public string DataType { get; set; }
        /// <summary>
        /// 取值范围
        /// </summary>
        public string DataRange { get; set; }
        /// <summary>
        /// 单位
        /// </summary>
        public string Unit { get; set; }
        /// <summary>
        /// 步长
        /// </summary>
        public decimal StepSize { get; set; }
        /// <summary>
        /// 枚举值
        /// </summary>
        public string EnumValue { get; set; }
        /// <summary>
        /// 数据长度
        /// </summary>
        public string DataLength { get; set; }
        /// <summary>
        /// 数据类型bool的描述
        /// </summary>
        public string BoolLabel { get; set; }
        /// <summary>
        /// 读写类型0读写 1只读
        /// </summary>
        public int ReadWrite { get; set; }
        /// <summary>
        /// 描述
        /// </summary>
        public string Description { get; set; }
        public string ProductId { get; set; }
        public string DataJson { get; set; }
        public bool IsDefault { get; set; }
        /// <summary>
        /// 事件类型 0信息 1告警 2故障
        /// </summary>
        public EventTypeEnum EventType { get; set; }
    }
}
