using SJZY.Track.Application.Contract.Dtos.TrackPush;
using SJZY.Track.Application.Contract.Events;
using Volo.Abp.DependencyInjection;
namespace SJZY.Track.Application.Contract.Services;
public interface IBroadcastingService : ITransientDependency
{
///
/// 轨迹变更广播(新增/修改)
///
///
///
///
void TrackChangePublicTopicAsync(TrackUpsertEvent eto, string subSystemCode, string trackStatusCode);
///
/// 轨迹变更广播(删除)
///
///
///
///
void TrackChangePublicTopicAsync(TrackDeleteEvent eto, OrderIdentifier[] orderIdentifiers, string trackCode, string trackStatusCode, string subSystemCode);
///
/// 轨迹推送完成广播(推送完成回调)
///
///
void TrackPushCompletedPublicTopic(TrackPushRecordDto log);
///
/// 轨迹推送失败广播(推送前置被拦截,或调用接口通失败)
///
///
void TrackPushFailedPubilcTopic(TrackPushRecordDto log);
}