Validation error folder number already taken
This commit is contained in:
parent
68cba7f401
commit
8441c06e9b
@ -47,7 +47,14 @@ export default class OfficeFoldersController extends ApiController {
|
||||
//init OfficeFolder resource with request body values
|
||||
const officeFolderRessource = OfficeFolder.hydrate<OfficeFolder>(req.body);
|
||||
await officeFolderRessource.validateOrReject?.({ groups: ["createFolder"] , forbidUnknownValues: false });
|
||||
//validate folder
|
||||
|
||||
const officeFolderNumberExist = await this.officeFoldersService.get({where: {folder_number: officeFolderRessource.folder_number}});
|
||||
|
||||
if (officeFolderNumberExist) {
|
||||
this.httpValidationError(response, "Folder number already taken");
|
||||
return;
|
||||
}
|
||||
|
||||
//call service to get prisma entity
|
||||
const officeFolderEntity = await this.officeFoldersService.create(officeFolderRessource);
|
||||
//Hydrate ressource with prisma entity
|
||||
|
@ -20,6 +20,10 @@ export default abstract class BaseController {
|
||||
return this.httpResponse(response, HttpCodes.BAD_REQUEST, responseData);
|
||||
}
|
||||
|
||||
protected httpValidationError(response: Response, responseData: IResponseData = "Http Validation Error") {
|
||||
return this.httpResponse(response, HttpCodes.VALIDATION_ERROR, responseData);
|
||||
}
|
||||
|
||||
protected httpNotFoundRequest(response: Response, responseData: IResponseData = "Not Found") {
|
||||
return this.httpResponse(response, HttpCodes.NOT_FOUND, responseData);
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ enum HttpCodes {
|
||||
SUCCESS = 200,
|
||||
CREATED = 201,
|
||||
BAD_REQUEST = 400,
|
||||
VALIDATION_ERROR = 422,
|
||||
INTERNAL_ERROR = 500,
|
||||
UNKNOWN_ERROR = 520,
|
||||
NOT_IMPLEMENTED = 501,
|
||||
|
Loading…
x
Reference in New Issue
Block a user