Skip to content

Commit

Permalink
update email used for loppuselvitys asiatarkastus with more info
Browse files Browse the repository at this point in the history
  • Loading branch information
spkerkela committed May 10, 2024
1 parent 1707e42 commit be5bb96
Show file tree
Hide file tree
Showing 2 changed files with 85 additions and 8 deletions.
46 changes: 46 additions & 0 deletions soresu-form/web/va/i18n/translations.ts
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,29 @@ export const translationsFi = {
},
},
loppuselvitys: {
asiatarkastus: {
subject: (asiatunnus: string, name: string) =>
`Täydennyspyyntö Opetushallituksen avustuksen loppuselvitykseen liittyen: ${asiatunnus} ${name}`,
content: 'Kirjoita kuvaus täydennyspyynnöstä ja sen määräajasta tähän',
header: (asiatunnus: string, name: string) =>
`Hyvä vastaanottaja,
tämä viesti koskee avustusta: ${asiatunnus} ${name}`,
footer: (
loppuselvitysLomakeUrl: string,
firstName: string,
lastName: string,
email: string
) => `Linkki loppuselvityslomakkeelle: ${loppuselvitysLomakeUrl}
Muokkaa vain pyydettyjä kohtia.
Tarvittaessa tarkempia lisätietoja voi kysyä viestin lähettäjältä.
Ystävällisin terveisin,
${firstName} ${lastName}
${email}`,
},
status: {
missing: 'Puuttuu',
submitted: 'Asiatarkastuksessa',
Expand Down Expand Up @@ -340,6 +363,29 @@ const translationsSv: Translations = {
},
},
loppuselvitys: {
asiatarkastus: {
subject: (asiatunnus: string, name: string) =>
`Begäran om komplettering av slutredovisningen för statsunderstöd från Utbildningsstyrelsen:: ${asiatunnus} ${name}`,
content: 'Kirjoita kuvaus täydennyspyynnöstä ja sen määräajasta tähän',
header: (asiatunnus: string, name: string) =>
`Bästa mottagare
det här meddelandet gäller statsunderstödet: ${asiatunnus} ${name}`,
footer: (
loppuselvitysLomakeUrl: string,
firstName: string,
lastName: string,
email: string
) => `Länk till blanktten för slutredovisning: ${loppuselvitysLomakeUrl}
Redigera endast de ställen som ingår i begäran.
Vid behov kan ni be om mer information av avsändaren till detta meddelande.
Med vänlig hälsning
${firstName} ${lastName}
${email}`,
},
status: {
missing: 'Saknas',
submitted: 'I faktasökning',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,35 +4,61 @@ import { isString } from 'lodash'

import { Hakemus, SelvitysEmail } from 'soresu-form/web/va/types'
import HttpUtil from 'soresu-form/web/HttpUtil'
import { Language } from 'soresu-form/web/va/i18n/translations'
import { Language, translations } from 'soresu-form/web/va/i18n/translations'

import ViestiLista, { ViestiDetails, ViestiListaRow } from '../ViestiLista'
import { useHakemus } from '../../useHakemus'
import { useAvustushakuId } from '../../useAvustushaku'
import MultipleRecipentEmailForm from '../common-components/MultipleRecipentsEmailForm'
import MultipleRecipentEmailForm, { Email } from '../common-components/MultipleRecipentsEmailForm'
import {
EmailType,
useGetTapahtumalokiForEmailTypeQuery,
usePostLoppuselvitysTaydennyspyyntoMutation,
} from '../../../apiSlice'
import { hasFetchErrorMsg } from '../../../isFetchBaseQueryError'
import { useUserInfo } from '../../../initial-data-context'
import { useEnvironment, useUserInfo } from '../../../initial-data-context'
import { getLoadedAvustushakuData, refreshHakemus } from '../../arviointiReducer'
import {
useHakemustenArviointiDispatch,
useHakemustenArviointiSelector,
} from '../../arviointiStore'
import { initialRecipientEmails } from '../emailRecipients'
import { VerificationBox } from './VerificationBox'
import { UserInfo } from '../../../types'

function createInitialTaydennyspyyntoEmail(hakemus: Hakemus) {
function createInitialTaydennyspyyntoEmail(
hakemus: Hakemus,
avustushakuId: number,
userInfo: UserInfo,
hakijaServerUrl: string
): Email {
const contactEmail = hakemus.normalizedData?.['contact-email']
const trustedContactEmail = hakemus.normalizedData?.['trusted-contact-email']
const arkistointiTunnus = hakemus['register-number']
const hakemusName = hakemus['project-name']
const userKey = hakemus['user-key']
const selvitysType = 'loppuselvitys'
const publicUrl = `/selvitys/avustushaku/${avustushakuId}/${selvitysType}?hakemus=${userKey}`
const fullUrl = `${hakijaServerUrl}${publicUrl}`

return {
lang: hakemus.language,
subject: '',
content: '',
subject: translations[hakemus.language].loppuselvitys.asiatarkastus.subject(
arkistointiTunnus!,
hakemusName
),
content: translations[hakemus.language].loppuselvitys.asiatarkastus.content,
receivers: [contactEmail, trustedContactEmail].filter(isString),
header: translations[hakemus.language].loppuselvitys.asiatarkastus.header(
arkistointiTunnus!,
hakemusName
),
footer: translations[hakemus.language].loppuselvitys.asiatarkastus.footer(
fullUrl,
userInfo['first-name'],
userInfo['surname'],
userInfo.email
),
}
}

Expand Down Expand Up @@ -261,6 +287,9 @@ function LoppuselvitysTarkastus({
showCancelButton,
}: LoppuselvitysTarkastusProps) {
const hakemus = useHakemus()
const userInfo = useUserInfo()
const env = useEnvironment()
const hakijaServerUrl = env['hakija-server'].url[hakemus.language]
const avustushakuId = useAvustushakuId()
const { data: sentEmails } = useGetTapahtumalokiForEmailTypeQuery({
hakemusId: hakemus.id,
Expand All @@ -272,7 +301,9 @@ function LoppuselvitysTarkastus({
const [showEmailForm, setShowEmailForm] = useState(false)
const emailFormRef = useRef<HTMLDivElement>(null)
const [formErrorMessage, setFormErrorMessage] = useState<string>()
const [email, setEmail] = useState(createInitialTaydennyspyyntoEmail(hakemus))
const [email, setEmail] = useState(
createInitialTaydennyspyyntoEmail(hakemus, avustushakuId, userInfo, hakijaServerUrl)
)
const revealEmailForm = () => emailFormRef.current?.scrollIntoView({ behavior: 'smooth' })
const [showMessage, setShowMessage] = useState(false)
const [cancellingTaydennys, setCancellingTaydennys] = useState(false)
Expand All @@ -290,7 +321,7 @@ function LoppuselvitysTarkastus({
}

function cancelForm() {
setEmail(createInitialTaydennyspyyntoEmail(hakemus))
setEmail(createInitialTaydennyspyyntoEmail(hakemus, avustushakuId, userInfo, hakijaServerUrl))
setShowEmailForm(false)
setFormErrorMessage(undefined)
}
Expand Down

0 comments on commit be5bb96

Please sign in to comment.