Files
jinko.yikatong/Src/Dlhis.Basic/Device/Response/DevicePageResponse.cs

138 lines
2.9 KiB
C#

using Dlhis.Entity.Device.Enums;
using Kurisu.AspNetCore.Utils.Extensions;
namespace Dlhis.Basic.Device.Response;
public class DevicePageResponse
{
public long Id { get; set; }
/// <summary>
/// 设备code
/// </summary>
public Guid Code { get; set; }
/// <summary>
/// 设备唯一码,IP/MAC/SNO
/// </summary>
public string UniqueNo { get; set; }
/// <summary>
/// 心跳间隔
/// </summary>
public int HeartbeatInterval { get; set; }
/// <summary>
/// 品牌
/// </summary>
public string Brand { get; set; }
/// <summary>
/// 供应商
/// </summary>
public string Supplier { get; set; }
/// <summary>
/// 设备功能 DeviceFuncEnumType
/// </summary>
public List<DeviceFuncEnumType> Funcs
{
get
{
if (FuncsStr.IsEmpty()) FuncsStr = "[]";
return FuncsStr.ToObject<List<DeviceFuncEnumType>>();
}
}
public string FuncsStr { get; set; }
/// <summary>
/// 设备机功能类型
/// </summary>
public DeviceTypeEnumType Type { get; set; }
public string TypeDescription => Type.GetDescription();
/// <summary>
/// 部署点
/// </summary>
public string DeployPlace { get; set; }
/// <summary>
/// 部署坐标
/// </summary>
public string DeployPosition { get; set; }
/// <summary>
/// 部署方向
/// </summary>
public DeviceDeployDirectionEnumType? DeployDirection { get; set; }
/// <summary>
/// 模板code
/// </summary>
public Guid TemplateCode { get; set; }
/// <summary>
/// 连接信息
/// </summary>
public string ConnectionInfo { get; set; }
/// <summary>
/// 是否启用
/// </summary>
public bool Enable { get; set; }
/// <summary>
/// 是否作为考勤
/// </summary>
public bool AsAttendance { get; set; }
//*********************************************************附加信息**************************************************************/
/// <summary>
/// 最后心跳时间
/// </summary>
public DateTime? LastHeartbeatTime { get; set; }
/// <summary>
/// 是否在线
/// </summary>
public bool IsOnline
{
get
{
if (!LastHeartbeatTime.HasValue)
return false;
if (HeartbeatInterval <= 0)
return true;
return LastHeartbeatTime.Value.AddSeconds(HeartbeatInterval * 3) >= DateTime.Now;
}
}
/// <summary>
/// 消费总额
/// </summary>
public decimal Amount { get; set; }
/// <summary>
/// 消费人次
/// </summary>
public int UserCount { get; set; }
/// <summary>
/// 营业点code
/// </summary>
public Guid? BusinessPlaceCode { get; set; }
/// <summary>
/// 营业点名称
/// </summary>
public string BusinessPlaceName { get; set; }
}