ly/Model/Alarm.cs

162 lines
5.3 KiB
C#
Raw Normal View History

2025-03-22 12:16:22 +00:00
using Newtonsoft.Json;
using SqlSugar;
using System.ComponentModel;
namespace LY.App.Model
{
[SplitTable(SplitType.Month)]//按年分表 (自带分表支持 年、季、月、周、日)
[SugarTable("ly_alarm_{year}{month}{day}")]
[SugarIndex("index_ly_alarm_batchid", nameof(BatchId), OrderByType.Asc)]
2025-03-22 12:16:22 +00:00
public class Alarm : BaseEntity
{
/// <summary>
/// 无人机批次id
/// </summary>
[JsonConverter(typeof(ValueToStringConverter))]
[SugarColumn(ColumnName = "batch_id", ColumnDescription = "批次id")]
public long BatchId { get; set; }
/// <summary>
/// #无人机的序列号
/// </summary>
public string serial_number { get; set; }
/// <summary>
/// #无人机型号
/// </summary>
public string device_type { get; set; }
/// <summary>
///
/// </summary>
public int device_type_8 { get; set; }
/// <summary>
/// #遥控器的纬
/// </summary>
public double app_lat { get; set; }
public double app_lon { get; set; }
public double drone_lat { get; set; }
public double drone_lon { get; set; }
public double height { get; set; }
public double altitude { get; set; }
public double home_lat { get; set; }
public double home_lon { get; set; }
2025-03-23 11:39:23 +00:00
/// <summary>
/// #距离飞手的距离
/// </summary>
[SugarColumn(IsIgnore = true)]
public double distance { get; set; }
/// <summary>
/// 是否白名单
/// </summary>
[SugarColumn(ColumnName = "is_whitelist", ColumnDescription = "是否白名单")]
public bool IsWhitelist { get; set; }
2025-03-22 12:16:22 +00:00
/// <summary>
/// ,#东向速度
/// </summary>
public double speed_E { get; set; }
/// <summary>
/// #北向速度
/// </summary>
public double speed_N { get; set; }
public double speed_U { get; set; }
/// <summary>
/// #信号增益
/// </summary>
[SugarColumn(ColumnName = "rssi", ColumnDescription = "信号增益")]
public double RSSI { get; set; }
/// <summary>
/// 位置id
/// </summary>
[JsonConverter(typeof(ValueToStringConverter))]
[SugarColumn(ColumnName = "position_id", ColumnDescription = "阵地id")]
public long positionId { get; set; }
/// <summary>
/// 位置id
/// </summary>
[SugarColumn(ColumnName = "position_name", ColumnDescription = "阵地名字")]
public string PostionName { get; set; }
[JsonConverter(typeof(ValueToStringConverter))]
[SugarColumn(ColumnName = "device_Id", ColumnDescription = "设备id")]
public long DeviceId { get; set; }
/// <summary>
/// 来源设备名称
/// </summary>
[SugarColumn(ColumnName = "device_name", ColumnDescription = "DeviceName")]
public string DeviceName { get; set; }
/// <summary>
/// 频率
/// </summary>
[SugarColumn(ColumnName = "freq", ColumnDescription = "频率")]
public double freq { get; set; }
public int alarmLevel { get; set; } = 1;
[SugarColumn(ColumnName = "time", ColumnDescription = "上传时间")]
public long Time { get; set; }
/// <summary>
/// 创建时间
/// </summary>
[SplitField]
[SugarColumn(IsNullable = true, ColumnDescription = "创建时间")]
public override DateTime CreateTime { get; set; } = DateTime.Now;
}
public class RevData
{
/// <summary>
/// 设备序列号
/// </summary>
public string product_ad_id { get; set; }
public IEnumerable<AddAlarm> data { get; set; }
/// <summary>
/// time
/// </summary>
public long time { get; set; }
public double product_lat { get; set; }
public double product_lon { get; set; }
public string product_id { get; set; }
}
/// <summary>
/// 添加报警
/// </summary>
public class AddAlarm
{
/// <summary>
/// #无人机的序列号
/// </summary>
public string serial_number { get; set; }
/// <summary>
/// #无人机型号
/// </summary>
public string device_type { get; set; }
/// <summary>
///
/// </summary>
public int device_type_8 { get; set; }
/// <summary>
/// #遥控器的纬
/// </summary>
public double app_lat { get; set; }
public double app_lon { get; set; }
public double drone_lat { get; set; }
public double drone_lon { get; set; }
public double height { get; set; }
public double altitude { get; set; }
public double home_lat { get; set; }
public double home_lon { get; set; }
public double freq { get; set; }
/// <summary>
/// ,#东向速度
/// </summary>
public double speed_E { get; set; }
/// <summary>
/// #北向速度
/// </summary>
public double speed_N { get; set; }
public double speed_U { get; set; }
/// <summary>
/// #信号增益
/// </summary>
public double RSSI { get; set; }
}
}