using System; using System.Runtime.Serialization; using SqlSugar; namespace WCS.Entity.Protocol.HUB { /// /// 设备运行信息 /// [DataContract] [SugarTable("FJ_DevRunInfo")] public class DevRunInfo : QuestDBBaseEntity { public DevRunInfo() { } /// /// /// /// /// /// /// /// /// /// public DevRunInfo(string runMode, string runStatus, DateTime startTime, DateTime endTime, long duration, string type, string code, DateTime frame) { RunMode = runMode; RunStatus = runStatus; StartTime = startTime; EndTime = endTime; Duration = duration; Type = type; Code = code; Frame = frame; } /// /// 运行模式 /// [SugarColumn(ColumnDataType = "symbol")] public string RunMode { get; set; } /// /// 运行状态 /// [SugarColumn(ColumnDataType = "symbol")] public string RunStatus { get; set; } /// /// 开始时间 /// public DateTime StartTime { get; set; } /// /// 结束时间 /// public DateTime EndTime { get; set; } /// /// 总时长 /// public long Duration { get; set; } /// /// 类型 /// [SugarColumn(ColumnDataType = "symbol")] public string Type { get; set; } /// /// 获取起始地址 /// /// /// public string GetStartAddress(int workstation) { return workstation switch { 1 => ExtraField1.Split("|")[0], 2 => ExtraField2.Split("|")[0], _ => throw new Exception("请选择工位") }; } /// /// 获取目标地址 /// /// /// public string GetTargetAddress(int workstation) { return workstation switch { 1 => ExtraField1.Split("|")[1], 2 => ExtraField2.Split("|")[1], _ => throw new Exception("请选择工位") }; } } public enum DevType { /// /// RGV小车 /// RGV = 1, /// /// 堆垛机 /// SRM = 2, /// /// 机械臂/机器人 /// Robot = 3, /// /// 桁架 /// Truss = 4, /// /// 扫码器 /// BCR = 5, /// /// 站台/输送线 /// Station = 6, /// /// 机械臂/机器人 任务执行数量 /// RobotTaskSum = 7, /// /// 桁架 任务执行数量 /// TrussTaskSum = 8, /// /// 来料统计 /// FeedRate = 9, /// /// 状态统计 /// RunStatus = 10, /// /// 侧推任务统计 /// 线体状态统计 = 11 } }