using AI.Platform.Core;
using AI.Platform.Core.Entity.Media;
using Microsoft.AspNetCore.Components;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Text;
using System.Text.Json;
namespace AI.Platform.Page.Pages.Media.Model
{
public class MediaModel
{
}
///
/// 用于新增/修改广告时传递弹窗数据
///
public class MediaDialogModel
{
///
/// 表id
///
public long? Id { get; set; }
///
/// 弹窗类型:1:新增;2:编辑;3:删除
///
public int Type { get; set; }
///
/// 集团ID
///
public string GroupID { get; set; }
///
/// 站点ID
///
public string BusinessUnitID { get; set; }
///
/// 文件名
///
public string FileName { set; get; }
///
/// 文件后缀
///
public string FileExtension { set; get; }
///
/// guid文件名
///
public string GuidFileName { set; get; }
///
/// 保存到服务器的地址
///
public string SavePath { set; get; }
///
/// 文件开始播放时间
///
public int? StartTime { set; get; }
///
/// 文件结束播放时间
///
public int? EndTime { set; get; }
///
/// 文件生效时间
///
public DateTime? EffecitiveTime { set; get; }
///
/// 文件失效时间
///
public DateTime? FailureTime { set; get; }
///
/// 文件油机状态
///
public List MachineStateList { set; get; }
///
/// 文件广告状态 0:禁用;1:可用
///
public int MediaState { set; get; }
///
/// 文件上传人
///
public string MediaUploader { set; get; } = Global.CurrentUser.NickName;
///
/// 备注
///
public string Remark { set; get; }
public MediaEntity ToCompany()
{
var media = new MediaEntity()
{
LocalPath = SavePath,
GroupID = this.GroupID ?? "",
BusinessUnitID = this.BusinessUnitID ?? "",
FileName = FileName,
FileExtension = this.FileExtension,
GuidFileName = this.GuidFileName,
StartTime = this.StartTime ?? 0,
EndTime = this.EndTime ?? 0,
EffectiveTime = this.EffecitiveTime ?? DateTime.Now,
FailureTime = this.FailureTime ?? DateTime.Now,
MachineState = JsonSerializer.Serialize(getMachineStateList()),
MediaState = this.MediaState,
Uploader = this.MediaUploader ?? "",
CreateTime = DateTime.Now,
EditTime = DateTime.Now,
Remark = this.Remark
};
if(this.Id != null) media.Id = (long)Id;
return media;
}
///
/// 获取油机状态列表,为空则返回所有状态
///
///
public List getMachineStateList()
{
if (MachineStateList.IsNullOrEmpty())
{
return new List
{
"idle","lock","offline","lift","authorised","start","fueling"
};
}
return MachineStateList;
}
}
}