feat(frontend,backend): Add application form name

This commit is contained in:
2025-03-09 09:11:35 +01:00
parent 46a14b4e9c
commit 66dabc329d
6 changed files with 42 additions and 8 deletions

View File

@@ -675,6 +675,7 @@ components:
type: object
required:
- id
- name
- formElements
- isTemplate
- createdAt
@@ -683,6 +684,8 @@ components:
id:
type: string
format: uuid
name:
type: string
formElements:
type: array
items:
@@ -698,10 +701,13 @@ components:
CreateApplicationFormDto:
required:
- name
- formElements
- isTemplate
type: object
properties:
name:
type: string
formElements:
type: array
items:

View File

@@ -21,6 +21,9 @@ class ApplicationForm(
@GeneratedValue
var id: UUID? = null,
@Column(nullable = false)
var name: String = "",
@OneToMany(mappedBy = "applicationForm", cascade = [CascadeType.ALL], orphanRemoval = true)
var formElements: MutableList<FormElement> = mutableListOf(),

View File

@@ -10,6 +10,7 @@ class ApplicationFormMapper(private val formElementMapper: FormElementMapper) {
fun toApplicationFormDto(applicationForm: ApplicationForm): ApplicationFormDto {
return ApplicationFormDto(
id = applicationForm.id ?: throw IllegalStateException("ApplicationForm ID must not be null!"),
name = applicationForm.name,
formElements = applicationForm.formElements.map { formElementMapper.toFormElementDto(it) },
isTemplate = applicationForm.isTemplate,
createdAt = applicationForm.createdAt ?: LocalDateTime.now(),
@@ -20,6 +21,7 @@ class ApplicationFormMapper(private val formElementMapper: FormElementMapper) {
fun toApplicationForm(applicationForm: ApplicationFormDto): ApplicationForm {
return ApplicationForm(
id = applicationForm.id,
name = applicationForm.name,
formElements = applicationForm.formElements.map { formElementMapper.toFormElement(it) }.toMutableList(),
isTemplate = applicationForm.isTemplate,
createdAt = applicationForm.createdAt,
@@ -28,7 +30,10 @@ class ApplicationFormMapper(private val formElementMapper: FormElementMapper) {
}
fun toApplicationForm(createApplicationFormDto: CreateApplicationFormDto): ApplicationForm {
val applicationForm = ApplicationForm(isTemplate = createApplicationFormDto.isTemplate)
val applicationForm = ApplicationForm(
name = createApplicationFormDto.name,
isTemplate = createApplicationFormDto.isTemplate
)
applicationForm.formElements = createApplicationFormDto.formElements
.map { formElementMapper.toFormElement(it, applicationForm) }
.toMutableList()

View File

@@ -4,6 +4,7 @@ create table application_form
created_at timestamp(6) not null,
modified_at timestamp(6) not null,
id uuid not null,
name varchar(255) not null,
primary key (id)
);