56 lines
1.7 KiB
C#
56 lines
1.7 KiB
C#
using LiveForum.Code.Base;
|
||
using LiveForum.IService.Others;
|
||
using LiveForum.Model.Dto.Others;
|
||
|
||
using Microsoft.AspNetCore.Authorization;
|
||
using Microsoft.AspNetCore.Http;
|
||
using Microsoft.AspNetCore.Mvc;
|
||
|
||
namespace LiveForum.WebApi.Controllers
|
||
{
|
||
/// <summary>
|
||
/// 文件上传相关接口
|
||
/// </summary>
|
||
/// <param name="fileUpload"></param>
|
||
[Route("api/[controller]/[action]")]
|
||
[ApiController]
|
||
public class FileUploadController(IFileUploadService fileUpload) : ControllerBase
|
||
{
|
||
/// <summary>
|
||
/// 上传文件
|
||
/// </summary>
|
||
/// <param name="file">文件</param>
|
||
/// <param name="type">文件类型:1-帖子图片,2-头像,3-认证视频,4-其他</param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
[Authorize]
|
||
public async Task<BaseResponse<UploadFileRespDto>> UploadFile(IFormFile file, int type)
|
||
{
|
||
var request = new UploadFileReq
|
||
{
|
||
File = file,
|
||
Type = type
|
||
};
|
||
return await fileUpload.UploadFile(request);
|
||
}
|
||
|
||
/// <summary>
|
||
/// 批量上传文件
|
||
/// </summary>
|
||
/// <param name="files">文件数组</param>
|
||
/// <param name="type">文件类型:1-帖子图片,2-头像,3-认证视频,4-其他</param>
|
||
/// <returns></returns>
|
||
[HttpPost]
|
||
[Authorize]
|
||
public async Task<BaseResponse<UploadFilesRespDto>> UploadFiles(List<IFormFile> files, int type)
|
||
{
|
||
var request = new UploadFilesReq
|
||
{
|
||
Files = files,
|
||
Type = type
|
||
};
|
||
return await fileUpload.UploadFiles(request);
|
||
}
|
||
}
|
||
}
|