💥 Sticker pack API follow other api publisher passing way

This commit is contained in:
2025-08-10 13:24:31 +08:00
parent 736db75cfd
commit 0eb3ffcdbe

View File

@@ -99,7 +99,10 @@ public class StickerController(AppDatabase db, StickerService st, FileService.Fi
[HttpPost] [HttpPost]
[RequiredPermission("global", "stickers.packs.create")] [RequiredPermission("global", "stickers.packs.create")]
public async Task<ActionResult<StickerPack>> CreateStickerPack([FromBody] StickerPackRequest request) public async Task<ActionResult<StickerPack>> CreateStickerPack(
[FromBody] StickerPackRequest request,
[FromQuery(Name = "pub")] string publisherName
)
{ {
if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized(); if (HttpContext.Items["CurrentUser"] is not Account currentUser) return Unauthorized();
@@ -108,10 +111,6 @@ public class StickerController(AppDatabase db, StickerService st, FileService.Fi
if (string.IsNullOrEmpty(request.Prefix)) if (string.IsNullOrEmpty(request.Prefix))
return BadRequest("Prefix is required"); return BadRequest("Prefix is required");
var publisherName = Request.Headers["X-Pub"].ToString();
if (string.IsNullOrEmpty(publisherName))
return BadRequest("Publisher name is required in X-Pub header");
var accountId = Guid.Parse(currentUser.Id); var accountId = Guid.Parse(currentUser.Id);
var publisher = var publisher =
await db.Publishers.FirstOrDefaultAsync(p => p.Name == publisherName && p.AccountId == accountId); await db.Publishers.FirstOrDefaultAsync(p => p.Name == publisherName && p.AccountId == accountId);