Skip to content

Commit f703220

Browse files
authored
Merge pull request #8026 from espoon-voltti/annulment-reason-in-migration
Tuen päätösten migraatio: kumoamisen syyn siirto uuteen tietomalliin
2 parents 04c14f7 + 339fad1 commit f703220

File tree

7 files changed

+21
-8
lines changed

7 files changed

+21
-8
lines changed

frontend/src/lib-common/generated/api-types/document.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,7 @@ export interface ChildDocumentCreateRequest {
179179
* Generated from fi.espoo.evaka.document.childdocument.ChildDocumentDecision
180180
*/
181181
export interface ChildDocumentDecision {
182+
annulmentReason: string
182183
createdAt: HelsinkiDateTime
183184
daycareName: string | null
184185
decisionNumber: number

service/src/main/kotlin/fi/espoo/evaka/document/childdocument/AssistanceDecisionMigrationService.kt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ class AssistanceDecisionMigrationService(asyncJobRunner: AsyncJobRunner<AsyncJob
128128
decisionNumber = decisionNumber,
129129
daycareId = decision.selectedUnit?.id,
130130
processId = processId,
131+
annulmentReason = decision.annulmentReason,
131132
)
132133
}
133134
}
@@ -217,6 +218,7 @@ class AssistanceDecisionMigrationService(asyncJobRunner: AsyncJobRunner<AsyncJob
217218
decisionNumber = decisionNumber,
218219
daycareId = decision.form.selectedUnit,
219220
processId = processId,
221+
annulmentReason = decision.annulmentReason,
220222
)
221223
}
222224
}
@@ -610,6 +612,7 @@ private fun Database.Transaction.insertMigratedDocument(
610612
decisionNumber: Long,
611613
daycareId: DaycareId?,
612614
processId: CaseProcessId?,
615+
annulmentReason: String,
613616
) {
614617
val userId = EvakaUserId(decisionMaker.raw)
615618
val systemUser = AuthenticatedUser.SystemInternalUser.evakaUserId
@@ -626,8 +629,8 @@ private fun Database.Transaction.insertMigratedDocument(
626629
createQuery {
627630
sql(
628631
"""
629-
INSERT INTO child_document_decision (created_at, created_by, modified_at, modified_by, status, valid_from, valid_to, decision_number, daycare_id)
630-
VALUES (${bind(decidedAt)}, ${bind(userId)}, ${bind(decidedAt)}, ${bind(userId)}, ${bind(decisionStatus)}, ${bind(validFrom)}, ${bind(decisionValidity.end)}, ${bind(decisionNumber)}, ${bind(daycareId)})
632+
INSERT INTO child_document_decision (created_at, created_by, modified_at, modified_by, status, valid_from, valid_to, decision_number, daycare_id, annulment_reason)
633+
VALUES (${bind(decidedAt)}, ${bind(userId)}, ${bind(decidedAt)}, ${bind(userId)}, ${bind(decisionStatus)}, ${bind(validFrom)}, ${bind(decisionValidity.end)}, ${bind(decisionNumber)}, ${bind(daycareId)}, ${bind(annulmentReason)})
631634
RETURNING id
632635
"""
633636
)

service/src/main/kotlin/fi/espoo/evaka/document/childdocument/ChildDocument.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,7 @@ data class ChildDocumentDecision(
184184
val validity: DateRange?,
185185
val decisionNumber: Int,
186186
val daycareName: String?,
187+
val annulmentReason: String,
187188
)
188189

189190
data class ChildDocumentSummary(

service/src/main/kotlin/fi/espoo/evaka/document/childdocument/ChildDocumentQueries.kt

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,8 @@ SELECT
106106
cdd.created_at AS decision_created_at,
107107
CASE WHEN cdd.valid_from IS NOT NULL THEN daterange(cdd.valid_from, cdd.valid_to, '[]') END AS decision_validity,
108108
cdd.decision_number AS decision_decision_number,
109-
d.name AS decision_daycare_name
109+
d.name AS decision_daycare_name,
110+
cdd.annulment_reason AS decision_annulment_reason
110111
FROM child_document cd
111112
JOIN document_template dt on cd.template_id = dt.id
112113
JOIN person ch ON cd.child_id = ch.id
@@ -207,7 +208,8 @@ SELECT
207208
cdd.created_at AS decision_created_at,
208209
CASE WHEN cdd.valid_from IS NOT NULL THEN daterange(cdd.valid_from, cdd.valid_to, '[]') END AS decision_validity,
209210
cdd.decision_number AS decision_decision_number,
210-
d.name AS decision_daycare_name
211+
d.name AS decision_daycare_name,
212+
cdd.annulment_reason AS decision_annulment_reason
211213
FROM child_document cd
212214
JOIN document_template dt on cd.template_id = dt.id
213215
JOIN person p on cd.child_id = p.id
@@ -547,12 +549,13 @@ fun Database.Transaction.insertChildDocumentDecision(
547549
userId: EvakaUserId,
548550
validity: DateRange?,
549551
daycareId: DaycareId?,
552+
annulmentReason: String = "",
550553
): ChildDocumentDecisionId {
551554
return createUpdate {
552555
sql(
553556
"""
554-
INSERT INTO child_document_decision (created_by, modified_by, status, valid_from, valid_to, daycare_id)
555-
VALUES (${bind(userId)}, ${bind(userId)}, ${bind(status)}, ${bind(validity?.start)}, ${bind(validity?.end)}, ${bind(daycareId)})
557+
INSERT INTO child_document_decision (created_by, modified_by, status, valid_from, valid_to, daycare_id, annulment_reason)
558+
VALUES (${bind(userId)}, ${bind(userId)}, ${bind(status)}, ${bind(validity?.start)}, ${bind(validity?.end)}, ${bind(daycareId)}, ${bind(annulmentReason)})
556559
RETURNING id
557560
"""
558561
)

service/src/main/kotlin/fi/espoo/evaka/document/childdocument/ChildDocumentQueriesCitizen.kt

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,8 @@ SELECT
4444
cdd.status AS decision_status,
4545
cdd.created_at AS decision_created_at,
4646
CASE WHEN cdd.valid_from IS NOT NULL THEN daterange(cdd.valid_from, cdd.valid_to, '[]') END AS decision_validity,
47-
cdd.decision_number AS decision_decision_number
47+
cdd.decision_number AS decision_decision_number,
48+
cdd.annulment_reason AS decision_annulment_reason
4849
FROM child_document cd
4950
JOIN document_template dt ON cd.template_id = dt.id
5051
JOIN person child ON cd.child_id = child.id
@@ -111,7 +112,8 @@ fun Database.Read.getCitizenChildDocument(id: ChildDocumentId): ChildDocumentCit
111112
cdd.status AS decision_status,
112113
cdd.created_at AS decision_created_at,
113114
CASE WHEN cdd.valid_from IS NOT NULL THEN daterange(cdd.valid_from, cdd.valid_to, '[]') END AS decision_validity,
114-
cdd.decision_number AS decision_decision_number
115+
cdd.decision_number AS decision_decision_number,
116+
cdd.annulment_reason AS decision_annulment_reason
115117
FROM child_document cd
116118
JOIN document_template dt on cd.template_id = dt.id
117119
JOIN person p on cd.child_id = p.id
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
ALTER TABLE child_document_decision
2+
ADD COLUMN annulment_reason text NOT NULL DEFAULT '';

service/src/main/resources/migrations.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -563,3 +563,4 @@ V564__add_nekku_order_time.sql
563563
V565__placement_draft_start_date.sql
564564
V566__new_preschool_assistance_levels_v3.sql
565565
V567__nekku_orders_report_index.sql
566+
V568__child_document_decision_annulment_reason.sql

0 commit comments

Comments
 (0)