1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using System;
- using System.Collections.Generic;
- using System.Reflection;
- using System.Text;
- using System.Threading;
- using System.Threading.Tasks;
- using TEAMModelOS.SDK.Helper.Common.CollectionHelper;
- using TEAMModelOS.SDK.Helper.Common.DateTimeHelper;
- using TEAMModelOS.SDK.Helper.Common.JsonHelper;
- using TEAMModelOS.SDK.DI;
- namespace TEAMModelOS.Service.Services.Learn.Implements
- {
-
- public static class ServiceBusService
- {
- public static async Task<long> SendMessage<T>(this AzureServiceBusFactory _serviceBus ,string TopicName, string id,string pk, long startTime, int status, string msgId)
- {
- var topicClient = _serviceBus.GetServiceBusClient();
- //设定开始时间
- Dictionary<string, object> dict = new Dictionary<string, object>() {
- { "name",typeof(T).Name},
- { "id",id},
- { "pk",pk},
- { "status",status}
- };
- //var msgId = "1";
- string messageBody = $"Message {dict}";
- long time = startTime - new DateTimeOffset(DateTime.UtcNow).ToUnixTimeMilliseconds();
- if (time <= 0)
- {
- return -1;
- }
- DateTime timer = DateTimeHelper.ConvertToDateTime(startTime);
- Console.WriteLine($"Sending message: {messageBody}");
- long SequenceNumber = await topicClient.SendScheduleMessageAsync(TopicName, dict.ToApiJson(), new DateTimeOffset(timer));
- return SequenceNumber;
- }
- }
- }
|