diff --git a/src/app/api/admin/DeedTypesController.ts b/src/app/api/admin/DeedTypesController.ts index bb42d6de..852b11cf 100644 --- a/src/app/api/admin/DeedTypesController.ts +++ b/src/app/api/admin/DeedTypesController.ts @@ -71,8 +71,13 @@ export default class DeedTypesController extends ApiController { //init DeedType resource with request body values const deedTypeEntity = DeedType.hydrate(req.body); - //validate deed type + //validate deed type await validateOrReject(deedTypeEntity, { groups: ["createDeedType"], forbidUnknownValues: false }); + const doesExist = await this.deedTypesService.get({ where: { name: deedTypeEntity.name } }); + if (doesExist.length > 0) { + this.httpBadRequest(response, "Deed type name already used"); + return; + } //call service to get prisma entity const deedTypeEntityCreated = await this.deedTypesService.create(deedTypeEntity); @@ -84,7 +89,7 @@ export default class DeedTypesController extends ApiController { //success this.httpCreated(response, deedType); - } catch (error) { + } catch (error) { this.httpInternalError(response, error); return; }