MapSyncTask.cs
1.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
using Rcs.Application.Services.Sync;
using Rcs.Domain.Entities;
namespace Rcs.Infrastructure.Services.Sync;
/// <summary>
/// 地图同步任务
/// @author zzy
/// </summary>
public class MapSyncTask : ISyncTask
{
public string TaskId { get; set; } = string.Empty;
public string TaskType { get; set; } = string.Empty;
public bool AutoSync { get; set; }
public int SyncIntervalSeconds { get; set; }
public string? SyncUrl { get; set; }
public Guid MapId { get; set; }
public static MapSyncTask FromMapResource(Map map) => new()
{
TaskId = $"MapResource_{map.MapId}",
TaskType = SyncTaskTypes.MapResource,
AutoSync = map.ResourceAutoSync,
SyncIntervalSeconds = map.ResourceSyncInterval,
SyncUrl = map.ResourceUrl,
MapId = map.MapId
};
public static MapSyncTask FromMapPoints(Map map) => new()
{
TaskId = $"MapPoints_{map.MapId}",
TaskType = SyncTaskTypes.MapPoints,
AutoSync = map.PointsAutoSync,
SyncIntervalSeconds = map.PointsSyncInterval,
SyncUrl = map.PointsUrl,
MapId = map.MapId
};
}
/// <summary>
/// 同步任务类型常量
/// @author zzy
/// </summary>
public static class SyncTaskTypes
{
public const string MapResource = "MapResource";
public const string MapPoints = "MapPoints";
}