57 lines
1.6 KiB
C#
Raw Permalink Normal View History

using JiShe.CollectBus.Common.Enums;
using System;
2025-04-15 15:49:51 +08:00
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
2025-04-15 16:05:07 +08:00
namespace JiShe.CollectBus.Common.Models
2025-04-15 15:49:51 +08:00
{
/// <summary>
/// 设备缓存基础模型
/// </summary>
2025-04-15 16:48:35 +08:00
public abstract class DeviceCacheBasicModel
2025-04-15 15:49:51 +08:00
{
/// <summary>
/// 集中器Id
/// </summary>
public int FocusId { get; set; }
/// <summary>
/// 表Id
/// </summary>
public int MeterId { get; set; }
2025-04-15 16:48:35 +08:00
/// <summary>
2025-04-16 17:36:46 +08:00
/// 关系映射标识用于ZSet的Member字段和Set的Value字段具体值可以根据不同业务场景进行定义
2025-04-15 16:48:35 +08:00
/// </summary>
public virtual string MemberId => $"{FocusId}:{MeterId}";
2025-04-16 17:36:46 +08:00
/// <summary>
/// ZSet排序索引分数值具体值可以根据不同业务场景进行定义例如时间戳
/// </summary>
public virtual long ScoreValue=> ((long)FocusId << 32) | (uint)MeterId;
2025-04-18 11:31:23 +08:00
/// <summary>
/// 是否已处理
/// </summary>
public virtual bool IsHandle { get; set; } = false;
2025-04-18 17:46:24 +08:00
/// <summary>
/// 集中器地址
/// </summary>
public string FocusAddress { get; set;}
/// <summary>
/// 采集时间间隔(分钟如15)
/// </summary>
public int TimeDensity { get; set; }
/// <summary>
/// 表计类型
/// 电表= 1,水表= 2,燃气表= 3,热能表= 4,水表流量计=5燃气表流量计=6,特殊电表=7
/// </summary>
public MeterTypeEnum MeterType { get; set; }
2025-04-15 15:49:51 +08:00
}
}