using FreeSql.DataAnnotations;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace CapMachine.Model.CANLIN
{
///
/// CAN和LIN的配置数据内容
///
[Table(Name = "CanLinConfigContent")]
public class CanLinRWConfig
{
///
/// 主键
///
[Column(IsPrimary = true, IsIdentity = true)]
public long Id { get; set; }
///
/// 输入输出信息 读取/写入/系统
///
[Column(Name = "RWInfo", IsNullable = false, MapType = typeof(string))]
public RW RWInfo { get; set; }
///
/// 配置项名称-比如转速、功率限制等
///
[Column(Name = "Name", IsNullable = false, StringLength = 50)]
public string? Name { get; set; }
///
/// 配置项值
/// DBC里面的 消息名称 MsgId对应 帧名称
/// SDF里面的 Frame名称 帧名称
///
[Column(Name = "MsgFrameName", IsNullable = false, StringLength = 100)]
public string? MsgFrameName { get; set; }
///
/// 配置项值
/// DBC里面的信号名称
/// SDF里面的信号名称
///
[Column(Name = "SignalName", IsNullable = false, StringLength = 100)]
public string? SignalName { get; set; }
///
/// 配置项默认值和数据
///
[Column(Name = "DefautValue", IsNullable = true, StringLength = 50)]
public string? DefautValue { get; set; }
///
/// ///////////////////////////////////////////导航属性///////////////////////////////////////////////////////
///
public long CanLinConfigProId { get; set; }
public CanLinConfigPro? CanLinConfigPro { get; set; }
public long LogicRuleId { get; set; }
///
/// CanLinConfig的逻辑转换规则
/// 比如:速度下发的数据SV是4000,但是下发到CAN的值是40,可能是其他的逻辑转换规则,这里就是保存其中的逻辑规则
///
public LogicRule? LogicRule { get; set; }
}
}