aboutsummaryrefslogtreecommitdiffstats
path: root/code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2022-11-17 07:46:38 +0100
committerivarlovlie <git@ivarlovlie.no>2022-11-17 07:46:38 +0100
commit971a70d15e5531b59afd74556dc50214deeeafe9 (patch)
tree67210f7bf53dcbe5b17bf62c7837dca1cd88907c /code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs
parent18b8d910b3dfa1e5c2a39b401b007b5e1ab8dea5 (diff)
downloadgreatoffice-971a70d15e5531b59afd74556dc50214deeeafe9.tar.xz
greatoffice-971a70d15e5531b59afd74556dc50214deeeafe9.zip
feat: Update known problem model
Diffstat (limited to 'code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs')
-rw-r--r--code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs11
1 files changed, 8 insertions, 3 deletions
diff --git a/code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs b/code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs
index eb69f7f..b20b404 100644
--- a/code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs
+++ b/code/api/src/Endpoints/V1/Customers/CreateCustomerRoute.cs
@@ -16,9 +16,14 @@ public class CreateCustomerRoute : RouteBaseAsync.WithRequest<CreateCustomerPayl
[HttpPost("~/v{version:apiVersion}/customers/create")]
public override async Task<ActionResult> HandleAsync(CreateCustomerPayload request, CancellationToken cancellationToken = default) {
- var errors = new Dictionary<string, string>();
- if (request.Name.Trim().IsNullOrEmpty()) errors.Add("name", _localizer["Name is a required field"]);
- if (errors.Any()) return KnownProblem(_localizer["Invalid form"], _localizer["One or more fields is invalid"], errors);
+ var problem = new KnownProblemModel();
+ if (request.Name.Trim().IsNullOrEmpty()) problem.AddError("name", _localizer["Name is a required field"]);
+ if (problem.Errors.Any()) {
+ problem.Title = _localizer["Invalid form"];
+ problem.Subtitle = _localizer["One or more validation errors occured"];
+ return KnownProblem(problem);
+ }
+
var customer = new Customer(LoggedInUser) {
CustomerNumber = request.CustomerNumber,
Name = request.Name,