From 2c4ce27ef29d2e32649e2293aac97931a4c74ffd Mon Sep 17 00:00:00 2001 From: Kyle Spearrin Date: Thu, 14 Dec 2017 15:04:20 -0500 Subject: [PATCH] fixes to event get APIs --- src/Api/Controllers/EventsController.cs | 4 ++-- src/Core/Models/Data/EventTableEntity.cs | 9 +++++++++ src/Core/Repositories/TableStorage/EventRepository.cs | 8 ++++---- src/Core/Services/Implementations/EventService.cs | 2 +- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/Api/Controllers/EventsController.cs b/src/Api/Controllers/EventsController.cs index 72be775785..a866cbf9fc 100644 --- a/src/Api/Controllers/EventsController.cs +++ b/src/Api/Controllers/EventsController.cs @@ -40,7 +40,7 @@ namespace Bit.Api.Controllers return new ListResponseModel(responses); } - [HttpGet("~/organization/{id}/events")] + [HttpGet("~/organizations/{id}/events")] public async Task> GetOrganization(string id, [FromQuery]DateTime? start = null, [FromQuery]DateTime? end = null) { @@ -70,7 +70,7 @@ namespace Bit.Api.Controllers start = end.Value.AddDays(-30); if(endSet) { - start = end.Value.AddMilliseconds(1); + start = start.Value.AddMilliseconds(1); } } diff --git a/src/Core/Models/Data/EventTableEntity.cs b/src/Core/Models/Data/EventTableEntity.cs index d59d580115..bacb036aac 100644 --- a/src/Core/Models/Data/EventTableEntity.cs +++ b/src/Core/Models/Data/EventTableEntity.cs @@ -121,5 +121,14 @@ namespace Bit.Core.Models.Data } return result; } + + public override void ReadEntity(IDictionary properties, OperationContext operationContext) + { + base.ReadEntity(properties, operationContext); + if(properties.ContainsKey(nameof(Type)) && properties[nameof(Type)].Int32Value.HasValue) + { + Type = (EventType)properties[nameof(Type)].Int32Value; + } + } } } diff --git a/src/Core/Repositories/TableStorage/EventRepository.cs b/src/Core/Repositories/TableStorage/EventRepository.cs index efdafd7edc..547cc22dd6 100644 --- a/src/Core/Repositories/TableStorage/EventRepository.cs +++ b/src/Core/Repositories/TableStorage/EventRepository.cs @@ -30,9 +30,9 @@ namespace Bit.Core.Repositories.TableStorage var end = CoreHelpers.DateTimeToTableStorageKey(endDate); var rowFilter = TableQuery.CombineFilters( - TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.GreaterThanOrEqual, $"{start}_"), + TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.GreaterThanOrEqual, $"Date={start}_"), TableOperators.And, - TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.LessThanOrEqual, $"{end}`")); + TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.LessThanOrEqual, $"Date={end}`")); var filter = TableQuery.CombineFilters( TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, $"UserId={userId}"), @@ -60,9 +60,9 @@ namespace Bit.Core.Repositories.TableStorage var end = CoreHelpers.DateTimeToTableStorageKey(endDate); var rowFilter = TableQuery.CombineFilters( - TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.GreaterThanOrEqual, $"{start}_"), + TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.GreaterThanOrEqual, $"Date={start}_"), TableOperators.And, - TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.LessThanOrEqual, $"{end}`")); + TableQuery.GenerateFilterCondition("RowKey", QueryComparisons.LessThanOrEqual, $"Date={end}`")); var filter = TableQuery.CombineFilters( TableQuery.GenerateFilterCondition("PartitionKey", QueryComparisons.Equal, $"OrganizationId={organizationId}"), diff --git a/src/Core/Services/Implementations/EventService.cs b/src/Core/Services/Implementations/EventService.cs index 059fd2ece1..033401211e 100644 --- a/src/Core/Services/Implementations/EventService.cs +++ b/src/Core/Services/Implementations/EventService.cs @@ -58,7 +58,7 @@ namespace Bit.Core.Services orgEvents = orgs.Where(o => o.Status == OrganizationUserStatusType.Confirmed) .Select(o => new EventMessage { - OrganizationId = o.Id, + OrganizationId = o.OrganizationId, UserId = userId, Type = type, Date = DateTime.UtcNow