using MoviconWebApi.Entities;
namespace MoviconWebApi.API.DeviceAlarmApi
{
///
/// 设备报警数据映射器
///
public static class DeviceAlarmMapper
{
///
/// 将实体映射到响应模型
///
public static DeviceAlarmResponse ToResponse(this DeviceAlarm entity)
{
return new DeviceAlarmResponse
{
DeviceCode = entity.DeviceCode,
DeviceName = entity.DeviceName,
DeviceState = entity.DeviceState,
AlarmMessage = entity.AlarmMessage,
StartTime = entity.StartTime.ToString("yyyy-MM-dd HH:mm:ss"),
EndTime = entity.EndTime.ToString("yyyy-MM-dd HH:mm:ss")
};
}
///
/// 批量映射
///
public static List ToResponseList(this IEnumerable entities)
{
return entities.Select(e => e.ToResponse()).ToList();
}
///
/// 判断报警是否活动
///
public static bool IsActive(this DeviceAlarm entity)
{
return entity.EndTime == DateTime.MaxValue || entity.EndTime > DateTime.Now;
}
}
}