using FileService.Application.UploadFileTask; using FileService.Infrastructure; using IM.ASPNETCore; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using System.Security.Claims; namespace FileService.WebApi.Controllers.FileTask { [Authorize] [Route("api/[controller]")] [ApiController] public class FileTaskController : ControllerBase { private readonly UploadFileTaskService service; public FileTaskController(UploadFileTaskService service) { this.service = service; } [HttpPost("init")] [UnitOfWork(typeof(FileDbContext))] public async Task Init(FileTaskInitRequest request) { var userId = User.FindFirstValue(ClaimTypes.NameIdentifier); var res = await service.InitTaskAsync(new UploadTaskInitCommand( UploaderId: Guid.Parse(userId), ConversationId: request.ConversationId, FileName: request.FileName, FileSize: request.FileSize, contentType: request.ContentType, checkSum: request.CheckSum )); return Ok(res); } //[HttpPost] //public async Task GetUploadUrl() //{ //} } }