using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DI_Electrical.Models { public class ec_Wire_Group { public ec_Wire_Group() { //SoftTags = new List(); NewSoftTags = new List(); //Status = WireGroupStatusEnum.New; } #region 实体成员 /// /// 状态。比如“待删除的”。默认为New /// 去找lr base dataitem数据字典的be_signalstate /// //[JsonConverter(typeof(SignalStatusConverter))] public WireGroupStatusEnum Status { get; set; } = WireGroupStatusEnum.New; /// /// 某一个输出的信号,可以关联多个输入的信号。关联的是 /// public string LinkedID { get; set; } = ""; /// /// ID /// /// public string Wire_Group_ID { get; set; } /// /// 信号名称(CH. No.)。 /// 1462,C列。 /// 8600,A列。 /// 如果是虚拟点。就是主信号+ /// /// public string Group_Name { get; set; } = ""; /// /// ChannelID。ec_panel_channel里。 /// 如果为空,说明这个信号是关联前的状态(或者说未关联的状态) /// /// public string ChannelID { get; set; } = ""; /// /// 英文描述(Description)。 /// 1462,D列。 /// 8600,B列。 /// /// public string Group_Desc_EN { get; set; } = ""; /// /// 中文描述。 /// 8600,B列(第二行)。 /// /// public string Group_Desc { get; set; } = ""; /// /// (Signal_Type)信号类型,如4-20mA。 /// 1462,I列。 /// 8600,E列(模拟量)或F列(开关量)。 /// /// public string IO_Type { get; set; } = ""; /// /// 信号的分组(组成Group Name的第一部分) /// /// public string Signal_Group { get; set; } = ""; /// /// 信号的序号(组成Group Name的第二部分) /// /// public string Signal_SeqNo { get; set; } = ""; /// /// 信号组模板ID(平台上,savesignal时,不会带出这个)。 /// 只是公司级上才有意义。 /// /// public string WireGroupTemplateID { get; set; } = ""; /// /// 代码。 /// 1462,H列。 /// /// public string Code { get; set; } = ""; /// /// Range_Min。 /// 1462,J列。 /// 8600,G列(111~222)。 /// /// public string Range_Min { get; set; } = ""; /// /// Range_Max. /// 1462,k列。 /// 8600,G列(111~222)。 /// /// public string Range_Max { get; set; } = ""; /// /// Range_Min和Range_Max的单位。 /// 1462,L列。 /// 8600,H列。 /// /// public string Unit { get; set; } = ""; /// /// Alarm_LL。 /// 1462,m列。 /// 8600,J列(第一行或第二行不确定)。 /// /// public string Alarm_LL { get; set; } = ""; /// /// Alarm_L。 /// 1462,n列。 /// 8600,I列(第一行或第二行不确定)。 /// /// public string Alarm_L { get; set; } = ""; /// /// Alarm_H。 /// 1462,o列。 /// 8600,I列(第一行或第二行不确定)。 /// /// public string Alarm_H { get; set; } = ""; /// /// Alarm_HH。 /// 1462,p列。 /// 8600,J列(第一行或第二行不确定)。 /// /// public string Alarm_HH { get; set; } = ""; /// /// AL_GRP 延申报警组。 /// 1462,S列。 /// 8600,U列。 /// /// public string AL_GRP { get; set; } = ""; /// /// BL_GRP 抑制报警。 /// 1462,T列。 /// 8600,T列。 /// /// public string BL_GRP { get; set; } = ""; /// /// 延时。 /// 1462,U列。 /// 8600,S列。 /// /// public string Time_Delay { get; set; } = ""; /// /// 供应商。 /// 1463,V列。 /// 8600,L列。 /// /// public string Supplier { get; set; } = ""; /// /// 设备名 /// /// public string EquipName { get; set; } = ""; /// /// 传感器代码。 /// 1462,W列。 /// 8600,K列。 /// /// public string SENSOR_CODE { get; set; } = ""; /// /// VDR_Record。 /// 1462,X列。 /// /// public bool VDR_Record { get; set; } = false; /// /// 是否为slow down信号。 /// 1462,Q列。 /// /// public bool SLD { get; set; } = false; /// /// 是否为shut down信号。 /// 1462,R列。 /// /// public bool SHD { get; set; } = false; /// /// Remarks。 /// 1462,Y列。 /// 8600,X列。 /// /// public string Remarks { get; set; } = ""; /// /// 信号归属 /// true,代表该信号是电气进行最终审核确认; /// false,代表该信号是轮机进行最终审核确认; /// public bool ElecOnly { get; set; } = false; /// /// 是否为通讯点。 /// 1462,通过里的文字判断 /// 8600,通过K列里的文字判断 /// public bool CommunicationPoint { get; set; } = false; ///// ///// ECC 。Bool类型数据库要么是int要么是bool ///// //public bool ECC { get; set; } = false; ///// ///// WCC ///// //public bool WCC { get; set; } = false; ///// ///// BCC ///// //public bool BCC { get; set; } = false; /// /// IO类型,AI AO DI DO /// public string InOrOut { get; set; } = ""; /// /// 驾驶室(控制台)。 /// 8600,M列。导入时,如果2行都有值,中间会|分开 /// public string WHConsole { get; set; } = ""; /// /// 驾驶室(计算机)。 /// 8600,N列。导入时,如果2行都有值,中间会|分开 /// public string WHCPU { get; set; } = ""; /// /// 集控室(控制台)。 /// 8600,O列。导入时,如果2行都有值,中间会|分开 /// public string ECRConsole { get; set; } = ""; /// /// 集控室(计算机)。 /// 8600,P列(excel中,两行均有值时,以|分开) /// public string ECRCPU { get; set; } = ""; /// /// 船舶办公室(控制台)。 /// 8600,Q列。导入时,如果2行都有值,中间会|分开 /// public string ShipOfficeConsole { get; set; } = ""; /// /// 船舶办公室(计算机)。 /// 8600,R列。导入时,如果2行都有值,中间会|分开 /// public string ShipOfficeCPU { get; set; } = ""; /// /// 安全保护。(和 列有关系) /// 8600,V列。 /// public string SafetyProt { get; set; } = ""; /// /// 安全保护延时。 /// 8600,V列下。 /// public string SafetyDelay { get; set; } = ""; /// /// SeriousType /// 1462,AG列。 /// /// public string SeriousType { get; set; } = ""; /// /// 自动控制。 /// 8600,W列。 /// public string AutoCtrl { get; set; } = ""; /// /// 爸爸。如果有值,则代表其为虚拟点的概念 /// /// public string ParentID { get; set; } = ""; /// /// 删除标记。因为哪怕是删除了,也要保留数据,以便日后查看。 /// public bool DeleteFlg { get; set; } = false; /// /// 电缆位号(某些项目的里,是允许编辑的IO_allowManualAssign) /// public string CableName { get; set; } /// /// 通讯类信号的母线ID /// public string CableId { get; set; } /// /// 创建人 /// /// public string CreateUserID { get; set; } /// /// 创建时间 /// /// public DateTime? CreateTime { get; set; } /// /// 更新人 /// /// public string UpdateUserID { get; set; } /// /// 更新时间 /// /// public DateTime? UpdateTime { get; set; } #endregion #region 扩展字段 ///// ///// 虚拟点 集合 ///// ////[SugarColumn(IsIgnore = true)] //[Obsolete] //[Navigate(NavigateType.OneToMany, nameof(ec_SofttagEntity.Wire_Group_ID))] //配置了导航,方便DeleteNav,ec_softtag表中的wiregroupid //public List SoftTags { get; set; } public List NewSoftTags { get; set; } /// /// 柜子 /// public string PanelName { get; set; } /// /// 通道号 /// public string ChannelName { get; set; } /// /// 端子排 /// public string StripName { get; set; } /// /// 电缆对 /// public string CableSetName { get; set; } /// /// status的具体文字描述 /// public string StatusValue { get; set; } /// /// 操作历史(因为现在插件端的保存是一次性的。哪怕有多个动作,也只是一次提交) /// public List ActionHistorys { get; set; } /// /// 信号属性变更历史 /// public List Propertyhis { get; set; } /// /// 信号日志 /// public List Logs { get; set; } #endregion } public enum WireGroupStatusEnum { /// /// 待删除 /// [Description("待删除")] ToDelete = 01, /// /// 新增的 /// [Description("新增的")] New = 02, /// /// 已关联 /// [Description("已使用(关联)")] Used = 03, /// /// 已审核 /// [Description("已确认(审核)")] Confirmed = 04, /// /// 重新打开 /// [Description("重新打开")] Reopen = 05, /// /// 彻底删除 /// [Description("彻底删除")] deleted = 06 } public class ActionHistory { public DateTime? ActionTime { get; set; } public Action ActionType { get; set; } public string reason { get; set; } } }