Files
KinginfoGateway/framework/ThingsGateway.Application/Services/CollectDevice/ICollectDeviceService.cs

89 lines
2.8 KiB
C#
Raw Normal View History

2023-05-23 23:54:28 +08:00
#region copyright
//------------------------------------------------------------------------------
// 此代码版权声明为全文件覆盖,如有原作者特别声明,会在下方手动补充
// 此代码版权除特别声明外的代码归作者本人Diego所有
// 源代码使用协议遵循本仓库的开源协议及附加协议
2023-07-16 17:48:22 +08:00
// Gitee源代码仓库https://gitee.com/diego2098/ThingsGateway
2023-05-23 23:54:28 +08:00
// Github源代码仓库https://github.com/kimdiego2098/ThingsGateway
2023-07-16 17:48:22 +08:00
// 使用文档https://diego2098.gitee.io/thingsgateway-docs/
2023-05-23 23:54:28 +08:00
// QQ群605534569
//------------------------------------------------------------------------------
#endregion
2023-08-07 15:09:53 +08:00
using Furion.DependencyInjection;
2023-03-04 18:41:11 +08:00
2023-08-07 15:09:53 +08:00
using Microsoft.AspNetCore.Components.Forms;
2023-03-04 18:41:11 +08:00
2023-08-07 15:09:53 +08:00
namespace ThingsGateway.Application;
2023-06-06 19:37:04 +08:00
/// <summary>
/// 采集设备服务
/// </summary>
public interface ICollectDeviceService : ITransient
2023-03-04 18:41:11 +08:00
{
2023-03-29 16:22:01 +08:00
/// <summary>
2023-06-06 19:37:04 +08:00
/// 添加设备
/// </summary>
Task AddAsync(CollectDevice input);
/// <summary>
/// 复制设备
/// </summary>
Task CopyDevAsync(IEnumerable<CollectDevice> input);
/// <summary>
/// 复制设备与变量
/// </summary>
Task CopyDevAndVarAsync(IEnumerable<CollectDevice> input);
/// <summary>
/// 删除设备
2023-06-06 19:37:04 +08:00
/// </summary>
2023-08-07 15:09:53 +08:00
Task DeleteAsync(params long[] input);
2023-06-06 19:37:04 +08:00
/// <summary>
/// 编辑设备
/// </summary>
Task EditAsync(CollectDeviceEditInput input);
/// <summary>
/// 导出Excel
/// </summary>
Task<MemoryStream> ExportFileAsync(List<CollectDevice> devDatas = null);
2023-06-06 19:37:04 +08:00
/// <summary>
/// 导出Excel
/// </summary>
2023-08-07 15:09:53 +08:00
Task<MemoryStream> ExportFileAsync(CollectDeviceInput input);
/// <summary>
2023-06-06 19:37:04 +08:00
/// 获取缓存
/// </summary>
2023-08-07 15:09:53 +08:00
List<CollectDevice> GetCacheList(bool isMapster = true);
2023-06-06 19:37:04 +08:00
/// <summary>
/// 获取设备运行状态
2023-06-06 19:37:04 +08:00
/// </summary>
Task<List<CollectDeviceRunTime>> GetCollectDeviceRuntimeAsync(long devId = 0);
/// <summary>
/// 根据ID获取设备
/// </summary>
CollectDevice GetDeviceById(long Id);
/// <summary>
/// 根据名称获取ID
/// </summary>
long? GetIdByName(string name);
/// <summary>
/// 根据ID获取名称
/// </summary>
string GetNameById(long id);
/// <summary>
/// 获取设备组或名称的树节点
2023-06-06 19:37:04 +08:00
/// </summary>
List<DeviceTree> GetTree();
/// <summary>
/// 导入
/// </summary>
Task ImportAsync(Dictionary<string, ImportPreviewOutputBase> input);
/// <summary>
/// 分页查询
/// </summary>
Task<SqlSugarPagedList<CollectDevice>> PageAsync(CollectDevicePageInput input);
/// <summary>
/// 导入验证
/// </summary>
Task<Dictionary<string, ImportPreviewOutputBase>> PreviewAsync(IBrowserFile file);
}