Skip to content

Update PostSubmissionAssessment #324

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Mar 10, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 3 additions & 26 deletions schemas/postSubmissionApplication.json
Original file line number Diff line number Diff line change
Expand Up @@ -348,20 +348,6 @@
],
"type": "object"
},
"AssessmentBase": {
"additionalProperties": false,
"description": "Council decision is planningOfficerDecision || committeeDecision Council decision date is planningOfficerDecisionDate || committeeDecisionDate",
"properties": {
"expiryDate": {
"$ref": "#/definitions/Date",
"description": "The decision has to be made before this date if not an appeal can be made on the grounds of non-determination"
}
},
"required": [
"expiryDate"
],
"type": "object"
},
"AssessmentDecision": {
"$id": "#AssessmentDecision",
"anyOf": [
Expand Down Expand Up @@ -12333,6 +12319,7 @@
},
"PostSubmissionAssessment": {
"additionalProperties": false,
"description": "Assessment for a post submission application",
"properties": {
"committeeDecision": {
"$ref": "#/definitions/AssessmentDecision",
Expand Down Expand Up @@ -15517,17 +15504,8 @@
"type": "array"
},
"PriorApprovalAssessment": {
"anyOf": [
{
"$ref": "#/definitions/AssessmentBase"
},
{
"$ref": "#/definitions/PriorApprovalAssessmentBase"
}
]
},
"PriorApprovalAssessmentBase": {
"additionalProperties": false,
"description": "Assessment for a post submission application with type prior approval",
"properties": {
"committeeDecision": {
"$ref": "#/definitions/AssessmentDecision",
Expand Down Expand Up @@ -15576,8 +15554,7 @@
}
},
"required": [
"expiryDate",
"priorApprovalRequired"
"expiryDate"
],
"type": "object"
},
Expand Down
52 changes: 36 additions & 16 deletions types/schemas/postSubmissionApplication/data/Assessment.ts
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,38 @@ import {AssessmentDecision} from '../enums/AssessmentDecision';
* Council decision is planningOfficerDecision || committeeDecision
* Council decision date is planningOfficerDecisionDate || committeeDecisionDate
*/
export type AssessmentBase = {
/**
* @description Assessment for a post submission application
*/
export type PostSubmissionAssessment = AssessmentBase &
AssessmentDecisionSection &
AssessmentCommittee;

/**
* @description Base type for all assessments
*/
type AssessmentBase = {
/**
* The decision has to be made before this date if not an appeal can be made on the grounds of non-determination
* @todo After this the determination can be shown as "Non-Determination: would have granted Non-Determination: would have refused" by some councils do we need to show this or will decisionDate being after expiryDate be enough?
*/
expiryDate: Date;

/**
* The url to the decision notice
* A decision notice is issued when an application is determined or withdrawn
*
*/
decisionNotice?: {
url: string;
};
};

export type PostSubmissionAssessment = AssessmentBase & {
/**
* @description AssessmentDecisionSection
* When a decision is made by a planning officer(s) in a LPA
*/
type AssessmentDecisionSection = {
/**
* This is the decision made by planning officer(s) in a LPA
*/
Expand All @@ -24,7 +47,13 @@ export type PostSubmissionAssessment = AssessmentBase & {
* This is the date the decision was made by planning officer(s) in a LPA
*/
planningOfficerDecisionDate?: Date;
};

/**
* @description AssessmentCommittee
* When a decision is made by a committee in a LPA
*/
type AssessmentCommittee = {
/**
* This is the recommendation made by planning officer(s) to the committee
* This is an alternative to a decision - either planningOfficerDecision or planningOfficerRecommendation can be set not both
Expand All @@ -46,28 +75,19 @@ export type PostSubmissionAssessment = AssessmentBase & {
* The date the committee made their decision
*/
committeeDecisionDate?: Date;
/**
* The url to the decision notice
* A decision notice is issued when an application is determined or withdrawn
*
*/
decisionNotice?: {
url: string;
};
};

export type PriorApprovalAssessmentBase = PostSubmissionAssessment & {
/**
* @description Assessment for a post submission application with type prior approval
*/
export type PriorApprovalAssessment = PostSubmissionAssessment & {
/**
* Only applies for prior approval applications so we can work out
* 'Prior approval required and approved', 'Prior approval not required', 'Prior approval required and refused'
*/
priorApprovalRequired: boolean;
priorApprovalRequired?: boolean;
};

export type PriorApprovalAssessment =
| AssessmentBase
| PriorApprovalAssessmentBase;

/**
* TypeMap of PrimaryApplicationTypes to their specific Assessment models
*/
Expand Down