This commit is contained in:
2025-05-09 19:00:29 +08:00
parent 232343324a
commit 5b07ba0dad
4 changed files with 15 additions and 15 deletions

View File

@@ -2,14 +2,16 @@
{
public class GetThemeFileEndpoint : ThemeEndpointScheme, IEndpoint
{
public void Map(IEndpointRouteBuilder app) => app.MapGet("/themes/{themeName}/files/{fileName}", Handle);
public record Request([FromRoute(Name = "themeName")] string ThemeName, [FromRoute(Name = "fileName")] string FileName);
public void Map(IEndpointRouteBuilder app) => app.MapGet("/themes/{themeName}/file", Handle);
private async Task<IResult> Handle([AsParameters] Request request, IMediator mediator, IMapper mapper, CancellationToken cancellationToken)
private async Task<IResult> Handle(
[FromRoute(Name = "themeName")] string themeName,
[FromQuery] string fileName, IMediator mediator,
IMapper mapper, CancellationToken cancellationToken)
{
var query = new GetThemeFileQuery(request.ThemeName, request.FileName);
var query = new GetThemeFileQuery(themeName, fileName);
var response = await mediator.Send(query, cancellationToken);

View File

@@ -3,7 +3,7 @@ namespace Yes.Blog.Endpoints.Admins.Themes
{
public class UpdateThemeFileEndpoint : ThemeEndpointScheme, IEndpoint
{
public void Map(IEndpointRouteBuilder app) => app.MapPut("/themes/{themeName}/files/{fileName}", Handle);//.WithRequestValidation<Request>();
public void Map(IEndpointRouteBuilder app) => app.MapPut("/themes/{themeName}/file", Handle);//.WithRequestValidation<Request>();
internal record Request(
string Content
@@ -21,7 +21,7 @@ namespace Yes.Blog.Endpoints.Admins.Themes
private async Task<IResult> Handle([FromBody] Request request,
[FromRoute(Name = "themeName")] string themeName,
[FromRoute(Name = "fileName")] string fileName,
[FromQuery(Name = "fileName")] string fileName,
IMediator mediator, IMapper mapper, CancellationToken cancellationToken)
{
var command = mapper.Map<UpdateThemeFileCommand>(request);

View File

@@ -35,7 +35,7 @@
return this;
},
loadFile() {
axios.get('/themes/' + themeName + '/files/' + fileName)
axios.get('/themes/' + themeName + '/file/?fileName=' + fileName)
.then(data => {
this.file = data;
editor.setValue(this.file.content);
@@ -47,7 +47,7 @@
return;
}
this.isSubmitting = true;
axios.put('/themes/' + themeName + '/files/' + fileName, { content: this.file.content })
axios.put('/themes/' + themeName + '/file/?fileName=' + fileName, { content: this.file.content })
.then(data => {
console.log('data:', data);
location.href = "/admin/theme/detail?themeName=" + themeName + "&fileName=" + fileName + "";