UNPKG

@defra/wls-eps-web-service

Version:

The web service for wildlife licencing of European Protected Species

36 lines (30 loc) 1.66 kB
import { conservationConsiderationURIs } from '../../uris.js' import { yesNoPage } from '../common/yes-no.js' import { checkApplication } from '../common/check-application.js' import { APIRequests } from '../../services/api-requests.js' import { SECTION_TASKS } from '../tasklist/general-sections.js' import { tagStatus } from '../../services/status-tags.js' import { boolFromYesNo, yesNoFromBool } from '../common/common.js' import { checkAll } from './common.js' const { DESIGNATED_SITE, DESIGNATED_SITE_CHECK_ANSWERS, DESIGNATED_SITE_START } = conservationConsiderationURIs export const getData = async request => { const { applicationId } = await request.cache().getData() await APIRequests.APPLICATION.tags(applicationId).set({ tag: SECTION_TASKS.CONSERVATION, tagState: tagStatus.IN_PROGRESS }) const { onOrNextToDesignatedSite: onOrNext } = await APIRequests.APPLICATION.getById(applicationId) return { yesNo: yesNoFromBool(onOrNext) } } export const setData = async request => { const { applicationId } = await request.cache().getData() const application = await APIRequests.APPLICATION.getById(applicationId) application.onOrNextToDesignatedSite = boolFromYesNo(request.payload['yes-no']) await APIRequests.APPLICATION.update(applicationId, application) } export const completion = async request => boolFromYesNo(request.payload['yes-no']) ? DESIGNATED_SITE_START.uri : DESIGNATED_SITE_CHECK_ANSWERS.uri export const onOrNextToDesignatedSite = yesNoPage({ page: DESIGNATED_SITE.page, uri: DESIGNATED_SITE.uri, checkData: [checkApplication, checkAll], getData: getData, completion: completion, setData: setData })