GetMessage
This commit is contained in:
parent
41f7f37569
commit
21502e324d
|
|
@ -200,6 +200,7 @@ namespace TIAM.Database.DataLayers.Admins
|
||||||
public Task<List<EmailMessage>> GetEmailMessagesBySenderEmailAddressAsync(string emailAddress) => SessionAsync(ctx => ctx.GetEmailMessagesBySenderEmailAddress(emailAddress).ToList());
|
public Task<List<EmailMessage>> GetEmailMessagesBySenderEmailAddressAsync(string emailAddress) => SessionAsync(ctx => ctx.GetEmailMessagesBySenderEmailAddress(emailAddress).ToList());
|
||||||
public Task<List<EmailMessage>> GetEmailMessagesAsync(Guid userId, Guid userProductMappingId) => SessionAsync(ctx => ctx.GetEmailMessages<EmailMessage, EmailRecipient>(userId, userProductMappingId).ToList());
|
public Task<List<EmailMessage>> GetEmailMessagesAsync(Guid userId, Guid userProductMappingId) => SessionAsync(ctx => ctx.GetEmailMessages<EmailMessage, EmailRecipient>(userId, userProductMappingId).ToList());
|
||||||
public Task<List<EmailMessage>> GetEmailMessagesAsync(Guid contextId, Guid userId, Guid userProductMappingId) => SessionAsync(ctx => ctx.GetEmailMessages<EmailMessage, EmailRecipient>(contextId, userId, userProductMappingId).ToList());
|
public Task<List<EmailMessage>> GetEmailMessagesAsync(Guid contextId, Guid userId, Guid userProductMappingId) => SessionAsync(ctx => ctx.GetEmailMessages<EmailMessage, EmailRecipient>(contextId, userId, userProductMappingId).ToList());
|
||||||
|
public Task<List<EmailMessage>> GetAllEmailMessagesAsync() => SessionAsync(ctx => ctx.GetAllEmailMessages<EmailMessage, EmailRecipient>().ToList());
|
||||||
|
|
||||||
|
|
||||||
public Task<bool> AddEmailMessageAsync(EmailMessage emailMessage)
|
public Task<bool> AddEmailMessageAsync(EmailMessage emailMessage)
|
||||||
|
|
|
||||||
|
|
@ -50,4 +50,7 @@ public class SignalRTags : AcSignalRTags
|
||||||
public const int CreateCar = 51;
|
public const int CreateCar = 51;
|
||||||
public const int UpdateCar = 52;
|
public const int UpdateCar = 52;
|
||||||
public const int DeleteCar = 53;
|
public const int DeleteCar = 53;
|
||||||
|
|
||||||
|
public const int GetMessagesByContextId = 60;
|
||||||
|
public const int GetAllMessages = 61;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -149,6 +149,11 @@
|
||||||
<TransferToDriverGridComponent ParentData="(Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
|
<TransferToDriverGridComponent ParentData="(Transfer)context.DataItem" KeyboardNavigationEnabled="true" />
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
</DxTabs>
|
</DxTabs>
|
||||||
|
<DxTabs>
|
||||||
|
<DxTabPage Text="Messages">
|
||||||
|
<MessageDetailGrid Logger="_logger" SignalRClient="AdminSignalRClient" ContextId="((Transfer)context.DataItem).Id"></MessageDetailGrid>
|
||||||
|
</DxTabPage>
|
||||||
|
</DxTabs>
|
||||||
|
|
||||||
</DetailRowTemplate>
|
</DetailRowTemplate>
|
||||||
<EditFormTemplate Context="EditFormContext">
|
<EditFormTemplate Context="EditFormContext">
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,7 @@
|
||||||
<DetailRowTemplate>
|
<DetailRowTemplate>
|
||||||
<DxTabs>
|
<DxTabs>
|
||||||
<DxTabPage Text="Address">
|
<DxTabPage Text="Address">
|
||||||
<AddressGridComponent AddressContext="(UserModelDtoDetail)context.DataItem" ContextIdType="userdetailprofile" KeyboardNavigationEnabled="true" />
|
<AddressDetailGridComponent ParentData="((UserModelDtoDetail)context.DataItem).ProfileDto" KeyboardNavigationEnabled="true" />
|
||||||
</DxTabPage>
|
</DxTabPage>
|
||||||
<DxTabPage Text="Companies owned">
|
<DxTabPage Text="Companies owned">
|
||||||
<ServiceProviderGridComponent UserModelDtoDetail="(UserModelDtoDetail)context.DataItem" />
|
<ServiceProviderGridComponent UserModelDtoDetail="(UserModelDtoDetail)context.DataItem" />
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,17 @@
|
||||||
|
using Microsoft.AspNetCore.Components;
|
||||||
|
|
||||||
|
namespace TIAMSharedUI.Shared.Components.Grids;
|
||||||
|
|
||||||
|
public class MessageDetailGrid : MessageGrid
|
||||||
|
{
|
||||||
|
protected override Task SetParametersAsyncCore(ParameterView parameters)
|
||||||
|
{
|
||||||
|
var isFirst = IsFirstInitializeParameters;
|
||||||
|
|
||||||
|
return base.SetParametersAsyncCore(parameters);
|
||||||
|
|
||||||
|
if (isFirst)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
using Microsoft.AspNetCore.Components;
|
||||||
|
using TIAM.Entities.Addresses;
|
||||||
|
using TIAM.Entities.Emails;
|
||||||
|
using TIAM.Entities.Transfers;
|
||||||
|
using TIAM.Services;
|
||||||
|
|
||||||
|
namespace TIAMSharedUI.Shared.Components.Grids;
|
||||||
|
|
||||||
|
public class MessageGrid : TiamGrid<EmailMessage>
|
||||||
|
{
|
||||||
|
public MessageGrid() : base()
|
||||||
|
{
|
||||||
|
GetAllMessageTag = SignalRTags.GetMessagesByContextId;
|
||||||
|
//AddMessageTag = SignalRTags.AddAddress;
|
||||||
|
//UpdateMessageTag = SignalRTags.UpdateAddress;
|
||||||
|
//RemoveMessageTag = SignalRTags.RemoveAddress; - nem törlünk címet - J.
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override Task SetParametersAsyncCore(ParameterView parameters)
|
||||||
|
{
|
||||||
|
if (!IsFirstInitializeParameters)
|
||||||
|
{
|
||||||
|
//ShowFilterRow = true;
|
||||||
|
//ShowGroupPanel = true;
|
||||||
|
//AllowSort = false;
|
||||||
|
|
||||||
|
//etc...
|
||||||
|
}
|
||||||
|
|
||||||
|
return base.SetParametersAsyncCore(parameters);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -8,6 +8,10 @@ using TIAMWebApp.Shared.Application.Models.ClientSide.Messages;
|
||||||
using AyCode.Models.Enums;
|
using AyCode.Models.Enums;
|
||||||
using TIAM.Database.DataLayers.Admins;
|
using TIAM.Database.DataLayers.Admins;
|
||||||
using TIAM.Entities.Emails;
|
using TIAM.Entities.Emails;
|
||||||
|
using AyCode.Services.SignalRs;
|
||||||
|
using TIAM.Services;
|
||||||
|
using AyCode.Core.Loggers;
|
||||||
|
using AyCode.Core.Extensions;
|
||||||
|
|
||||||
namespace TIAMWebApp.Server.Controllers
|
namespace TIAMWebApp.Server.Controllers
|
||||||
{
|
{
|
||||||
|
|
@ -17,17 +21,18 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
public class MessageAPIController : ControllerBase
|
public class MessageAPIController : ControllerBase
|
||||||
{
|
{
|
||||||
private AdminDal _adminDal;
|
private AdminDal _adminDal;
|
||||||
|
private readonly TIAM.Core.Loggers.ILogger _logger;
|
||||||
private readonly IConfiguration _configuration;
|
private readonly IConfiguration _configuration;
|
||||||
private readonly IWebHostEnvironment _webHostEnvironment;
|
private readonly IWebHostEnvironment _webHostEnvironment;
|
||||||
private IMessageSenderService _messageSenderService;
|
private IMessageSenderService _messageSenderService;
|
||||||
|
|
||||||
|
|
||||||
private readonly ILogger<MessageAPIController> _logger;
|
|
||||||
|
|
||||||
public MessageAPIController(ILogger<MessageAPIController> logger, IConfiguration configuration, IWebHostEnvironment webHostEnvironment, IMessageSenderService messageSenderService, AdminDal adminDal)
|
|
||||||
|
public MessageAPIController(IEnumerable<IAcLogWriterBase> logWriters, IConfiguration configuration, IWebHostEnvironment webHostEnvironment, IMessageSenderService messageSenderService, AdminDal adminDal)
|
||||||
{
|
{
|
||||||
_adminDal = adminDal;
|
_adminDal = adminDal;
|
||||||
_logger = logger;
|
_logger = new TIAM.Core.Loggers.Logger<MessageAPIController>(logWriters.ToArray());
|
||||||
_configuration = configuration;
|
_configuration = configuration;
|
||||||
_webHostEnvironment = webHostEnvironment;
|
_webHostEnvironment = webHostEnvironment;
|
||||||
|
|
||||||
|
|
@ -71,5 +76,37 @@ namespace TIAMWebApp.Server.Controllers
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[AllowAnonymous]
|
||||||
|
[HttpGet]
|
||||||
|
[Route(APIUrls.GetMessagesByContextIdRouteName + "/{contextId}")]
|
||||||
|
[Tags("Finished", "Messages")]
|
||||||
|
[SignalR(SignalRTags.GetMessagesByContextId)]
|
||||||
|
public async Task<string> GetMessagesByContextId(Guid contextId)
|
||||||
|
{
|
||||||
|
_logger.Info($@"GetMessagessByContextId called with ownerId: {contextId}");
|
||||||
|
|
||||||
|
|
||||||
|
var messages = _adminDal.GetEmailMessagesByContextIdAsync(contextId);
|
||||||
|
//put Company id and name into a dictionary
|
||||||
|
|
||||||
|
return messages.ToJson();
|
||||||
|
}
|
||||||
|
|
||||||
|
[AllowAnonymous]
|
||||||
|
[HttpGet]
|
||||||
|
[Route(APIUrls.GetAllMessagesRouteName)]
|
||||||
|
[Tags("Finished", "Messages")]
|
||||||
|
[SignalR(SignalRTags.GetAllMessages)]
|
||||||
|
public async Task<string> GetAllMessages()
|
||||||
|
{
|
||||||
|
_logger.Info($@"GetMessages called");
|
||||||
|
|
||||||
|
|
||||||
|
var messages = await _adminDal.GetAllEmailMessagesAsync();
|
||||||
|
//put Company id and name into a dictionary
|
||||||
|
|
||||||
|
return messages.ToJson();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -39,6 +39,7 @@ builder.Services.AddScoped<TransferDestinationDal>();
|
||||||
builder.Services.AddSingleton<AuthService>();
|
builder.Services.AddSingleton<AuthService>();
|
||||||
builder.Services.AddScoped<ServiceProviderAPIController>();
|
builder.Services.AddScoped<ServiceProviderAPIController>();
|
||||||
builder.Services.AddScoped<TransferDataAPIController>();
|
builder.Services.AddScoped<TransferDataAPIController>();
|
||||||
|
builder.Services.AddScoped<MessageAPIController>();
|
||||||
|
|
||||||
|
|
||||||
builder.Services.AddSignalR(options => options.MaximumReceiveMessageSize = 128 * 1024);//.AddMessagePackProtocol(options => options.SerializerOptions = MessagePackSerializerOptions.Standard.WithSecurity(MessagePackSecurity.UntrustedData));
|
builder.Services.AddSignalR(options => options.MaximumReceiveMessageSize = 128 * 1024);//.AddMessagePackProtocol(options => options.SerializerOptions = MessagePackSerializerOptions.Standard.WithSecurity(MessagePackSecurity.UntrustedData));
|
||||||
|
|
|
||||||
|
|
@ -79,7 +79,7 @@ public class DevAdminSignalRHub : Hub<ISignalRHubItemServer>, IAcSignalRHubServe
|
||||||
private readonly ServiceProviderAPIController _serviceProviderApiController;
|
private readonly ServiceProviderAPIController _serviceProviderApiController;
|
||||||
private readonly TransferDataAPIController _transferDataApiController;
|
private readonly TransferDataAPIController _transferDataApiController;
|
||||||
|
|
||||||
public DevAdminSignalRHub(AdminDal adminDal, ServiceProviderAPIController serviceProviderApiController, TransferDataAPIController transferDataApiController, IEnumerable<IAcLogWriterBase> logWriters)
|
public DevAdminSignalRHub(AdminDal adminDal, ServiceProviderAPIController serviceProviderApiController, TransferDataAPIController transferDataApiController, IEnumerable<IAcLogWriterBase> logWriters, MessageAPIController messageApiController)
|
||||||
{
|
{
|
||||||
_adminDal = adminDal;
|
_adminDal = adminDal;
|
||||||
_serviceProviderApiController = serviceProviderApiController;
|
_serviceProviderApiController = serviceProviderApiController;
|
||||||
|
|
@ -89,6 +89,7 @@ public class DevAdminSignalRHub : Hub<ISignalRHubItemServer>, IAcSignalRHubServe
|
||||||
|
|
||||||
_dynamicMethodCallModels.Add(new DynamicMethodCallModel<SignalRAttribute>(serviceProviderApiController));
|
_dynamicMethodCallModels.Add(new DynamicMethodCallModel<SignalRAttribute>(serviceProviderApiController));
|
||||||
_dynamicMethodCallModels.Add(new DynamicMethodCallModel<SignalRAttribute>(transferDataApiController));
|
_dynamicMethodCallModels.Add(new DynamicMethodCallModel<SignalRAttribute>(transferDataApiController));
|
||||||
|
_dynamicMethodCallModels.Add(new DynamicMethodCallModel<SignalRAttribute>(messageApiController));
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,11 @@ namespace TIAMWebApp.Shared.Application.Interfaces
|
||||||
{
|
{
|
||||||
public interface IClientNoticeSenderService
|
public interface IClientNoticeSenderService
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public Task<List<EmailMessage>> GetAllMessagesAsync();
|
||||||
|
public Task<List<EmailMessage>> GetMessagesByContextIdAsync();
|
||||||
public Task<string> SendNoticeAsync<TNotice>(TNotice message, int messageType) where TNotice : EmailMessage;
|
public Task<string> SendNoticeAsync<TNotice>(TNotice message, int messageType) where TNotice : EmailMessage;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -188,6 +188,10 @@ namespace TIAMWebApp.Shared.Application.Models
|
||||||
//email
|
//email
|
||||||
public const string SendEmailRouteName = "SendEmail";
|
public const string SendEmailRouteName = "SendEmail";
|
||||||
public const string SendEmail = MessageAPI+SendEmailRouteName;
|
public const string SendEmail = MessageAPI+SendEmailRouteName;
|
||||||
|
public const string GetAllMessagesRouteName = "GetAllMessages";
|
||||||
|
public const string GetAllMessages = MessageAPI+GetAllMessagesRouteName;
|
||||||
|
public const string GetMessagesByContextIdRouteName = "GetMessagesByContextId";
|
||||||
|
public const string GetMessagesByContextId = MessageAPI+GetMessagesByContextIdRouteName;
|
||||||
|
|
||||||
//payment
|
//payment
|
||||||
public const string CreatePaymentRouteName = "CreatePayment";
|
public const string CreatePaymentRouteName = "CreatePayment";
|
||||||
|
|
|
||||||
|
|
@ -17,6 +17,16 @@ namespace TIAMWebApp.Shared.Application.Services
|
||||||
this.http = http;
|
this.http = http;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async Task<List<EmailMessage>> GetAllMessagesAsync()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<List<EmailMessage>> GetMessagesByContextIdAsync()
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
public async Task<string> SendNoticeAsync<TNotice>(TNotice message, int messageType) where TNotice : TIAM.Entities.Emails.EmailMessage
|
public async Task<string> SendNoticeAsync<TNotice>(TNotice message, int messageType) where TNotice : TIAM.Entities.Emails.EmailMessage
|
||||||
{
|
{
|
||||||
var url = $"{Setting.ApiBaseUrl}/{APIUrls.SendEmail}";
|
var url = $"{Setting.ApiBaseUrl}/{APIUrls.SendEmail}";
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue