From a9583e132b7afad0fc8c4b7a845dad6b4cf0aec4 Mon Sep 17 00:00:00 2001 From: Ian Liu Date: Mon, 29 Jul 2024 10:16:48 -0700 Subject: [PATCH 1/5] Add FOM # search field --- admin/src/app/search/search.component.html | 18 ++++++++++++++++-- admin/src/app/search/search.component.ts | 11 ++++++++--- 2 files changed, 24 insertions(+), 5 deletions(-) diff --git a/admin/src/app/search/search.component.html b/admin/src/app/search/search.component.html index bfce8e681..f8cff8931 100644 --- a/admin/src/app/search/search.component.html +++ b/admin/src/app/search/search.component.html @@ -25,13 +25,27 @@

Search FOMs

-
+
+ + + +
+ +
= null; public user: User; + public fNumber: number; // filter: FOM Number public fFspId: number; // filter: FSP ID public fStatus: string; // filter: workflowStateCode public fDistrict: number; // filter: district id @@ -126,6 +127,9 @@ export class SearchComponent implements OnInit, OnDestroy { if (this.fHolder != null) { params['fHolder'] = this.fHolder; } + if (this.fNumber != null) { + params['fNumber'] = this.fNumber; + } // change browser URL without reloading page (so any query params are saved in history) this.location.go(this.router.createUrlTree([], {relativeTo: this.route, queryParams: params}).toString()); @@ -144,6 +148,7 @@ export class SearchComponent implements OnInit, OnDestroy { this.fDistrict = null; this.fStatus = undefined; this.fHolder = null; + this.fNumber = null; this.saveQueryParameters(); this.projects = []; this.count = 0; From 5b09636bda19245875491e50386f62eda0cb440d Mon Sep 17 00:00:00 2001 From: Ian Liu Date: Mon, 29 Jul 2024 12:29:43 -0700 Subject: [PATCH 2/5] Add projectId for backend search and generate the api-client. --- admin/src/app/search/search.component.ts | 3 +- api/openapi/swagger-spec.json | 5230 +++++++++-------- .../app/modules/project/project.controller.ts | 5 + .../typescript-ng/api/project.service.ts | 13 +- 4 files changed, 2636 insertions(+), 2615 deletions(-) diff --git a/admin/src/app/search/search.component.ts b/admin/src/app/search/search.component.ts index ba03df164..a4c6ef5c3 100644 --- a/admin/src/app/search/search.component.ts +++ b/admin/src/app/search/search.component.ts @@ -82,7 +82,8 @@ export class SearchComponent implements OnInit, OnDestroy { const workFlowStateCodeArg = this.fStatus === 'undefined'? null: this.fStatus; const districtArg = (isNaN(this.fDistrict) || isNil(this.fDistrict))? null : this.fDistrict.toString(); const fspIdArg = (isNaN(this.fFspId) || isNil(this.fFspId))? null : this.fFspId.toString(); - this.searchProjectService.projectControllerFind(fspIdArg , districtArg, workFlowStateCodeArg, this.fHolder) + const projectIdArg = (isNaN(this.fNumber) || isNil(this.fNumber))? null : this.fNumber.toString(); + this.searchProjectService.projectControllerFind(projectIdArg, fspIdArg , districtArg, workFlowStateCodeArg, this.fHolder) .subscribe( projects => { this.projects = projects; diff --git a/api/openapi/swagger-spec.json b/api/openapi/swagger-spec.json index 371795f17..dfbbbba2d 100644 --- a/api/openapi/swagger-spec.json +++ b/api/openapi/swagger-spec.json @@ -1,2635 +1,2645 @@ { "openapi": "3.0.0", "paths": { - "/api/awsCognitoConfig": { - "get": { - "operationId": "AuthController_getAwsCognitoConfig", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AwsCognitoConfig" - } - } - } - } - }, - "tags": [ - "auth" - ] - } - }, - "/api/attachment": { - "post": { - "operationId": "AttachmentController_create", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary" - }, - "projectId": { - "type": "number" - }, - "attachmentTypeCode": { - "type": "string" - } - } - } - } - } - }, - "responses": { - "201": { - "description": "" - } - }, - "tags": [ - "attachment" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "get": { - "operationId": "AttachmentController_find", - "parameters": [ - { - "name": "projectId", - "required": true, - "in": "query", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AttachmentResponse" - } - } - } - } - } - }, - "tags": [ - "attachment" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/attachment/file/{id}": { - "get": { - "operationId": "AttachmentController_getFileContents", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/octet-stream": { - "schema": { - "type": "string", - "format": "binary" - } - } - } - } - }, - "tags": [ - "attachment" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/attachment/{id}": { - "get": { - "operationId": "AttachmentController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/AttachmentResponse" - } - } - } - } - }, - "tags": [ - "attachment" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "delete": { - "operationId": "AttachmentController_remove", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "attachment" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/attachment-type-code": { - "get": { - "operationId": "AttachmentTypeCodeController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/AttachmentTypeCode" - } - } - } - } - } - }, - "tags": [ - "attachment" - ] - } - }, - "/api/interaction": { - "post": { - "operationId": "InteractionController_create", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary" - }, - "projectId": { - "type": "number" - }, - "stakeholder": { - "type": "string" - }, - "communicationDate": { - "type": "string" - }, - "communicationDetails": { - "type": "string" - }, - "filename": { - "type": "string" - } - } - } - } - } - }, - "responses": { - "201": { - "description": "" - } - }, - "tags": [ - "interaction" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "get": { - "operationId": "InteractionController_find", - "parameters": [ - { - "name": "projectId", - "required": true, - "in": "query", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/InteractionResponse" - } - } - } - } - } - }, - "tags": [ - "interaction" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/interaction/{id}": { - "put": { - "operationId": "InteractionController_update", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "multipart/form-data": { - "schema": { - "type": "object", - "properties": { - "file": { - "type": "string", - "format": "binary" - }, - "projectId": { - "type": "number" - }, - "stakeholder": { - "type": "string" - }, - "communicationDate": { - "type": "string" - }, - "communicationDetails": { - "type": "string" - }, - "revisionCount": { - "type": "number" - }, - "filename": { - "type": "string" - } - } - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/InteractionResponse" - } - } - } - } - }, - "tags": [ - "interaction" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "delete": { - "operationId": "InteractionController_remove", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { + "/api/awsCognitoConfig": { + "get": { + "operationId": "AuthController_getAwsCognitoConfig", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AwsCognitoConfig" + } + } + } + } + }, + "tags": [ + "auth" + ] + } + }, + "/api/attachment": { + "post": { + "operationId": "AttachmentController_create", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + }, + "projectId": { "type": "number" - } - } - ], - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "interaction" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project/publicSummary": { - "get": { - "operationId": "ProjectController_findPublicSummary", - "parameters": [ - { - "name": "projectId", - "required": false, - "in": "query", - "schema": { - "type": "string" - } - }, - { - "name": "includeCommentOpen", - "required": false, - "in": "query", - "schema": { + }, + "attachmentTypeCode": { "type": "string" - } - }, - { - "name": "includePostCommentOpen", - "required": false, - "in": "query", - "schema": { - "type": "string" - } - }, - { - "name": "forestClientName", - "required": false, - "in": "query", - "schema": { - "type": "string" - } - }, - { - "name": "openedOnOrAfter", - "required": false, - "in": "query", - "schema": { - "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectPublicSummaryResponse" - } - } - } - } - } - }, - "tags": [ - "project" - ] - } - }, - "/api/project/{id}": { - "get": { - "operationId": "ProjectController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "put": { - "operationId": "ProjectController_update", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectUpdateRequest" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } + } + } } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "delete": { - "operationId": "ProjectController_remove", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project/metrics/{id}": { - "get": { - "operationId": "ProjectController_findProjectMetrics", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { + } + } + }, + "responses": { + "201": { + "description": "" + } + }, + "tags": [ + "attachment" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "get": { + "operationId": "AttachmentController_find", + "parameters": [ + { + "name": "projectId", + "required": true, + "in": "query", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AttachmentResponse" + } + } + } + } + } + }, + "tags": [ + "attachment" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/attachment/file/{id}": { + "get": { + "operationId": "AttachmentController_getFileContents", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/octet-stream": { + "schema": { + "type": "string", + "format": "binary" + } + } + } + } + }, + "tags": [ + "attachment" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/attachment/{id}": { + "get": { + "operationId": "AttachmentController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/AttachmentResponse" + } + } + } + } + }, + "tags": [ + "attachment" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "AttachmentController_remove", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "attachment" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/attachment-type-code": { + "get": { + "operationId": "AttachmentTypeCodeController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/AttachmentTypeCode" + } + } + } + } + } + }, + "tags": [ + "attachment" + ] + } + }, + "/api/interaction": { + "post": { + "operationId": "InteractionController_create", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + }, + "projectId": { "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectMetricsResponse" - } - } - } - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project": { - "get": { - "operationId": "ProjectController_find", - "parameters": [ - { - "name": "fspId", - "required": false, - "in": "query", - "schema": { + }, + "stakeholder": { "type": "string" - } - }, - { - "name": "districtId", - "required": false, - "in": "query", - "schema": { + }, + "communicationDate": { "type": "string" - } - }, - { - "name": "workflowStateCode", - "required": false, - "in": "query", - "schema": { + }, + "communicationDetails": { "type": "string" - } - }, - { - "name": "forestClientName", - "required": false, - "in": "query", - "schema": { + }, + "filename": { "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } - } + } + } } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "post": { - "operationId": "ProjectController_create", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectCreateRequest" - } - } - } - }, - "responses": { - "201": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project/workflowState/{id}": { - "put": { - "operationId": "ProjectController_stateChange", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectWorkflowStateChangeRequest" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project/commentClassification/{id}": { - "put": { - "operationId": "ProjectController_commentClassificationMandatoryChange", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectCommentClassificationMandatoryChangeRequest" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectResponse" - } - } - } - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/project/commentingClosedDate/{id}": { - "put": { - "operationId": "ProjectController_commentingClosedDateChange", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { + } + } + }, + "responses": { + "201": { + "description": "" + } + }, + "tags": [ + "interaction" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "get": { + "operationId": "InteractionController_find", + "parameters": [ + { + "name": "projectId", + "required": true, + "in": "query", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InteractionResponse" + } + } + } + } + } + }, + "tags": [ + "interaction" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/interaction/{id}": { + "put": { + "operationId": "InteractionController_update", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "file": { + "type": "string", + "format": "binary" + }, + "projectId": { "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ProjectCommentingClosedDateChangeRequest" - } - } - } - }, - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "project" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/public-notice": { - "get": { - "operationId": "PublicNoticeController_findListForPublicFrontEnd", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PublicNoticePublicFrontEndResponse" - } - } - } - } - } - }, - "tags": [ - "public-notice" - ] - }, - "post": { - "operationId": "PublicNoticeController_create", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeCreateRequest" - } - } - } - }, - "responses": { - "201": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeResponse" - } - } - } - } - }, - "tags": [ - "public-notice" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/public-notice/latest/{forestClientId}": { - "get": { - "operationId": "PublicNoticeController_findLatestPublicNotice", - "parameters": [ - { - "name": "forestClientId", - "required": true, - "in": "path", - "schema": { + }, + "stakeholder": { "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeResponse" - } - } - } - } - }, - "tags": [ - "public-notice" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/public-notice/{id}": { - "get": { - "operationId": "PublicNoticeController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeResponse" - } - } - } - } - }, - "tags": [ - "public-notice" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "put": { - "operationId": "PublicNoticeController_update", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeUpdateRequest" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicNoticeResponse" - } - } - } - } - }, - "tags": [ - "public-notice" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "delete": { - "operationId": "PublicNoticeController_remove", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "public-notice" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/workflow-state-code": { - "get": { - "operationId": "WorkflowStateCodeController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/WorkflowStateCode" - } - } - } - } - } - }, - "tags": [ - "project" - ] - } - }, - "/api/district": { - "get": { - "operationId": "DistrictController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/DistrictResponse" - } - } - } - } - } - }, - "tags": [ - "district" - ] - } - }, - "/api/district/{id}": { - "get": { - "operationId": "DistrictController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/DistrictResponse" - } - } - } - } - }, - "tags": [ - "district" - ] - } - }, - "/api/forest-client": { - "get": { - "operationId": "ForestClientController_find", - "parameters": [], - "responses": { - "200": { - "description": "Returns only forest clients that the user is authorized for.", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ForestClientResponse" - } - } - } - } - } - }, - "tags": [ - "forest-client" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/forest-client/{id}": { - "get": { - "operationId": "ForestClientController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/ForestClientResponse" - } - } - } - } - }, - "tags": [ - "forest-client" - ] - } - }, - "/api/public-comment": { - "post": { - "operationId": "PublicCommentController_create", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicCommentCreateRequest" - } - } - } - }, - "responses": { - "201": { - "description": "" - } - }, - "tags": [ - "public-comment" - ] - }, - "get": { - "operationId": "PublicCommentController_find", - "parameters": [ - { - "name": "projectId", - "required": true, - "in": "query", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/PublicCommentAdminResponse" - } - } - } - } - } - }, - "tags": [ - "public-comment" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/public-comment/{id}": { - "put": { - "operationId": "PublicCommentController_update", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicCommentAdminUpdateRequest" - } - } - } - }, - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicCommentAdminResponse" - } - } - } - } - }, - "tags": [ - "public-comment" - ], - "security": [ - { - "bearer": [] - } - ] - }, - "get": { - "operationId": "PublicCommentController_findOne", - "parameters": [ - { - "name": "id", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/PublicCommentAdminResponse" - } - } - } - } - }, - "tags": [ - "public-comment" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/comment-scope-code": { - "get": { - "operationId": "CommentScopeCodeController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/CommentScopeCode" - } - } - } - } - } - }, - "tags": [ - "public-comment" - ] - } - }, - "/api/response-code": { - "get": { - "operationId": "ResponseCodeController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ResponseCode" - } - } - } - } - } - }, - "tags": [ - "public-comment" - ] - } - }, - "/api/submission": { - "post": { - "operationId": "SubmissionController_processSpatialSubmission", - "parameters": [], - "requestBody": { - "required": true, - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SubmissionRequest" - } - } - } - }, - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "submission" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/submission/detail/{projectId}": { - "get": { - "operationId": "SubmissionController_findSubmissionDetailForCurrentSubmissionType", - "parameters": [ - { - "name": "projectId", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "$ref": "#/components/schemas/SubmissionDetailResponse" - } - } - } - } - }, - "tags": [ - "submission" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/submission/{submissionId}": { - "delete": { - "operationId": "SubmissionController_removeSpatialSubmissionByType", - "parameters": [ - { - "name": "submissionId", - "required": true, - "in": "path", - "schema": { - "type": "number" - } - }, - { - "name": "spatialObjectCode", - "required": true, - "in": "query", - "schema": { - "enum": [ - "CUT_BLOCK", - "ROAD_SECTION", - "WTRA" - ], + }, + "communicationDate": { "type": "string" - } - } - ], - "responses": { - "200": { - "description": "" - } - }, - "tags": [ - "submission" - ], - "security": [ - { - "bearer": [] - } - ] - } - }, - "/api/submission-type-code": { - "get": { - "operationId": "SubmissionTypeCodeController_findAll", - "parameters": [], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SubmissionTypeCode" - } - } - } - } - } - }, - "tags": [ - "submission" - ] - } - }, - "/api/spatial-feature": { - "get": { - "operationId": "SpatialFeatureController_getForProject", - "parameters": [ - { - "name": "projectId", - "required": true, - "in": "query", - "schema": { + }, + "communicationDetails": { + "type": "string" + }, + "revisionCount": { "type": "number" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpatialFeaturePublicResponse" - } - } - } - } - } - }, - "tags": [ - "spatial-feature" - ] - } - }, - "/api/spatial-feature/bcgw-extract": { - "get": { - "operationId": "SpatialFeatureController_getBcgwExtract", - "parameters": [ - { - "name": "version", - "required": true, - "in": "query", - "schema": { + }, + "filename": { "type": "string" - } - } - ], - "responses": { - "200": { - "description": "", - "content": { - "application/json": { - "schema": { - "type": "array", - "items": { - "$ref": "#/components/schemas/SpatialFeatureBcgwResponse" - } - } - } - } + } + } } - }, - "tags": [ - "spatial-feature" - ] - } - } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/InteractionResponse" + } + } + } + } + }, + "tags": [ + "interaction" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "InteractionController_remove", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "interaction" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project/publicSummary": { + "get": { + "operationId": "ProjectController_findPublicSummary", + "parameters": [ + { + "name": "projectId", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "includeCommentOpen", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "includePostCommentOpen", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "forestClientName", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "openedOnOrAfter", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectPublicSummaryResponse" + } + } + } + } + } + }, + "tags": [ + "project" + ] + } + }, + "/api/project/{id}": { + "get": { + "operationId": "ProjectController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "put": { + "operationId": "ProjectController_update", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "ProjectController_remove", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project/metrics/{id}": { + "get": { + "operationId": "ProjectController_findProjectMetrics", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectMetricsResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project": { + "get": { + "operationId": "ProjectController_find", + "parameters": [ + { + "name": "projectId", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "fspId", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "districtId", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "workflowStateCode", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + }, + { + "name": "forestClientName", + "required": false, + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "post": { + "operationId": "ProjectController_create", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectCreateRequest" + } + } + } + }, + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project/workflowState/{id}": { + "put": { + "operationId": "ProjectController_stateChange", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectWorkflowStateChangeRequest" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project/commentClassification/{id}": { + "put": { + "operationId": "ProjectController_commentClassificationMandatoryChange", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectCommentClassificationMandatoryChangeRequest" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectResponse" + } + } + } + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/project/commentingClosedDate/{id}": { + "put": { + "operationId": "ProjectController_commentingClosedDateChange", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ProjectCommentingClosedDateChangeRequest" + } + } + } + }, + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "project" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/public-notice": { + "get": { + "operationId": "PublicNoticeController_findListForPublicFrontEnd", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PublicNoticePublicFrontEndResponse" + } + } + } + } + } + }, + "tags": [ + "public-notice" + ] + }, + "post": { + "operationId": "PublicNoticeController_create", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeCreateRequest" + } + } + } + }, + "responses": { + "201": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeResponse" + } + } + } + } + }, + "tags": [ + "public-notice" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/public-notice/latest/{forestClientId}": { + "get": { + "operationId": "PublicNoticeController_findLatestPublicNotice", + "parameters": [ + { + "name": "forestClientId", + "required": true, + "in": "path", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeResponse" + } + } + } + } + }, + "tags": [ + "public-notice" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/public-notice/{id}": { + "get": { + "operationId": "PublicNoticeController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeResponse" + } + } + } + } + }, + "tags": [ + "public-notice" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "put": { + "operationId": "PublicNoticeController_update", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicNoticeResponse" + } + } + } + } + }, + "tags": [ + "public-notice" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "delete": { + "operationId": "PublicNoticeController_remove", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "public-notice" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/workflow-state-code": { + "get": { + "operationId": "WorkflowStateCodeController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/WorkflowStateCode" + } + } + } + } + } + }, + "tags": [ + "project" + ] + } + }, + "/api/district": { + "get": { + "operationId": "DistrictController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/DistrictResponse" + } + } + } + } + } + }, + "tags": [ + "district" + ] + } + }, + "/api/district/{id}": { + "get": { + "operationId": "DistrictController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/DistrictResponse" + } + } + } + } + }, + "tags": [ + "district" + ] + } + }, + "/api/forest-client": { + "get": { + "operationId": "ForestClientController_find", + "parameters": [], + "responses": { + "200": { + "description": "Returns only forest clients that the user is authorized for.", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ForestClientResponse" + } + } + } + } + } + }, + "tags": [ + "forest-client" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/forest-client/{id}": { + "get": { + "operationId": "ForestClientController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/ForestClientResponse" + } + } + } + } + }, + "tags": [ + "forest-client" + ] + } + }, + "/api/public-comment": { + "post": { + "operationId": "PublicCommentController_create", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicCommentCreateRequest" + } + } + } + }, + "responses": { + "201": { + "description": "" + } + }, + "tags": [ + "public-comment" + ] + }, + "get": { + "operationId": "PublicCommentController_find", + "parameters": [ + { + "name": "projectId", + "required": true, + "in": "query", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PublicCommentAdminResponse" + } + } + } + } + } + }, + "tags": [ + "public-comment" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/public-comment/{id}": { + "put": { + "operationId": "PublicCommentController_update", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicCommentAdminUpdateRequest" + } + } + } + }, + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicCommentAdminResponse" + } + } + } + } + }, + "tags": [ + "public-comment" + ], + "security": [ + { + "bearer": [] + } + ] + }, + "get": { + "operationId": "PublicCommentController_findOne", + "parameters": [ + { + "name": "id", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/PublicCommentAdminResponse" + } + } + } + } + }, + "tags": [ + "public-comment" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/comment-scope-code": { + "get": { + "operationId": "CommentScopeCodeController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/CommentScopeCode" + } + } + } + } + } + }, + "tags": [ + "public-comment" + ] + } + }, + "/api/response-code": { + "get": { + "operationId": "ResponseCodeController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ResponseCode" + } + } + } + } + } + }, + "tags": [ + "public-comment" + ] + } + }, + "/api/submission": { + "post": { + "operationId": "SubmissionController_processSpatialSubmission", + "parameters": [], + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SubmissionRequest" + } + } + } + }, + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "submission" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/submission/detail/{projectId}": { + "get": { + "operationId": "SubmissionController_findSubmissionDetailForCurrentSubmissionType", + "parameters": [ + { + "name": "projectId", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "$ref": "#/components/schemas/SubmissionDetailResponse" + } + } + } + } + }, + "tags": [ + "submission" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/submission/{submissionId}": { + "delete": { + "operationId": "SubmissionController_removeSpatialSubmissionByType", + "parameters": [ + { + "name": "submissionId", + "required": true, + "in": "path", + "schema": { + "type": "number" + } + }, + { + "name": "spatialObjectCode", + "required": true, + "in": "query", + "schema": { + "enum": [ + "CUT_BLOCK", + "ROAD_SECTION", + "WTRA" + ], + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "" + } + }, + "tags": [ + "submission" + ], + "security": [ + { + "bearer": [] + } + ] + } + }, + "/api/submission-type-code": { + "get": { + "operationId": "SubmissionTypeCodeController_findAll", + "parameters": [], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SubmissionTypeCode" + } + } + } + } + } + }, + "tags": [ + "submission" + ] + } + }, + "/api/spatial-feature": { + "get": { + "operationId": "SpatialFeatureController_getForProject", + "parameters": [ + { + "name": "projectId", + "required": true, + "in": "query", + "schema": { + "type": "number" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpatialFeaturePublicResponse" + } + } + } + } + } + }, + "tags": [ + "spatial-feature" + ] + } + }, + "/api/spatial-feature/bcgw-extract": { + "get": { + "operationId": "SpatialFeatureController_getBcgwExtract", + "parameters": [ + { + "name": "version", + "required": true, + "in": "query", + "schema": { + "type": "string" + } + } + ], + "responses": { + "200": { + "description": "", + "content": { + "application/json": { + "schema": { + "type": "array", + "items": { + "$ref": "#/components/schemas/SpatialFeatureBcgwResponse" + } + } + } + } + } + }, + "tags": [ + "spatial-feature" + ] + } + } }, "info": { - "title": "FOM API", - "description": "API for FOM backend", - "version": "1.0", - "contact": {} + "title": "FOM API", + "description": "API for FOM backend", + "version": "1.0", + "contact": { + + } }, "tags": [], "servers": [], "components": { - "securitySchemes": { - "bearer": { - "scheme": "bearer", - "bearerFormat": "JWT", - "type": "http" - } - }, - "schemas": { - "AwsCognitoOauthConfig": { - "type": "object", - "properties": { - "domain": { - "type": "string" - }, - "scope": { - "type": "array", - "items": { - "type": "string" - } - }, - "redirectSignIn": { - "type": "string" - }, - "redirectSignOut": { - "type": "string" - }, - "responseType": { - "type": "string" - } - }, - "required": [ - "domain", - "scope", - "redirectSignIn", - "redirectSignOut", - "responseType" - ] - }, - "AwsCognitoConfig": { - "type": "object", - "properties": { - "enabled": { - "type": "boolean" - }, - "aws_cognito_domain": { - "type": "string" - }, - "aws_cognito_region": { - "type": "string" - }, - "aws_user_pools_id": { - "type": "string" - }, - "aws_user_pools_web_client_id": { - "type": "string" - }, - "aws_mandatory_sign_in": { - "type": "string" - }, - "oauth": { - "$ref": "#/components/schemas/AwsCognitoOauthConfig" - }, - "federationTarget": { - "type": "string" - } - }, - "required": [ - "enabled", - "aws_cognito_domain", - "aws_cognito_region", - "aws_user_pools_id", - "aws_user_pools_web_client_id", - "aws_mandatory_sign_in", - "oauth", - "federationTarget" - ] - }, - "AttachmentTypeCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "AttachmentResponse": { - "type": "object", - "properties": { - "id": { - "type": "number" - }, - "projectId": { - "type": "number" - }, - "fileName": { - "type": "string" - }, - "attachmentType": { - "$ref": "#/components/schemas/AttachmentTypeCode" - }, - "createTimestamp": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "id", - "projectId", - "fileName", - "attachmentType", - "createTimestamp" - ] - }, - "InteractionResponse": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "stakeholder": { - "type": "string" - }, - "communicationDate": { - "type": "string" - }, - "communicationDetails": { - "type": "string" - }, - "attachmentId": { - "type": "number" - }, - "id": { - "type": "number" - }, - "revisionCount": { - "type": "number" - }, - "createTimestamp": { - "type": "string", - "description": "ISO-formatted timestamp" - } - }, - "required": [ - "projectId", - "communicationDate", - "communicationDetails", - "id", - "revisionCount", - "createTimestamp" - ] - }, - "ProjectPublicSummaryResponse": { - "type": "object", - "properties": { - "id": { - "type": "number" - }, - "name": { - "type": "string" - }, - "geojson": { - "type": "object", - "example": " { \"type\": \"Point\", \"coordinates\": [-119.396071939, 49.813816629]}" - }, - "fspId": { - "type": "number" - }, - "forestClientName": { - "type": "string" - }, - "workflowStateName": { - "type": "string" - } - }, - "required": [ - "id", - "name", - "geojson", - "fspId", - "forestClientName", - "workflowStateName" - ] - }, - "DistrictResponse": { - "type": "object", - "properties": { - "id": { - "type": "number" - }, - "name": { - "type": "string" - } - }, - "required": [ - "id", - "name" - ] - }, - "ForestClientResponse": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - } - }, - "required": [ - "id", - "name" - ] - }, - "WorkflowStateCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "ProjectResponse": { - "type": "object", - "properties": { - "id": { - "type": "number" - }, - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "commentingOpenDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "commentingClosedDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "validityEndDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "fspId": { - "type": "number" - }, - "district": { - "$ref": "#/components/schemas/DistrictResponse" - }, - "forestClient": { - "$ref": "#/components/schemas/ForestClientResponse" - }, - "workflowState": { - "$ref": "#/components/schemas/WorkflowStateCode" - }, - "revisionCount": { - "type": "number" - }, - "createTimestamp": { - "type": "string", - "description": "ISO-formatted timestamp" - }, - "commentClassificationMandatory": { - "type": "boolean", - "default": true - }, - "publicNoticeId": { - "type": "number" - }, - "noticePostDate": { - "type": "string" - }, - "operationStartYear": { - "type": "number" - }, - "operationEndYear": { - "type": "number" - }, - "bctsMgrName": { - "type": "string" - } - }, - "required": [ - "id", - "name", - "description", - "commentingOpenDate", - "commentingClosedDate", - "validityEndDate", - "fspId", - "district", - "forestClient", - "workflowState", - "revisionCount", - "createTimestamp", - "commentClassificationMandatory", - "publicNoticeId", - "noticePostDate", - "operationStartYear", - "operationEndYear", - "bctsMgrName" - ] - }, - "ProjectMetricsResponse": { - "type": "object", - "properties": { - "id": { - "type": "number" - }, - "totalInteractionsCount": { - "type": "number" - }, - "totalCommentsCount": { - "type": "number" - }, - "respondedToCommentsCount": { - "type": "number" - } - }, - "required": [ - "id", - "totalInteractionsCount", - "totalCommentsCount", - "respondedToCommentsCount" - ] - }, - "ProjectCreateRequest": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "commentingOpenDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "commentingClosedDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "forestClientNumber": { - "type": "string" - }, - "fspId": { - "type": "number" - }, - "districtId": { - "type": "number" - }, - "operationStartYear": { - "type": "number" - }, - "operationEndYear": { - "type": "number" - }, - "bctsMgrName": { - "type": "string" - } - }, - "required": [ - "name", - "description", - "commentingOpenDate", - "commentingClosedDate", - "forestClientNumber", - "fspId", - "districtId", - "operationStartYear", - "operationEndYear", - "bctsMgrName" - ] - }, - "ProjectUpdateRequest": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "description": { - "type": "string" - }, - "commentingOpenDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "commentingClosedDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "fspId": { - "type": "number" - }, - "districtId": { - "type": "number" - }, - "operationStartYear": { - "type": "number" - }, - "operationEndYear": { - "type": "number" - }, - "bctsMgrName": { - "type": "string" - }, - "revisionCount": { - "type": "number" - } - }, - "required": [ - "revisionCount" - ] - }, - "WorkflowStateEnum": { - "type": "string", - "enum": [ - "INITIAL", - "PUBLISHED", - "COMMENT_OPEN", - "COMMENT_CLOSED", - "FINALIZED", - "EXPIRED" - ] - }, - "ProjectWorkflowStateChangeRequest": { - "type": "object", - "properties": { - "revisionCount": { - "type": "number" - }, - "workflowStateCode": { - "$ref": "#/components/schemas/WorkflowStateEnum" - } - }, - "required": [ - "revisionCount", - "workflowStateCode" - ] - }, - "ProjectCommentClassificationMandatoryChangeRequest": { - "type": "object", - "properties": { - "commentClassificationMandatory": { - "type": "boolean" - }, - "revisionCount": { - "type": "number" - } - }, - "required": [ - "commentClassificationMandatory", - "revisionCount" - ] - }, - "ProjectCommentingClosedDateChangeRequest": { - "type": "object", - "properties": { - "commentingClosedDate": { - "type": "string", - "description": "ISO-formatted date" - }, - "revisionCount": { - "type": "number" - } - }, - "required": [ - "commentingClosedDate", - "revisionCount" - ] - }, - "PublicNoticePublicFrontEndResponse": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "reviewAddress": { - "type": "string" - }, - "reviewBusinessHours": { - "type": "string" - }, - "receiveCommentsAddress": { - "type": "string" - }, - "receiveCommentsBusinessHours": { - "type": "string" - }, - "isReceiveCommentsSameAsReview": { - "type": "boolean" - }, - "mailingAddress": { - "type": "string" - }, - "email": { - "type": "string" - }, - "postDate": { - "type": "string", - "description": "Date planed for online public notice posted." - }, - "project": { - "$ref": "#/components/schemas/ProjectResponse" - } - }, - "required": [ - "projectId", - "reviewAddress", - "reviewBusinessHours", - "receiveCommentsAddress", - "receiveCommentsBusinessHours", - "isReceiveCommentsSameAsReview", - "mailingAddress", - "email", - "postDate", - "project" - ] - }, - "PublicNoticeResponse": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "reviewAddress": { - "type": "string" - }, - "reviewBusinessHours": { - "type": "string" - }, - "receiveCommentsAddress": { - "type": "string" - }, - "receiveCommentsBusinessHours": { - "type": "string" - }, - "isReceiveCommentsSameAsReview": { - "type": "boolean" - }, - "mailingAddress": { - "type": "string" - }, - "email": { - "type": "string" - }, - "postDate": { - "type": "string", - "description": "Date planed for online public notice posted." - }, - "revisionCount": { - "type": "number" - }, - "id": { - "type": "number" - } - }, - "required": [ - "projectId", - "reviewAddress", - "reviewBusinessHours", - "receiveCommentsAddress", - "receiveCommentsBusinessHours", - "isReceiveCommentsSameAsReview", - "mailingAddress", - "email", - "postDate", - "revisionCount", - "id" - ] - }, - "PublicNoticeCreateRequest": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "reviewAddress": { - "type": "string" - }, - "reviewBusinessHours": { - "type": "string" - }, - "receiveCommentsAddress": { - "type": "string" - }, - "receiveCommentsBusinessHours": { - "type": "string" - }, - "isReceiveCommentsSameAsReview": { - "type": "boolean" - }, - "mailingAddress": { - "type": "string" - }, - "email": { - "type": "string" - }, - "postDate": { - "type": "string", - "description": "Date planed for online public notice posted." - } - }, - "required": [ - "projectId", - "reviewAddress", - "reviewBusinessHours", - "receiveCommentsAddress", - "receiveCommentsBusinessHours", - "isReceiveCommentsSameAsReview", - "mailingAddress", - "email", - "postDate" - ] - }, - "PublicNoticeUpdateRequest": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "reviewAddress": { - "type": "string" - }, - "reviewBusinessHours": { - "type": "string" - }, - "receiveCommentsAddress": { - "type": "string" - }, - "receiveCommentsBusinessHours": { - "type": "string" - }, - "isReceiveCommentsSameAsReview": { - "type": "boolean" - }, - "mailingAddress": { - "type": "string" - }, - "email": { - "type": "string" - }, - "postDate": { - "type": "string", - "description": "Date planed for online public notice posted." - }, - "revisionCount": { - "type": "number" - } - }, - "required": [ - "projectId", - "reviewAddress", - "reviewBusinessHours", - "receiveCommentsAddress", - "receiveCommentsBusinessHours", - "isReceiveCommentsSameAsReview", - "mailingAddress", - "email", - "postDate", - "revisionCount" - ] - }, - "PublicCommentCreateRequest": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "commentScopeCode": { - "type": "string" - }, - "scopeCutBlockId": { - "type": "number" - }, - "scopeRoadSectionId": { - "type": "number" - }, - "feedback": { - "type": "string" - }, - "name": { - "type": "string" - }, - "location": { - "type": "string" - }, - "email": { - "type": "string" - }, - "phoneNumber": { - "type": "string" - } - }, - "required": [ - "projectId", - "commentScopeCode", - "scopeCutBlockId", - "scopeRoadSectionId", - "feedback", - "name", - "location", - "email", - "phoneNumber" - ] - }, - "ResponseCodeEnum": { - "type": "string", - "enum": [ - "IRRELEVANT", - "CONSIDERED", - "ADDRESSED" - ] - }, - "PublicCommentAdminUpdateRequest": { - "type": "object", - "properties": { - "revisionCount": { - "type": "number" - }, - "responseCode": { - "$ref": "#/components/schemas/ResponseCodeEnum" - }, - "responseDetails": { - "type": "string" - } - }, - "required": [ - "revisionCount", - "responseCode", - "responseDetails" - ] - }, - "CommentScopeCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "ResponseCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "PublicCommentAdminResponse": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "scopeCutBlockId": { - "type": "number" - }, - "scopeRoadSectionId": { - "type": "number" - }, - "feedback": { - "type": "string" - }, - "name": { - "type": "string" - }, - "location": { - "type": "string" - }, - "email": { - "type": "string" - }, - "phoneNumber": { - "type": "string" - }, - "id": { - "type": "number" - }, - "revisionCount": { - "type": "number" - }, - "createTimestamp": { - "type": "string", - "description": "ISO-formatted timestamp" - }, - "commentScope": { - "$ref": "#/components/schemas/CommentScopeCode" - }, - "response": { - "$ref": "#/components/schemas/ResponseCode" - }, - "responseDetails": { - "type": "string" - }, - "scopeFeatureName": { - "type": "string" - } - }, - "required": [ - "projectId", - "scopeCutBlockId", - "scopeRoadSectionId", - "feedback", - "name", - "location", - "email", - "phoneNumber", - "id", - "revisionCount", - "createTimestamp", - "commentScope", - "response", - "responseDetails", - "scopeFeatureName" - ] - }, - "SubmissionTypeCodeEnum": { - "type": "string", - "enum": [ - "PROPOSED", - "FINAL" - ] - }, - "SpatialObjectCodeEnum": { - "type": "string", - "enum": [ - "CUT_BLOCK", - "ROAD_SECTION", - "WTRA" - ] - }, - "SubmissionRequest": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "submissionTypeCode": { - "$ref": "#/components/schemas/SubmissionTypeCodeEnum" - }, - "spatialObjectCode": { - "$ref": "#/components/schemas/SpatialObjectCodeEnum" - }, - "jsonSpatialSubmission": { - "type": "object" - } - }, - "required": [ - "projectId", - "submissionTypeCode", - "spatialObjectCode", - "jsonSpatialSubmission" - ] - }, - "SubmissionSpatialObjectDetail": { - "type": "object", - "properties": { - "count": { - "type": "number" - }, - "dateSubmitted": { - "format": "date-time", - "type": "string" - } - }, - "required": [ - "count", - "dateSubmitted" - ] - }, - "SubmissionDetailResponse": { - "type": "object", - "properties": { - "projectId": { - "type": "number" - }, - "submissionId": { - "type": "number" - }, - "submissionTypeCode": { - "example": "PROPOSED", - "default": "PROPOSED", - "$ref": "#/components/schemas/SubmissionTypeCodeEnum" - }, - "cutblocks": { - "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" - }, - "roadSections": { - "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" - }, - "retentionAreas": { - "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" - } - }, - "required": [ - "projectId", - "submissionId", - "submissionTypeCode", - "cutblocks", - "roadSections", - "retentionAreas" - ] - }, - "SubmissionTypeCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "FeatureTypeCode": { - "type": "object", - "properties": { - "code": { - "type": "string" - }, - "description": { - "type": "string" - } - }, - "required": [ - "code", - "description" - ] - }, - "SpatialFeaturePublicResponse": { - "type": "object", - "properties": { - "featureType": { - "$ref": "#/components/schemas/FeatureTypeCode" - }, - "featureId": { - "type": "number" - }, - "name": { - "type": "string" - }, - "geometry": { - "type": "object", - "description": "Format: GeoJSON Geometry object" - }, - "centroid": { - "type": "object", - "description": "Format: GeoJSON Point" - }, - "plannedDevelopmentDate": { - "type": "string", - "description": "Format: YYYY-MM-DD" - }, - "plannedAreaHa": { - "type": "number" - }, - "plannedLengthKm": { - "type": "number" - }, - "submissionType": { - "$ref": "#/components/schemas/SubmissionTypeCode" - } - }, - "required": [ - "featureType", - "featureId", - "name", - "geometry", - "centroid", - "plannedDevelopmentDate", - "plannedAreaHa", - "plannedLengthKm", - "submissionType" - ] - }, - "SpatialFeatureBcgwResponse": { - "type": "object", - "properties": { - "fomId": { - "type": "number" - }, - "featureType": { - "type": "string", - "enum": [ - "cut_block", - "road_section", - "retention_area" - ] - }, - "featureId": { - "type": "number" - }, - "fspHolderName": { - "type": "string", - "description": "Maximum length is expected to be <= 100" - }, - "lifecycleStatus": { - "type": "string", - "enum": [ - "Proposed", - "Final" - ] - }, - "createDate": { - "type": "string", - "description": "Format: YYYY-MM-DD", - "example": "2021-03-31" - }, - "geometry": { - "type": "object", - "description": "Format: GeoJSON Geometry as per RFC 7946 https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.", - "example": "Cut Block / Retention Area Example: {\"type\":\"Polygon\",\"coordinates\":[[[-121.652853481,51.67951884],[-121.499131212,51.763467947],[-121.363845891,51.668139701],[-121.373301212,51.578595415],[-121.661722435,51.589952346],[-121.652853481,51.67951884]]]} Road Section Example: {\"type\":\"LineString\",\"coordinates\":[[-124.667049923,52.651503193],[-124.739768473,52.697146151],[-124.816364174,52.60827305]]}" - }, - "plannedDevelopmentDate": { - "type": "string", - "description": "Format: YYYY-MM-DD", - "example": "2021-03-31" - }, - "plannedAreaHa": { - "type": "number", - "example": "1.2345" - }, - "plannedLengthKm": { - "type": "number", - "example": "1.2345" - } - }, - "required": [ - "fomId", - "featureType", - "featureId", - "fspHolderName", - "lifecycleStatus", - "createDate", - "geometry", - "plannedDevelopmentDate", - "plannedAreaHa", - "plannedLengthKm" - ] - } - } + "securitySchemes": { + "bearer": { + "scheme": "bearer", + "bearerFormat": "JWT", + "type": "http" + } + }, + "schemas": { + "AwsCognitoOauthConfig": { + "type": "object", + "properties": { + "domain": { + "type": "string" + }, + "scope": { + "type": "array", + "items": { + "type": "string" + } + }, + "redirectSignIn": { + "type": "string" + }, + "redirectSignOut": { + "type": "string" + }, + "responseType": { + "type": "string" + } + }, + "required": [ + "domain", + "scope", + "redirectSignIn", + "redirectSignOut", + "responseType" + ] + }, + "AwsCognitoConfig": { + "type": "object", + "properties": { + "enabled": { + "type": "boolean" + }, + "aws_cognito_domain": { + "type": "string" + }, + "aws_cognito_region": { + "type": "string" + }, + "aws_user_pools_id": { + "type": "string" + }, + "aws_user_pools_web_client_id": { + "type": "string" + }, + "aws_mandatory_sign_in": { + "type": "string" + }, + "oauth": { + "$ref": "#/components/schemas/AwsCognitoOauthConfig" + }, + "federationTarget": { + "type": "string" + } + }, + "required": [ + "enabled", + "aws_cognito_domain", + "aws_cognito_region", + "aws_user_pools_id", + "aws_user_pools_web_client_id", + "aws_mandatory_sign_in", + "oauth", + "federationTarget" + ] + }, + "AttachmentTypeCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "AttachmentResponse": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "projectId": { + "type": "number" + }, + "fileName": { + "type": "string" + }, + "attachmentType": { + "$ref": "#/components/schemas/AttachmentTypeCode" + }, + "createTimestamp": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "id", + "projectId", + "fileName", + "attachmentType", + "createTimestamp" + ] + }, + "InteractionResponse": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "stakeholder": { + "type": "string" + }, + "communicationDate": { + "type": "string" + }, + "communicationDetails": { + "type": "string" + }, + "attachmentId": { + "type": "number" + }, + "id": { + "type": "number" + }, + "revisionCount": { + "type": "number" + }, + "createTimestamp": { + "type": "string", + "description": "ISO-formatted timestamp" + } + }, + "required": [ + "projectId", + "communicationDate", + "communicationDetails", + "id", + "revisionCount", + "createTimestamp" + ] + }, + "ProjectPublicSummaryResponse": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "name": { + "type": "string" + }, + "geojson": { + "type": "object", + "example": " { \"type\": \"Point\", \"coordinates\": [-119.396071939, 49.813816629]}" + }, + "fspId": { + "type": "number" + }, + "forestClientName": { + "type": "string" + }, + "workflowStateName": { + "type": "string" + } + }, + "required": [ + "id", + "name", + "geojson", + "fspId", + "forestClientName", + "workflowStateName" + ] + }, + "DistrictResponse": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "name" + ] + }, + "ForestClientResponse": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + } + }, + "required": [ + "id", + "name" + ] + }, + "WorkflowStateCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "ProjectResponse": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "commentingOpenDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "commentingClosedDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "validityEndDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "fspId": { + "type": "number" + }, + "district": { + "$ref": "#/components/schemas/DistrictResponse" + }, + "forestClient": { + "$ref": "#/components/schemas/ForestClientResponse" + }, + "workflowState": { + "$ref": "#/components/schemas/WorkflowStateCode" + }, + "revisionCount": { + "type": "number" + }, + "createTimestamp": { + "type": "string", + "description": "ISO-formatted timestamp" + }, + "commentClassificationMandatory": { + "type": "boolean", + "default": true + }, + "publicNoticeId": { + "type": "number" + }, + "noticePostDate": { + "type": "string" + }, + "operationStartYear": { + "type": "number" + }, + "operationEndYear": { + "type": "number" + }, + "bctsMgrName": { + "type": "string" + } + }, + "required": [ + "id", + "name", + "description", + "commentingOpenDate", + "commentingClosedDate", + "validityEndDate", + "fspId", + "district", + "forestClient", + "workflowState", + "revisionCount", + "createTimestamp", + "commentClassificationMandatory", + "publicNoticeId", + "noticePostDate", + "operationStartYear", + "operationEndYear", + "bctsMgrName" + ] + }, + "ProjectMetricsResponse": { + "type": "object", + "properties": { + "id": { + "type": "number" + }, + "totalInteractionsCount": { + "type": "number" + }, + "totalCommentsCount": { + "type": "number" + }, + "respondedToCommentsCount": { + "type": "number" + } + }, + "required": [ + "id", + "totalInteractionsCount", + "totalCommentsCount", + "respondedToCommentsCount" + ] + }, + "ProjectCreateRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "commentingOpenDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "commentingClosedDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "forestClientNumber": { + "type": "string" + }, + "fspId": { + "type": "number" + }, + "districtId": { + "type": "number" + }, + "operationStartYear": { + "type": "number" + }, + "operationEndYear": { + "type": "number" + }, + "bctsMgrName": { + "type": "string" + } + }, + "required": [ + "name", + "description", + "commentingOpenDate", + "commentingClosedDate", + "forestClientNumber", + "fspId", + "districtId", + "operationStartYear", + "operationEndYear", + "bctsMgrName" + ] + }, + "ProjectUpdateRequest": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "description": { + "type": "string" + }, + "commentingOpenDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "commentingClosedDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "fspId": { + "type": "number" + }, + "districtId": { + "type": "number" + }, + "operationStartYear": { + "type": "number" + }, + "operationEndYear": { + "type": "number" + }, + "bctsMgrName": { + "type": "string" + }, + "revisionCount": { + "type": "number" + } + }, + "required": [ + "revisionCount" + ] + }, + "WorkflowStateEnum": { + "type": "string", + "enum": [ + "INITIAL", + "PUBLISHED", + "COMMENT_OPEN", + "COMMENT_CLOSED", + "FINALIZED", + "EXPIRED" + ] + }, + "ProjectWorkflowStateChangeRequest": { + "type": "object", + "properties": { + "revisionCount": { + "type": "number" + }, + "workflowStateCode": { + "$ref": "#/components/schemas/WorkflowStateEnum" + } + }, + "required": [ + "revisionCount", + "workflowStateCode" + ] + }, + "ProjectCommentClassificationMandatoryChangeRequest": { + "type": "object", + "properties": { + "commentClassificationMandatory": { + "type": "boolean" + }, + "revisionCount": { + "type": "number" + } + }, + "required": [ + "commentClassificationMandatory", + "revisionCount" + ] + }, + "ProjectCommentingClosedDateChangeRequest": { + "type": "object", + "properties": { + "commentingClosedDate": { + "type": "string", + "description": "ISO-formatted date" + }, + "revisionCount": { + "type": "number" + } + }, + "required": [ + "commentingClosedDate", + "revisionCount" + ] + }, + "PublicNoticePublicFrontEndResponse": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "reviewAddress": { + "type": "string" + }, + "reviewBusinessHours": { + "type": "string" + }, + "receiveCommentsAddress": { + "type": "string" + }, + "receiveCommentsBusinessHours": { + "type": "string" + }, + "isReceiveCommentsSameAsReview": { + "type": "boolean" + }, + "mailingAddress": { + "type": "string" + }, + "email": { + "type": "string" + }, + "postDate": { + "type": "string", + "description": "Date planed for online public notice posted." + }, + "project": { + "$ref": "#/components/schemas/ProjectResponse" + } + }, + "required": [ + "projectId", + "reviewAddress", + "reviewBusinessHours", + "receiveCommentsAddress", + "receiveCommentsBusinessHours", + "isReceiveCommentsSameAsReview", + "mailingAddress", + "email", + "postDate", + "project" + ] + }, + "PublicNoticeResponse": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "reviewAddress": { + "type": "string" + }, + "reviewBusinessHours": { + "type": "string" + }, + "receiveCommentsAddress": { + "type": "string" + }, + "receiveCommentsBusinessHours": { + "type": "string" + }, + "isReceiveCommentsSameAsReview": { + "type": "boolean" + }, + "mailingAddress": { + "type": "string" + }, + "email": { + "type": "string" + }, + "postDate": { + "type": "string", + "description": "Date planed for online public notice posted." + }, + "revisionCount": { + "type": "number" + }, + "id": { + "type": "number" + } + }, + "required": [ + "projectId", + "reviewAddress", + "reviewBusinessHours", + "receiveCommentsAddress", + "receiveCommentsBusinessHours", + "isReceiveCommentsSameAsReview", + "mailingAddress", + "email", + "postDate", + "revisionCount", + "id" + ] + }, + "PublicNoticeCreateRequest": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "reviewAddress": { + "type": "string" + }, + "reviewBusinessHours": { + "type": "string" + }, + "receiveCommentsAddress": { + "type": "string" + }, + "receiveCommentsBusinessHours": { + "type": "string" + }, + "isReceiveCommentsSameAsReview": { + "type": "boolean" + }, + "mailingAddress": { + "type": "string" + }, + "email": { + "type": "string" + }, + "postDate": { + "type": "string", + "description": "Date planed for online public notice posted." + } + }, + "required": [ + "projectId", + "reviewAddress", + "reviewBusinessHours", + "receiveCommentsAddress", + "receiveCommentsBusinessHours", + "isReceiveCommentsSameAsReview", + "mailingAddress", + "email", + "postDate" + ] + }, + "PublicNoticeUpdateRequest": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "reviewAddress": { + "type": "string" + }, + "reviewBusinessHours": { + "type": "string" + }, + "receiveCommentsAddress": { + "type": "string" + }, + "receiveCommentsBusinessHours": { + "type": "string" + }, + "isReceiveCommentsSameAsReview": { + "type": "boolean" + }, + "mailingAddress": { + "type": "string" + }, + "email": { + "type": "string" + }, + "postDate": { + "type": "string", + "description": "Date planed for online public notice posted." + }, + "revisionCount": { + "type": "number" + } + }, + "required": [ + "projectId", + "reviewAddress", + "reviewBusinessHours", + "receiveCommentsAddress", + "receiveCommentsBusinessHours", + "isReceiveCommentsSameAsReview", + "mailingAddress", + "email", + "postDate", + "revisionCount" + ] + }, + "PublicCommentCreateRequest": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "commentScopeCode": { + "type": "string" + }, + "scopeCutBlockId": { + "type": "number" + }, + "scopeRoadSectionId": { + "type": "number" + }, + "feedback": { + "type": "string" + }, + "name": { + "type": "string" + }, + "location": { + "type": "string" + }, + "email": { + "type": "string" + }, + "phoneNumber": { + "type": "string" + } + }, + "required": [ + "projectId", + "commentScopeCode", + "scopeCutBlockId", + "scopeRoadSectionId", + "feedback", + "name", + "location", + "email", + "phoneNumber" + ] + }, + "ResponseCodeEnum": { + "type": "string", + "enum": [ + "IRRELEVANT", + "CONSIDERED", + "ADDRESSED" + ] + }, + "PublicCommentAdminUpdateRequest": { + "type": "object", + "properties": { + "revisionCount": { + "type": "number" + }, + "responseCode": { + "$ref": "#/components/schemas/ResponseCodeEnum" + }, + "responseDetails": { + "type": "string" + } + }, + "required": [ + "revisionCount", + "responseCode", + "responseDetails" + ] + }, + "CommentScopeCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "ResponseCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "PublicCommentAdminResponse": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "scopeCutBlockId": { + "type": "number" + }, + "scopeRoadSectionId": { + "type": "number" + }, + "feedback": { + "type": "string" + }, + "name": { + "type": "string" + }, + "location": { + "type": "string" + }, + "email": { + "type": "string" + }, + "phoneNumber": { + "type": "string" + }, + "id": { + "type": "number" + }, + "revisionCount": { + "type": "number" + }, + "createTimestamp": { + "type": "string", + "description": "ISO-formatted timestamp" + }, + "commentScope": { + "$ref": "#/components/schemas/CommentScopeCode" + }, + "response": { + "$ref": "#/components/schemas/ResponseCode" + }, + "responseDetails": { + "type": "string" + }, + "scopeFeatureName": { + "type": "string" + } + }, + "required": [ + "projectId", + "scopeCutBlockId", + "scopeRoadSectionId", + "feedback", + "name", + "location", + "email", + "phoneNumber", + "id", + "revisionCount", + "createTimestamp", + "commentScope", + "response", + "responseDetails", + "scopeFeatureName" + ] + }, + "SubmissionTypeCodeEnum": { + "type": "string", + "enum": [ + "PROPOSED", + "FINAL" + ] + }, + "SpatialObjectCodeEnum": { + "type": "string", + "enum": [ + "CUT_BLOCK", + "ROAD_SECTION", + "WTRA" + ] + }, + "SubmissionRequest": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "submissionTypeCode": { + "$ref": "#/components/schemas/SubmissionTypeCodeEnum" + }, + "spatialObjectCode": { + "$ref": "#/components/schemas/SpatialObjectCodeEnum" + }, + "jsonSpatialSubmission": { + "type": "object" + } + }, + "required": [ + "projectId", + "submissionTypeCode", + "spatialObjectCode", + "jsonSpatialSubmission" + ] + }, + "SubmissionSpatialObjectDetail": { + "type": "object", + "properties": { + "count": { + "type": "number" + }, + "dateSubmitted": { + "format": "date-time", + "type": "string" + } + }, + "required": [ + "count", + "dateSubmitted" + ] + }, + "SubmissionDetailResponse": { + "type": "object", + "properties": { + "projectId": { + "type": "number" + }, + "submissionId": { + "type": "number" + }, + "submissionTypeCode": { + "example": "PROPOSED", + "default": "PROPOSED", + "$ref": "#/components/schemas/SubmissionTypeCodeEnum" + }, + "cutblocks": { + "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" + }, + "roadSections": { + "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" + }, + "retentionAreas": { + "$ref": "#/components/schemas/SubmissionSpatialObjectDetail" + } + }, + "required": [ + "projectId", + "submissionId", + "submissionTypeCode", + "cutblocks", + "roadSections", + "retentionAreas" + ] + }, + "SubmissionTypeCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "FeatureTypeCode": { + "type": "object", + "properties": { + "code": { + "type": "string" + }, + "description": { + "type": "string" + } + }, + "required": [ + "code", + "description" + ] + }, + "SpatialFeaturePublicResponse": { + "type": "object", + "properties": { + "featureType": { + "$ref": "#/components/schemas/FeatureTypeCode" + }, + "featureId": { + "type": "number" + }, + "name": { + "type": "string" + }, + "geometry": { + "type": "object", + "description": "Format: GeoJSON Geometry object" + }, + "centroid": { + "type": "object", + "description": "Format: GeoJSON Point" + }, + "plannedDevelopmentDate": { + "type": "string", + "description": "Format: YYYY-MM-DD" + }, + "plannedAreaHa": { + "type": "number" + }, + "plannedLengthKm": { + "type": "number" + }, + "submissionType": { + "$ref": "#/components/schemas/SubmissionTypeCode" + } + }, + "required": [ + "featureType", + "featureId", + "name", + "geometry", + "centroid", + "plannedDevelopmentDate", + "plannedAreaHa", + "plannedLengthKm", + "submissionType" + ] + }, + "SpatialFeatureBcgwResponse": { + "type": "object", + "properties": { + "fomId": { + "type": "number" + }, + "featureType": { + "type": "string", + "enum": [ + "cut_block", + "road_section", + "retention_area" + ] + }, + "featureId": { + "type": "number" + }, + "fspHolderName": { + "type": "string", + "description": "Maximum length is expected to be \u003C= 100" + }, + "lifecycleStatus": { + "type": "string", + "enum": [ + "Proposed", + "Final" + ] + }, + "createDate": { + "type": "string", + "description": "Format: YYYY-MM-DD", + "example": "2021-03-31" + }, + "geometry": { + "type": "object", + "description": "Format: GeoJSON Geometry as per RFC 7946 https://datatracker.ietf.org/doc/html/rfc7946#section-3.1.", + "example": "Cut Block / Retention Area Example: {\"type\":\"Polygon\",\"coordinates\":[[[-121.652853481,51.67951884],[-121.499131212,51.763467947],[-121.363845891,51.668139701],[-121.373301212,51.578595415],[-121.661722435,51.589952346],[-121.652853481,51.67951884]]]} Road Section Example: {\"type\":\"LineString\",\"coordinates\":[[-124.667049923,52.651503193],[-124.739768473,52.697146151],[-124.816364174,52.60827305]]}" + }, + "plannedDevelopmentDate": { + "type": "string", + "description": "Format: YYYY-MM-DD", + "example": "2021-03-31" + }, + "plannedAreaHa": { + "type": "number", + "example": "1.2345" + }, + "plannedLengthKm": { + "type": "number", + "example": "1.2345" + } + }, + "required": [ + "fomId", + "featureType", + "featureId", + "fspHolderName", + "lifecycleStatus", + "createDate", + "geometry", + "plannedDevelopmentDate", + "plannedAreaHa", + "plannedLengthKm" + ] + } + } } - } \ No newline at end of file + } \ No newline at end of file diff --git a/api/src/app/modules/project/project.controller.ts b/api/src/app/modules/project/project.controller.ts index 0883a60de..ae733582d 100644 --- a/api/src/app/modules/project/project.controller.ts +++ b/api/src/app/modules/project/project.controller.ts @@ -90,6 +90,7 @@ export class ProjectController { @Get() @ApiBearerAuth() + @ApiQuery({ name: 'projectId', required: false}) @ApiQuery({ name: 'fspId', required: false}) @ApiQuery({ name: 'districtId', required: false}) @ApiQuery({ name: 'workflowStateCode', required: false}) @@ -97,6 +98,7 @@ export class ProjectController { @ApiResponse({ status: HttpStatus.OK, type: [ProjectResponse] }) async find( @UserHeader() user: User, + @Query('projectId') projectId?: string, @Query('fspId') fspId?: string, @Query('districtId') districtId?: string, @Query('workflowStateCode') workflowStateCode?: string, @@ -104,6 +106,9 @@ export class ProjectController { ): Promise { const findCriteria: ProjectFindCriteria = new ProjectFindCriteria(); + if (projectId) { + findCriteria.projectId = await new ParseIntPipe().transform(projectId, null); + } if (fspId) { findCriteria.fspId = await new ParseIntPipe().transform(fspId, null); } diff --git a/libs/client/typescript-ng/api/project.service.ts b/libs/client/typescript-ng/api/project.service.ts index bd29376aa..aabbace95 100644 --- a/libs/client/typescript-ng/api/project.service.ts +++ b/libs/client/typescript-ng/api/project.service.ts @@ -283,6 +283,7 @@ export class ProjectService { } /** + * @param projectId * @param fspId * @param districtId * @param workflowStateCode @@ -290,12 +291,16 @@ export class ProjectService { * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body. * @param reportProgress flag to report request and response progress. */ - public projectControllerFind(fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>; - public projectControllerFind(fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>>; - public projectControllerFind(fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>>; - public projectControllerFind(fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json'}): Observable { + public projectControllerFind(projectId?: string, fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>; + public projectControllerFind(projectId?: string, fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>>; + public projectControllerFind(projectId?: string, fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json'}): Observable>>; + public projectControllerFind(projectId?: string, fspId?: string, districtId?: string, workflowStateCode?: string, forestClientName?: string, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json'}): Observable { let queryParameters = new HttpParams({encoder: this.encoder}); + if (projectId !== undefined && projectId !== null) { + queryParameters = this.addToHttpParams(queryParameters, + projectId, 'projectId'); + } if (fspId !== undefined && fspId !== null) { queryParameters = this.addToHttpParams(queryParameters, fspId, 'fspId'); From a8facd6504fd94474e064d6063ae302e4fcacdd4 Mon Sep 17 00:00:00 2001 From: Ian Liu Date: Mon, 29 Jul 2024 13:18:34 -0700 Subject: [PATCH 3/5] Change label FOM ID to FOM Number --- admin/src/app/foms/fom-detail/fom-detail.component.html | 2 +- .../app/foms/fom-submission/fom-submission.component.html | 2 +- .../src/app/foms/interactions/interactions.component.html | 2 +- .../foms/public-notice/public-notice-edit.component.html | 2 +- .../foms/review-comments/review-comments.component.html | 2 +- admin/src/app/foms/summary/summary.component.html | 6 +++--- admin/src/app/search/search.component.html | 2 +- admin/src/app/search/search.component.scss | 2 +- .../public-notices-panel.component.html | 8 ++++---- .../app/applications/find-panel/find-panel.component.html | 2 +- 10 files changed, 15 insertions(+), 15 deletions(-) diff --git a/admin/src/app/foms/fom-detail/fom-detail.component.html b/admin/src/app/foms/fom-detail/fom-detail.component.html index eaf6052e5..93709ff09 100644 --- a/admin/src/app/foms/fom-detail/fom-detail.component.html +++ b/admin/src/app/foms/fom-detail/fom-detail.component.html @@ -2,7 +2,7 @@
-

FOM ID: {{project.id}}

+

FOM Number: {{project.id}}

diff --git a/admin/src/app/foms/fom-submission/fom-submission.component.html b/admin/src/app/foms/fom-submission/fom-submission.component.html index 4a67f14a9..49ee10e92 100644 --- a/admin/src/app/foms/fom-submission/fom-submission.component.html +++ b/admin/src/app/foms/fom-submission/fom-submission.component.html @@ -38,7 +38,7 @@

FSP ID: {{project.fspId}}

FOM Spatial Submission
- +
-

Stakeholder Engagements for FOM #:{{projectId}}

+

Stakeholder Engagements for FOM Number:{{projectId}}

diff --git a/admin/src/app/foms/public-notice/public-notice-edit.component.html b/admin/src/app/foms/public-notice/public-notice-edit.component.html index 715020690..2ed202f4b 100644 --- a/admin/src/app/foms/public-notice/public-notice-edit.component.html +++ b/admin/src/app/foms/public-notice/public-notice-edit.component.html @@ -3,7 +3,7 @@

- {{ editMode? (isAddNewNotice()? 'New': 'Edit' ): '' }} Online Public Notice   FOM ID: {{projectId}} + {{ editMode? (isAddNewNotice()? 'New': 'Edit' ): '' }} Online Public Notice   FOM Number: {{projectId}}

-

Review Comments for FOM ID : {{projectId}}

+

Review Comments for FOM Number: {{projectId}}

diff --git a/admin/src/app/foms/summary/summary.component.html b/admin/src/app/foms/summary/summary.component.html index 84113232f..b9ae3463d 100644 --- a/admin/src/app/foms/summary/summary.component.html +++ b/admin/src/app/foms/summary/summary.component.html @@ -6,10 +6,10 @@ arrow_back Back to FOM Details
-
-

Summary for FOM ID: {{project?.id}}

+
+

Summary for FOM Number: {{project?.id}}

-
+
Comment Scope - + diff --git a/admin/src/app/search/search.component.scss b/admin/src/app/search/search.component.scss index 937b1aae0..bf39f6fe7 100644 --- a/admin/src/app/search/search.component.scss +++ b/admin/src/app/search/search.component.scss @@ -169,7 +169,7 @@ $sr-table-row-bg: #f7f8fa; } .disp { - width: 5.0rem; + min-width: 5rem; } .status { diff --git a/public/src/app/applications/app-public-notices/public-notices-panel.component.html b/public/src/app/applications/app-public-notices/public-notices-panel.component.html index bed1ec21a..ca4eaee0f 100644 --- a/public/src/app/applications/app-public-notices/public-notices-panel.component.html +++ b/public/src/app/applications/app-public-notices/public-notices-panel.component.html @@ -95,17 +95,17 @@

No public notices found.

-
FOM #:
+
FOM Number:
{{pn.projectId}}
FOM Holder:
-
{{pn.project.forestClient?.name}}
+
{{pn.project.forestClient?.name}}
-
FSP ID:
+
FSP ID:
{{pn.project.fspId}}
District:
-
{{pn.project.district?.name}}
+
{{pn.project.district?.name}}
diff --git a/public/src/app/applications/find-panel/find-panel.component.html b/public/src/app/applications/find-panel/find-panel.component.html index c3cf3c932..757343025 100644 --- a/public/src/app/applications/find-panel/find-panel.component.html +++ b/public/src/app/applications/find-panel/find-panel.component.html @@ -6,7 +6,7 @@

Find FOM

- + Date: Mon, 29 Jul 2024 14:23:14 -0700 Subject: [PATCH 4/5] Fix case when number is 0 --- api/src/app/modules/project/project.service.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/api/src/app/modules/project/project.service.ts b/api/src/app/modules/project/project.service.ts index 3c07e40c4..2623c94e3 100644 --- a/api/src/app/modules/project/project.service.ts +++ b/api/src/app/modules/project/project.service.ts @@ -1,22 +1,24 @@ import { DateTimeUtil } from '@api-core/dateTimeUtil'; import { MailService } from '@api-core/mail/mail.service'; +import { AttachmentTypeEnum } from '@api-modules/attachment/attachment-type-code.entity'; import { AttachmentService } from '@api-modules/attachment/attachment.service'; +import { DistrictService } from '@api-modules/district/district.service'; +import { ForestClientService } from '@api-modules/forest-client/forest-client.service'; import { Interaction } from '@api-modules/interaction/interaction.entity'; +import { PublicNotice } from '@api-modules/project/public-notice.entity'; import { PublicComment } from '@api-modules/public-comment/public-comment.entity'; +import { PublicCommentService } from '@api-modules/public-comment/public-comment.service'; +import { SubmissionTypeCodeEnum } from '@api-modules/submission/submission-type-code.entity'; import { DataService } from '@core'; import { BadRequestException, ForbiddenException, Injectable, InternalServerErrorException, UnprocessableEntityException } from '@nestjs/common'; import { Cron } from '@nestjs/schedule'; import { InjectRepository } from '@nestjs/typeorm'; +import { USER_SYSTEM } from '@src/app-constants'; import { User } from "@utility/security/user"; import * as dayjs from 'dayjs'; import { isNil } from 'lodash'; import { PinoLogger } from 'nestjs-pino'; import { Repository, SelectQueryBuilder } from 'typeorm'; -import { AttachmentTypeEnum } from '@api-modules/attachment/attachment-type-code.entity'; -import { DistrictService } from '@api-modules/district/district.service'; -import { ForestClientService } from '@api-modules/forest-client/forest-client.service'; -import { PublicCommentService } from '@api-modules/public-comment/public-comment.service'; -import { SubmissionTypeCodeEnum } from '@api-modules/submission/submission-type-code.entity'; import { ProjectCommentClassificationMandatoryChangeRequest, ProjectCommentingClosedDateChangeRequest, ProjectCreateRequest, ProjectMetricsResponse, ProjectPublicSummaryResponse, ProjectResponse, ProjectUpdateRequest, ProjectWorkflowStateChangeRequest @@ -25,8 +27,6 @@ import { Project } from './project.entity'; import { WorkflowStateEnum } from './workflow-state-code.entity'; import NodeCache = require('node-cache'); import _ = require('lodash'); -import { PublicNotice } from '@api-modules/project/public-notice.entity'; -import { USER_SYSTEM } from '@src/app-constants'; export class ProjectFindCriteria { includeWorkflowStateCodes: string[] = []; likeForestClientName?: string; @@ -37,10 +37,10 @@ export class ProjectFindCriteria { projectId?: number; applyFindCriteria(query: SelectQueryBuilder) { - if (this.projectId) { + if (this.projectId >= 0) { query.andWhere("p.id = :projectId", {projectId: this.projectId}) } - if (this.fspId) { + if (this.fspId >= 0) { query.andWhere("p.fsp_id = :fspId", {fspId: `${this.fspId}`}); } if (this.districtId) { From 217b68eb25e0838563e229dcb7fd80952411c90b Mon Sep 17 00:00:00 2001 From: Ian Liu Date: Tue, 30 Jul 2024 10:01:57 -0700 Subject: [PATCH 5/5] Minor style adjustment. --- admin/src/app/search/search.component.scss | 1 - 1 file changed, 1 deletion(-) diff --git a/admin/src/app/search/search.component.scss b/admin/src/app/search/search.component.scss index bf39f6fe7..7055a6c7d 100644 --- a/admin/src/app/search/search.component.scss +++ b/admin/src/app/search/search.component.scss @@ -183,7 +183,6 @@ $sr-table-row-bg: #f7f8fa; padding-bottom: 0; .btn { - margin-top: 1rem; width: 6rem; border-width: 2px; font-weight: 700;
FOM IDFOM Number FOM Name FSP ID FOM Holder Name