feat(item-acquire-history): controller + DTOs

Add ItemAcquireHistoryController (POST /item_acquire_history/info) with its
three DTOs and two integration tests (ordering + empty-viewer). The endpoint
reads ViewerAcquireHistory rows written by InventoryTransaction.CommitAsync,
ordered newest-first, capped at 300. Tests access doc.RootElement.histories
directly (no envelope wrapper in the test path — middleware skips non-UnityPlayer UA).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
gamer147
2026-06-09 14:49:43 -04:00
parent 00fbf1a185
commit f9a971a546
5 changed files with 191 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
using System.Text.Json.Serialization;
using MessagePack;
namespace SVSim.EmulatedEntrypoint.Models.Dtos.ItemAcquireHistory;
[MessagePackObject]
public sealed class ItemAcquireHistoryInfoResponse
{
[JsonPropertyName("histories")]
[Key("histories")]
public List<ItemAcquireHistoryEntryDto> Histories { get; set; } = new();
}