Skip to content

Commit

Permalink
Implemented the Continuation In Framework (bcgov#633)
Browse files Browse the repository at this point in the history
* Implemented the Continuation In Framework

* some fixes related to continuation in interfaces

* Rebased + fix rebase issues + fixed in response to comments

* Small fixes in response to Sev's comments

* Fixed typo
  • Loading branch information
JazzarKarim authored Jan 25, 2024
1 parent a82b383 commit 88ac82e
Show file tree
Hide file tree
Showing 38 changed files with 1,786 additions and 55 deletions.
37 changes: 11 additions & 26 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "business-create-ui",
"version": "5.7.1",
"version": "5.8.0",
"private": true,
"appName": "Create UI",
"sbcName": "SBC Common Components",
Expand All @@ -22,13 +22,13 @@
"@bcrs-shared-components/completing-party": "2.1.30",
"@bcrs-shared-components/confirm-dialog": "1.2.1",
"@bcrs-shared-components/contact-info": "1.2.15",
"@bcrs-shared-components/corp-type-module": "1.0.11",
"@bcrs-shared-components/corp-type-module": "1.0.15",
"@bcrs-shared-components/correct-name": "1.0.36",
"@bcrs-shared-components/court-order-poa": "3.0.11",
"@bcrs-shared-components/date-picker": "1.2.15",
"@bcrs-shared-components/document-delivery": "1.2.0",
"@bcrs-shared-components/effective-date-time": "1.1.15",
"@bcrs-shared-components/enums": "1.1.5",
"@bcrs-shared-components/enums": "1.1.7",
"@bcrs-shared-components/expandable-help": "1.0.1",
"@bcrs-shared-components/genesys-web-message": "1.0.0",
"@bcrs-shared-components/help-business-number": "1.1.1",
Expand Down
20 changes: 17 additions & 3 deletions src/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -253,9 +253,10 @@ import { CommonMixin, DateMixin, FilingTemplateMixin, NameRequestMixin } from '@
import { AccountInformationIF, AddressIF, BreadcrumbIF, BusinessWarningIF, CompletingPartyIF,
ConfirmDialogType, EmptyFees, FeesIF, FilingDataIF, OrgInformationIF, PartyIF, ResourceIF,
StepIF } from '@/interfaces'
import { AmalgamationRegResources, AmalgamationShortResources, DissolutionResources, IncorporationResources,
RegistrationResources, RestorationResources, getEntityDashboardBreadcrumb, getMyBusinessRegistryBreadcrumb,
getRegistryDashboardBreadcrumb, getSbcStaffDashboardBreadcrumb, getStaffDashboardBreadcrumb } from '@/resources'
import { AmalgamationRegResources, AmalgamationShortResources, ContinuationInResources,
DissolutionResources, IncorporationResources, RegistrationResources, RestorationResources,
getEntityDashboardBreadcrumb, getMyBusinessRegistryBreadcrumb, getRegistryDashboardBreadcrumb,
getSbcStaffDashboardBreadcrumb, getStaffDashboardBreadcrumb } from '@/resources'
import { AuthServices, LegalServices, PayServices } from '@/services/'
// Enums and Constants
Expand Down Expand Up @@ -300,6 +301,7 @@ export default class App extends Mixins(CommonMixin, DateMixin, FilingTemplateMi
// @Getter(useStore) isAmalgamationFilingHorizontal!: boolean
// @Getter(useStore) isAmalgamationFilingRegular!: boolean
// @Getter(useStore) isAmalgamationFilingVertical!: boolean
@Getter(useStore) isContinuationInFiling!: boolean
@Getter(useStore) isDissolutionFiling!: boolean
@Getter(useStore) isIncorporationFiling!: boolean
@Getter(useStore) isMobile!: boolean
Expand Down Expand Up @@ -758,6 +760,9 @@ export default class App extends Mixins(CommonMixin, DateMixin, FilingTemplateMi
throw new Error('invalid amalgamation filing type')
}
return
case FilingTypes.CONTINUATION_IN:
this.$router.push(RouteNames.CONTINUATION_IN_BUSINESS_HOME).catch(() => {})
return
case FilingTypes.DISSOLUTION:
if (this.isTypeFirm) {
this.$router.push(RouteNames.DISSOLUTION_FIRM).catch(() => {})
Expand Down Expand Up @@ -920,6 +925,14 @@ export default class App extends Mixins(CommonMixin, DateMixin, FilingTemplateMi
throw new Error('invalid amalgamation filing type')
}
break
case FilingTypes.CONTINUATION_IN:
draftFiling = {
...this.buildContinuationInFiling(),
...draftFiling
}
this.parseContinuationInDraft(draftFiling)
resources = ContinuationInResources.find(x => x.entityType === this.getEntityType) as ResourceIF
break
case FilingTypes.INCORPORATION_APPLICATION:
draftFiling = {
...this.buildIncorporationFiling(),
Expand Down Expand Up @@ -1282,6 +1295,7 @@ export default class App extends Mixins(CommonMixin, DateMixin, FilingTemplateMi
if (
this.isRouteName(RouteNames.AMALG_REG_REVIEW_CONFIRM) ||
this.isRouteName(RouteNames.AMALG_SHORT_REVIEW_CONFIRM) ||
this.isRouteName(RouteNames.CONTINUATION_IN_REVIEW_CONFIRM) ||
this.isRouteName(RouteNames.DISSOLUTION_REVIEW_CONFIRM) ||
this.isRouteName(RouteNames.INCORPORATION_REVIEW_CONFIRM) ||
this.isRouteName(RouteNames.REGISTRATION_REVIEW_CONFIRM) ||
Expand Down
2 changes: 2 additions & 0 deletions src/components/common/Actions.vue
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,8 @@ export default class Actions extends Mixins(AmalgamationMixin, CommonMixin,
switch (this.getFilingType) {
case FilingTypes.AMALGAMATION_APPLICATION:
return this.buildAmalgamationFiling()
case FilingTypes.CONTINUATION_IN:
return this.buildContinuationInFiling()
case FilingTypes.INCORPORATION_APPLICATION:
return this.buildIncorporationFiling()
case FilingTypes.REGISTRATION:
Expand Down
2 changes: 2 additions & 0 deletions src/components/common/EntityInfo.vue
Original file line number Diff line number Diff line change
Expand Up @@ -132,6 +132,8 @@ export default class EntityInfo extends Mixins(DateMixin) {
switch (this.getFilingType) {
case FilingTypes.AMALGAMATION_APPLICATION:
return (this.getNameRequestApprovedName || numberedDescription)
case FilingTypes.CONTINUATION_IN:
return (this.getNameRequestApprovedName || numberedDescription)
case FilingTypes.DISSOLUTION:
return (this.getBusinessLegalName || numberedDescription)
case FilingTypes.INCORPORATION_APPLICATION:
Expand Down
7 changes: 7 additions & 0 deletions src/components/common/ListPeopleAndRoles.vue
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,12 @@
:to="{ path: `/${RouteNames.AMALG_SHORT_PEOPLE_ROLES}` }"
>Return to this step to finish it</router-link>

<router-link
v-if="isContinuationInFiling"
id="router-link"
:to="{ path: `/${RouteNames.CONTINUATION_IN_PEOPLE_ROLES}` }"
>Return to this step to finish it</router-link>

<router-link
v-if="isIncorporationFiling"
id="router-link"
Expand Down Expand Up @@ -246,6 +252,7 @@ export default class ListPeopleAndRoles extends Mixins(CommonMixin) {
@Getter(useStore) isAmalgamationFilingHorizontal!: boolean
@Getter(useStore) isAmalgamationFilingRegular!: boolean
@Getter(useStore) isAmalgamationFilingVertical!: boolean
@Getter(useStore) isContinuationInFiling!: boolean
@Getter(useStore) isFullRestorationFiling!: boolean
@Getter(useStore) isIncorporationFiling!: boolean
@Getter(useStore) isLimitedRestorationFiling!: boolean
Expand Down
6 changes: 6 additions & 0 deletions src/components/common/ListShareClass.vue
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,11 @@
:to="{ path: `/${RouteNames.AMALG_REG_SHARE_STRUCTURE}` }"
>Return to this step to finish it</router-link>

<router-link
v-if="isContinuationInFiling"
id="router-link"
:to="{ path: `/${RouteNames.CONTINUATION_IN_SHARE_STRUCTURE}` }"
>Return to this step to finish it</router-link>
<router-link
v-if="isIncorporationFiling"
id="router-link"
Expand Down Expand Up @@ -223,6 +228,7 @@ export default class ListShareClass extends Vue {
@Prop({ default: () => [] }) readonly shareClasses!: any
@Prop({ default: false }) readonly componentDisabled!: boolean
@Prop({ default: false }) readonly isAmalgamationFiling!: boolean
@Prop({ default: false }) readonly isContinuationInFiling!: boolean
@Prop({ default: false }) readonly isIncorporationFiling!: boolean
@Prop({ default: false }) readonly isSummary!: boolean
@Prop({ default: false }) readonly showErrorSummary!: boolean
Expand Down
6 changes: 6 additions & 0 deletions src/components/common/Stepper.vue
Original file line number Diff line number Diff line change
Expand Up @@ -102,6 +102,12 @@ export default class Stepper extends Vue {
case RouteNames.AMALG_SHORT_PEOPLE_ROLES: return this.isAddPeopleAndRolesValid
case RouteNames.AMALG_SHORT_REVIEW_CONFIRM: return this.isFilingValid
case RouteNames.CONTINUATION_IN_BUSINESS_HOME: return false // *** TODO
case RouteNames.CONTINUATION_IN_BUSINESS_BC: return false // *** TODO
case RouteNames.CONTINUATION_IN_PEOPLE_ROLES: return this.isAddPeopleAndRolesValid
case RouteNames.CONTINUATION_IN_SHARE_STRUCTURE: return this.isCreateShareStructureValid
case RouteNames.CONTINUATION_IN_REVIEW_CONFIRM: return this.isFilingValid
case RouteNames.DISSOLUTION_AFFIDAVIT: return this.isAffidavitValid
case RouteNames.DISSOLUTION_DEFINE_DISSOLUTION: return this.isDissolutionDefineDissolutionValid
case RouteNames.DISSOLUTION_RESOLUTION: return this.isResolutionValid
Expand Down
6 changes: 6 additions & 0 deletions src/components/common/SummaryDefineCompany.vue
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,11 @@
>Return to this step to finish it</router-link>
</template>

<router-link
v-if="isContinuationInFiling"
:to="{ path: `/${RouteNames.CONTINUATION_IN_BUSINESS_BC}` }"
>Return to this step to finish it</router-link>

<router-link
v-if="isIncorporationFiling"
:to="{ path: `/${RouteNames.INCORPORATION_DEFINE_COMPANY}` }"
Expand Down Expand Up @@ -218,6 +223,7 @@ export default class SummaryDefineCompany extends Vue {
@Getter(useStore) isAmalgamationFilingRegular!: boolean
@Getter(useStore) isAmalgamationFilingVertical!: boolean
@Getter(useStore) isAmalgamationInformationValid!: boolean
@Getter(useStore) isContinuationInFiling!: boolean
@Getter(useStore) isDefineCompanyValid!: boolean
@Getter(useStore) isFullRestorationFiling!: boolean
@Getter(useStore) isIncorporationFiling!: boolean
Expand Down
1 change: 1 addition & 0 deletions src/dialogs/SaveErrorDialog.vue
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,7 @@ export default class SaveErrorDialog extends Vue {
get filingName (): string {
switch (this.getFilingType) {
case FilingTypes.AMALGAMATION_APPLICATION: return 'Application'
case FilingTypes.CONTINUATION_IN: return 'Application'
case FilingTypes.INCORPORATION_APPLICATION: return 'Application'
case FilingTypes.REGISTRATION: return 'Registration'
case FilingTypes.RESTORATION: return 'Restoration'
Expand Down
7 changes: 7 additions & 0 deletions src/enums/routeNames.ts
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,13 @@ export enum RouteNames {
AMALG_SHORT_PEOPLE_ROLES = 'amalg-short-people-roles',
AMALG_SHORT_REVIEW_CONFIRM = 'amalg-short-review-confirm',

// Continuation In route names
CONTINUATION_IN_BUSINESS_HOME = 'continuation-in-business-home',
CONTINUATION_IN_BUSINESS_BC = 'continuation-in-business-bc',
CONTINUATION_IN_PEOPLE_ROLES = 'continuation-in-people-roles',
CONTINUATION_IN_REVIEW_CONFIRM = 'continuation-in-review-confirm',
CONTINUATION_IN_SHARE_STRUCTURE = 'continuation-in-share-structure',

// Dissolution route names
DISSOLUTION_AFFIDAVIT = 'dissolution-affidavit',
DISSOLUTION_DEFINE_DISSOLUTION = 'dissolution-define-dissolution',
Expand Down
7 changes: 7 additions & 0 deletions src/enums/views.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,13 @@ export enum Views {
AMALGAMATION_REVIEW_CONFIRM = 'amalgamation-review-confirm',
AMALGAMATION_SHARE_STRUCTURE = 'amalgamation-share-structure', // regular only

// Continuation In views
CONTINUATION_IN_BUSINESS_HOME = 'continuation-in-business-home',
CONTINUATION_IN_BUSINESS_BC = 'continuation-in-business-bc',
CONTINUATION_IN_PEOPLE_ROLES = 'continuation-in-people-roles',
CONTINUATION_IN_REVIEW_CONFIRM = 'continuation-in-review-confirm',
CONTINUATION_IN_SHARE_STRUCTURE = 'continuation-in-share-structure',

// Dissolution views
DISSOLUTION_AFFIDAVIT = 'dissolution-affidavit',
DISSOLUTION_DEFINE_DISSOLUTION = 'dissolution-define-dissolution',
Expand Down
39 changes: 39 additions & 0 deletions src/interfaces/filing-interfaces/filing-interfaces.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,45 @@ export interface AmalgamationFilingIF {
}
}

/** Interface for continuation in filing data saved to the Legal API. */
export interface ContinuationInFilingIF {
header: {
name: FilingTypes
certifiedBy: string
date: string
effectiveDate?: string // should be set only for future effective filings
filingId?: number // for existing filings (not used when building a new filing)
folioNumber?: string // only displayed for certain account types
isFutureEffective: boolean

// staff payment properties:
routingSlipNumber?: string
bcolAccountNumber?: string
datNumber?: string
waiveFees?: boolean
priority?: boolean
}
business: {
legalType: CorpTypeCd
identifier: string
}
continuationIn: {
foreignJurisdiction: any
nameRequest: NameRequestFilingIF
nameTranslations: NameTranslationIF[]
offices: RegisteredRecordsAddressesIF | object
contactPoint: ContactPointIF
parties: PartyIF[]

// BEN / CC / BC / ULC only:
shareStructure?: {
shareClasses: ShareClassIF[]
}
// ULC only:
courtOrder?: CourtOrderIF
}
}

/** Interface for incorporation filing data saved to the Legal API. */
export interface IncorporationFilingIF {
header: {
Expand Down
1 change: 1 addition & 0 deletions src/interfaces/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ export * from './store-interfaces/state-interfaces/account-information-interface
export * from './store-interfaces/state-interfaces/amalgamation-state-interface'
export * from './store-interfaces/state-interfaces/auth-information-interface'
export * from './store-interfaces/state-interfaces/business-interface'
export * from './store-interfaces/state-interfaces/continuation-in-state-interface'
export * from './store-interfaces/state-interfaces/dissolution-state-interface'
export * from './store-interfaces/state-interfaces/document-delivery-interface'
export * from './store-interfaces/state-interfaces/org-information-interface'
Expand Down
16 changes: 14 additions & 2 deletions src/interfaces/resource-interfaces/resource-interface.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,18 @@ export interface AmalgamationResourceIF {
}
}

/** Continuation in resource interface. */
export interface ContinuationInResourceIF {
entityType: CorpTypeCd
displayName: string
steps: Array<StepIF>
filingData: Array<FilingDataIF>
peopleAndRoles: PeopleAndRolesResourceIF
reviewAndConfirm: {
completingPartyStatement: CompletingPartyStatementIF
}
}

/** Dissolution resource interface. */
export interface DissolutionResourceIF {
entityType: CorpTypeCd
Expand Down Expand Up @@ -91,5 +103,5 @@ export interface RestorationResourceIF {
}
}

export interface ResourceIF extends AmalgamationResourceIF, DissolutionResourceIF,
IncorporationResourceIF, RegistrationResourceIF, RestorationResourceIF {}
export interface ResourceIF extends AmalgamationResourceIF, ContinuationInResourceIF,
DissolutionResourceIF, IncorporationResourceIF, RegistrationResourceIF, RestorationResourceIF {}
2 changes: 2 additions & 0 deletions src/interfaces/store-interfaces/state-interface.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
ContactPointIF,
BusinessIF,
CertifyIF,
ContinuationInStateIF,
CompletingPartyIF,
CourtOrderStepIF,
CreateMemorandumIF,
Expand Down Expand Up @@ -73,6 +74,7 @@ export interface StateModelIF {
completingParty?: CompletingPartyIF
parties?: Array<PartyIF>
amalgamation: AmalgamationStateIF
continuationIn: ContinuationInStateIF
restoration: RestorationStateIF

// staffPaymentStep and courtOrder are common and for now are only used in dissolution
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// TODO: Add properties as needed
export interface ContinuationInStateIF {
existingBusinessValid: boolean
}
Loading

0 comments on commit 88ac82e

Please sign in to comment.