feat(PostDocumentRequest): Erstellen UploadDocumentRequest, um den Dokumenten-Upload-Prozess von PostDocumentRequest zu trennen.
- Aktualisieren den Controller, um den Upload-Prozess zu verarbeiten.
This commit is contained in:
parent
ccecf47dca
commit
21cc348c6c
@ -7,10 +7,15 @@ namespace Leanetec.EConnect.Client.Order;
|
|||||||
|
|
||||||
public record PostDocumentRequest(string TenantId, int OrderId) : HttpRequest<Response<ProblemDetail>>
|
public record PostDocumentRequest(string TenantId, int OrderId) : HttpRequest<Response<ProblemDetail>>
|
||||||
{
|
{
|
||||||
public StreamContent Content { get; set; } = null!;
|
public UploadDocumentRequest ToUploadDocument(StreamContent content)
|
||||||
|
{
|
||||||
|
return new UploadDocumentRequest(this, content);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public class PostDocumentRequestHandler : IRequestHandler<PostDocumentRequest, Response<ProblemDetail>>
|
public record UploadDocumentRequest(PostDocumentRequest Original, StreamContent Content) : PostDocumentRequest(Original);
|
||||||
|
|
||||||
|
public class PostDocumentRequestHandler : IRequestHandler<UploadDocumentRequest, Response<ProblemDetail>>
|
||||||
{
|
{
|
||||||
private readonly IEConnectClient<ProblemDetail> _client;
|
private readonly IEConnectClient<ProblemDetail> _client;
|
||||||
|
|
||||||
@ -19,7 +24,7 @@ public class PostDocumentRequestHandler : IRequestHandler<PostDocumentRequest, R
|
|||||||
_client = client;
|
_client = client;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async Task<Response<ProblemDetail>> Handle(PostDocumentRequest request, CancellationToken cancel)
|
public async Task<Response<ProblemDetail>> Handle(UploadDocumentRequest request, CancellationToken cancel)
|
||||||
{
|
{
|
||||||
return await _client.PostAsync(
|
return await _client.PostAsync(
|
||||||
request.Content,
|
request.Content,
|
||||||
|
|||||||
@ -37,9 +37,8 @@ public class OrderController : ControllerBase
|
|||||||
using var streamContent = new StreamContent(stream);
|
using var streamContent = new StreamContent(stream);
|
||||||
streamContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(file.ContentType);
|
streamContent.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue(file.ContentType);
|
||||||
content.Add(streamContent, "file", file.FileName);
|
content.Add(streamContent, "file", file.FileName);
|
||||||
request.Content = streamContent;
|
|
||||||
|
|
||||||
var res = await _mediator.Send(request, cancel);
|
var res = await _mediator.Send(request.ToUploadDocument(streamContent), cancel);
|
||||||
|
|
||||||
if (res.Ok)
|
if (res.Ok)
|
||||||
{
|
{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user