- {{ item.name || item.legalName }} {{ item.email }}
+ {{ name(item) }} {{ email(item) }}
|
- {{ GetCorpFullDescription(item.legalType) || 'Foreign' }}
+ {{ type(item) }}
|
-
- {{ jurisdiction(item) }}
- Affiliate to view
+
+
+ Affiliate to view
+
+
+
+ {{ jurisdiction(item) }}
+
|
@@ -69,10 +74,10 @@ import { Getter, Action } from 'pinia-class'
import { getName } from 'country-list'
import { useStore } from '@/store/store'
import { AmalgamatingStatuses, AmlRoles } from '@/enums'
-import { AmalgamatingBusinessIF, DefineCompanyIF } from '@/interfaces'
+import { AmalgamatingBusinessIF } from '@/interfaces'
import { BaseAddress } from '@bcrs-shared-components/base-address'
import BusinessStatus from './BusinessStatus.vue'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
@@ -85,29 +90,99 @@ export default class BusinessTable extends Vue {
readonly GetCorpFullDescription = GetCorpFullDescription
@Getter(useStore) getAmalgamatingBusinesses!: AmalgamatingBusinessIF[]
- @Getter(useStore) getDefineCompanyStep!: DefineCompanyIF
- @Getter(useStore) getNameTranslationsValid!: boolean
- @Getter(useStore) getShowErrors!: boolean
- @Getter(useStore) isBaseCompany!: boolean
@Getter(useStore) isRoleStaff!: boolean
+ @Getter(useStore) isTypeBcCcc!: boolean
+ @Getter(useStore) isTypeBcUlcCompany!: boolean
@Action(useStore) setAmalgamatingBusinesses!: (x: AmalgamatingBusinessIF[]) => void
@Action(useStore) setDefineCompanyStepValidity!: (x: boolean) => void
- @Action(useStore) setIgnoreChanges!: (x: boolean) => void
- get businesses (): any[] {
- // *** TODO: use "map" to compute status from other info
- // eg, if business.goodStanding != true then status = ERROR_NIGS
+ // *** I'M STILL WONDERING IF I WANT TO USE THESE
+ // readonly isLear = (item: AmalgamatingBusinessIF): boolean => (item?.type === 'lear')
+ // readonly isForeign = (item: AmalgamatingBusinessIF): boolean => (item?.type === 'foreign')
+
+ /** True if there a limited company in the table. */
+ get isAnyLimited (): boolean {
+ return this.businesses.some(business =>
+ (business.type === 'lear' && business.legalType === CorpTypeCd.BC_COMPANY)
+ )
+ }
+
+ /**
+ * This is the list of amalgamating businesses with computed statuses.
+ * In other words, these are the business rules.
+ */
+ get businesses (): AmalgamatingBusinessIF[] {
return this.getAmalgamatingBusinesses.map(business => {
- if (business.type === 'lear' && business.goodStanding === false) {
+ /* eslint-disable brace-style */
+
+ // disallow foreign altogether if not staff
+ // (could happen if staff added it and regular user resumes draft)
+ if (business.type === 'foreign' && !this.isRoleStaff) {
+ business.status = AmalgamatingStatuses.ERROR_FOREIGN
+ }
+
+ // disallow foreign into ULC if there is also a limited
+ else if (business.type === 'foreign' && this.isTypeBcUlcCompany && this.isAnyLimited) {
+ business.status = AmalgamatingStatuses.ERROR_FOREIGN
+ }
+
+ // assume business is not affiliated if we don't have address (non-staff only)
+ else if (business.type === 'lear' && !business.address && !this.isRoleStaff) {
+ business.status = AmalgamatingStatuses.ERROR_AFFILIATION
+ }
+
+ // identify CCC mismatch
+ else if (business.type === 'lear' && business.legalType === CorpTypeCd.BC_CCC && !this.isTypeBcCcc) {
+ business.status = AmalgamatingStatuses.ERROR_CCC_MISMATCH
+ }
+
+ // disallow NIGS if not staff
+ else if (business.type === 'lear' && !business.goodStanding && !this.isRoleStaff) {
business.status = AmalgamatingStatuses.ERROR_NIGS
}
+
+ // check if limited restoration
+ // *** TODO
+
+ // check for future effective filing
+ // *** TODO
+
+ // otherwise, status is OK
+ else {
+ business.status = AmalgamatingStatuses.OK
+ }
+ /* eslint-enable brace-style */
+
return business
})
}
- jurisdiction (item: any): string {
- const fj = item?.foreignJurisdiction
+ key (item: AmalgamatingBusinessIF): string {
+ if (item?.type === 'lear') return item.identifier
+ if (item?.type === 'foreign') return item.corpNumber
+ return null // should never happen
+ }
+
+ name (item: AmalgamatingBusinessIF): string {
+ if (item?.type === 'lear') return item.name
+ if (item?.type === 'foreign') return item.legalName
+ return '(Unknown)' // should never happen
+ }
+
+ email (item: AmalgamatingBusinessIF): string {
+ if (item?.type === 'lear') return item.email
+ return null // should never happen
+ }
+
+ type (item: AmalgamatingBusinessIF): string {
+ if (item?.type === 'lear') return GetCorpFullDescription(item.legalType)
+ if (item?.type === 'foreign') return 'Foreign'
+ return '(Unknown)' // should never happen
+ }
+
+ jurisdiction (item: AmalgamatingBusinessIF): string {
+ const fj = (item?.type === 'foreign') && item.foreignJurisdiction
if (fj?.country) {
const country = getName(fj.country)
const region = (fj.region === 'FEDERAL' ? 'Federal' : fj.region)
@@ -117,7 +192,7 @@ export default class BusinessTable extends Vue {
return '(Unknown)' // should never happen
}
- role (item: any): string {
+ role (item: AmalgamatingBusinessIF): string {
if (item.role === AmlRoles.AMALGAMATING) return 'Amalgamating Business'
if (item.role === AmlRoles.HOLDING) return 'Holding Company'
return '(Unknown)' // should never happen
@@ -126,6 +201,7 @@ export default class BusinessTable extends Vue {
removeBusiness (index: number): void {
const temp = this.getAmalgamatingBusinesses
temp.splice(index, 1)
+ // set updated list to trigger reactivity
this.setAmalgamatingBusinesses(temp)
}
@@ -170,7 +246,6 @@ export default class BusinessTable extends Vue {
padding-right: 2rem;
}
& td.business-name {
- min-width: 120px;
max-width: 200px;
// show ellipsis when email overflows
// (doesn't affect name because name breaks on spaces)
@@ -178,14 +253,13 @@ export default class BusinessTable extends Vue {
text-overflow: ellipsis;
}
& td.business-type {
- min-width: 120px;
max-width: 150px;
}
& td.business-address {
min-width: 200px;
}
& td.business-role {
- max-width: 120px;
+ max-width: 130px;
}
& td.business-status {
max-width: 120px;
diff --git a/src/components/Amalgamation/BusinessTableSummary.vue b/src/components/Amalgamation/BusinessTableSummary.vue
new file mode 100644
index 000000000..3c4faa109
--- /dev/null
+++ b/src/components/Amalgamation/BusinessTableSummary.vue
@@ -0,0 +1,159 @@
+
+
+
+
+
+ Business Name |
+ Mailing Address |
+ Role |
+
+
+
+
+
+
+
+ mdi-domain
+
+ {{ name(item) }} {{ email(item) }}
+ |
+
+
+
+
+ Affiliate to view
+
+
+
+ {{ jurisdiction(item) }}
+
+ |
+
+
+ {{ role(item) }}
+ |
+
+
+
+
+
+
+
+
+
diff --git a/src/components/Dissolution/AssociationDetails.vue b/src/components/Dissolution/AssociationDetails.vue
index a66465007..6297dc7e1 100644
--- a/src/components/Dissolution/AssociationDetails.vue
+++ b/src/components/Dissolution/AssociationDetails.vue
@@ -152,9 +152,9 @@ import { BaseAddress } from '@bcrs-shared-components/base-address'
import OfficeAddresses from '@/components/common/OfficeAddresses.vue'
import { CommonMixin, DateMixin } from '@/mixins'
import { CoopTypes } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { isEmpty } from 'lodash'
-import { GetCorpFullDescription, GetCorpNumberedDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription, GetCorpNumberedDescription }
+ from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/components/Dissolution/CompleteAffidavit.vue b/src/components/Dissolution/CompleteAffidavit.vue
index 209295daf..c12d75279 100644
--- a/src/components/Dissolution/CompleteAffidavit.vue
+++ b/src/components/Dissolution/CompleteAffidavit.vue
@@ -264,10 +264,9 @@ import {
UploadAffidavitIF
} from '@/interfaces'
import { RouteNames, ItemTypes, PdfPageSize } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { CommonMixin, DocumentMixin } from '@/mixins'
import FileUploadPreview from '@/components/common/FileUploadPreview.vue'
-import { GetCorpNumberedDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpNumberedDescription } from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/components/Dissolution/CompleteResolution.vue b/src/components/Dissolution/CompleteResolution.vue
index 2d9af477e..e53d38da2 100644
--- a/src/components/Dissolution/CompleteResolution.vue
+++ b/src/components/Dissolution/CompleteResolution.vue
@@ -497,7 +497,7 @@ import {
EmptyPerson
} from '@/interfaces'
import { BulletListTypes, ItemTypes, RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { CommonMixin, DateMixin } from '@/mixins'
import { Rules, RuleHelpers } from '@/rules'
import { VuetifyRuleFunction } from '@/types'
diff --git a/src/components/Registration/DefineRegistrationSummary.vue b/src/components/Registration/DefineRegistrationSummary.vue
index 54f89c5e0..c41ef0d20 100644
--- a/src/components/Registration/DefineRegistrationSummary.vue
+++ b/src/components/Registration/DefineRegistrationSummary.vue
@@ -148,8 +148,7 @@ import FolioNumber from '@/components/common/FolioNumber.vue'
import BusinessAddresses from '@/components/Registration/BusinessAddresses.vue'
import { DateMixin } from '@/mixins'
import { RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/components/Restoration/BusinessName.vue b/src/components/Restoration/BusinessName.vue
index 02a1496f5..fc0da1bf4 100644
--- a/src/components/Restoration/BusinessName.vue
+++ b/src/components/Restoration/BusinessName.vue
@@ -66,7 +66,8 @@ import { useStore } from '@/store/store'
import { EmptyNameRequest, NameRequestIF } from '@/interfaces/'
import { CommonMixin, DateMixin, NameRequestMixin } from '@/mixins/'
import { NrRequestActionCodes } from '@/enums/'
-import { CorpTypeCd, CorrectNameOptions } from '@bcrs-shared-components/enums/'
+import { CorrectNameOptions } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { LegalServices } from '@/services/'
import { CorrectName } from '@bcrs-shared-components/correct-name/'
import NameRequestInfo from '@/components/common/NameRequestInfo.vue'
diff --git a/src/components/Restoration/BusinessType.vue b/src/components/Restoration/BusinessType.vue
index 1b0620b0f..4c186defe 100644
--- a/src/components/Restoration/BusinessType.vue
+++ b/src/components/Restoration/BusinessType.vue
@@ -28,8 +28,7 @@
import { Component, Vue } from 'vue-property-decorator'
import { Getter } from 'pinia-class'
import { useStore } from '@/store/store'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module/'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module/'
@Component({})
export default class BusinessType extends Vue {
diff --git a/src/components/Restoration/SummaryRestoreBusiness.vue b/src/components/Restoration/SummaryRestoreBusiness.vue
index b8d3a6e54..16e8ad824 100644
--- a/src/components/Restoration/SummaryRestoreBusiness.vue
+++ b/src/components/Restoration/SummaryRestoreBusiness.vue
@@ -160,9 +160,9 @@ import { DateMixin } from '@/mixins'
import { Getter } from 'pinia-class'
import { useStore } from '@/store/store'
import { ApprovalTypes, RouteNames } from '@/enums'
-import { CorpTypeCd, CorrectNameOptions } from '@bcrs-shared-components/enums/'
+import { CorrectNameOptions } from '@bcrs-shared-components/enums/'
import { NameTranslationIF, RestorationStateIF } from '@/interfaces'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
@Component({})
export default class SummaryRestoreBusiness extends Mixins(DateMixin) {
diff --git a/src/components/common/NameRequestInfo.vue b/src/components/common/NameRequestInfo.vue
index d0f58865a..0abcb0eee 100644
--- a/src/components/common/NameRequestInfo.vue
+++ b/src/components/common/NameRequestInfo.vue
@@ -151,10 +151,9 @@ import { Component, Mixins } from 'vue-property-decorator'
import { Getter } from 'pinia-class'
import { useStore } from '@/store/store'
import { NameRequestStates, NrRequestActionCodes } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { NrApplicantIF, NameRequestIF } from '@/interfaces'
import { CommonMixin, DateMixin } from '@/mixins'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
import { Capitalize } from '@/utils'
@Component({})
diff --git a/src/components/common/OfficeAddresses.vue b/src/components/common/OfficeAddresses.vue
index e02bbff2e..07c51188c 100644
--- a/src/components/common/OfficeAddresses.vue
+++ b/src/components/common/OfficeAddresses.vue
@@ -327,7 +327,7 @@ import { isEmpty } from 'lodash'
import { OfficeAddressSchema } from '@/schemas'
import { BaseAddress } from '@bcrs-shared-components/base-address'
import { AddressIF, DefineCompanyIF, RegisteredRecordsAddressesIF } from '@/interfaces'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { CommonMixin } from '@/mixins'
@Component({
diff --git a/src/enums/amalgamationEnums.ts b/src/enums/amalgamationEnums.ts
index 3170e1ded..ab4160697 100644
--- a/src/enums/amalgamationEnums.ts
+++ b/src/enums/amalgamationEnums.ts
@@ -3,7 +3,10 @@ export enum AmalgamatingStatuses {
ERROR_AFFILIATION,
ERROR_CCC_MISMATCH,
ERROR_FOREIGN,
- ERROR_NIGS
+ ERROR_FOREIGN_UNLIMITED,
+ ERROR_FUTURE_EFFECTIVE_FILING,
+ ERROR_LIMITED_RESTORATION,
+ ERROR_NIGS,
}
export enum AmlRoles {
diff --git a/src/enums/index.ts b/src/enums/index.ts
index 63c85f58b..4ea08a35b 100644
--- a/src/enums/index.ts
+++ b/src/enums/index.ts
@@ -17,7 +17,6 @@ export * from './views'
export * from './errorTypes'
// external enums
-export { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
export {
AccountTypes,
ApprovalTypes,
diff --git a/src/interfaces/store-interfaces/state-interface.ts b/src/interfaces/store-interfaces/state-interface.ts
index 15ae8ae67..77b452eec 100644
--- a/src/interfaces/store-interfaces/state-interface.ts
+++ b/src/interfaces/store-interfaces/state-interface.ts
@@ -1,4 +1,5 @@
import { CorrectNameOptions } from '@bcrs-shared-components/enums/'
+import { NameRequestIF } from '@bcrs-shared-components/interfaces/'
import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import {
AccountInformationIF,
@@ -17,7 +18,6 @@ import {
EffectiveDateTimeIF,
FeesIF,
IncorporationAgreementIF,
- NameRequestIF,
NameTranslationIF,
OrgInformationIF,
PartyIF,
diff --git a/src/interfaces/store-interfaces/state-interfaces/business-interface.ts b/src/interfaces/store-interfaces/state-interfaces/business-interface.ts
index 7ed39ed3e..ade985faa 100644
--- a/src/interfaces/store-interfaces/state-interfaces/business-interface.ts
+++ b/src/interfaces/store-interfaces/state-interfaces/business-interface.ts
@@ -1,5 +1,5 @@
import { EntityState } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { IsoDatePacific, ApiDateTimeUtc } from '@bcrs-shared-components/interfaces'
import { ContactPointIF, OfficeAddressIF } from '@/interfaces'
diff --git a/src/mixins/add-edit-org-person-mixin.ts b/src/mixins/add-edit-org-person-mixin.ts
index 51311193d..acdbe04a6 100644
--- a/src/mixins/add-edit-org-person-mixin.ts
+++ b/src/mixins/add-edit-org-person-mixin.ts
@@ -4,7 +4,7 @@ import { useStore } from '@/store/store'
import { cloneDeep, isEqual } from 'lodash'
import { v4 as uuidv4 } from 'uuid'
import { PartyTypes, RoleTypes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { AddressIF, BusinessLookupIF, ConfirmDialogType, EmptyBusinessLookup,
FormIF, OrgPersonIF, PeopleAndRolesResourceIF, RegistrationStateIF, RolesIF } from '@/interfaces'
import { EmptyAddress } from '@bcrs-shared-components/interfaces'
diff --git a/src/mixins/people-roles-mixin.ts b/src/mixins/people-roles-mixin.ts
index efaeccbc7..6f7d5a2b7 100644
--- a/src/mixins/people-roles-mixin.ts
+++ b/src/mixins/people-roles-mixin.ts
@@ -2,7 +2,7 @@ import { Component, Vue } from 'vue-property-decorator'
import { Action, Getter } from 'pinia-class'
import { useStore } from '@/store/store'
import { NumWord, PartyTypes, RoleTypes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { AddressIF, ConfirmDialogType, OrgPersonIF, PeopleAndRoleIF,
PeopleAndRolesResourceIF, RegistrationStateIF } from '@/interfaces'
diff --git a/src/resources/Restoration/BC.ts b/src/resources/Restoration/BC.ts
index 827440481..231da862f 100644
--- a/src/resources/Restoration/BC.ts
+++ b/src/resources/Restoration/BC.ts
@@ -1,8 +1,7 @@
import { RestorationResourceIF } from '@/interfaces'
import { FilingCodes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { RestorationSteps } from './steps'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
export const RestorationResourceBc: RestorationResourceIF = {
entityType: CorpTypeCd.BC_COMPANY,
diff --git a/src/resources/Restoration/BEN.ts b/src/resources/Restoration/BEN.ts
index a9153a70c..a3551fd86 100644
--- a/src/resources/Restoration/BEN.ts
+++ b/src/resources/Restoration/BEN.ts
@@ -1,8 +1,7 @@
import { RestorationResourceIF } from '@/interfaces'
import { FilingCodes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { RestorationSteps } from './steps'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
export const RestorationResourceBen: RestorationResourceIF = {
entityType: CorpTypeCd.BENEFIT_COMPANY,
diff --git a/src/resources/Restoration/CC.ts b/src/resources/Restoration/CC.ts
index 69862fc7d..737668923 100644
--- a/src/resources/Restoration/CC.ts
+++ b/src/resources/Restoration/CC.ts
@@ -1,8 +1,7 @@
import { RestorationResourceIF } from '@/interfaces'
import { FilingCodes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { RestorationSteps } from './steps'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
export const RestorationResourceCc: RestorationResourceIF = {
entityType: CorpTypeCd.BC_CCC,
diff --git a/src/resources/Restoration/ULC.ts b/src/resources/Restoration/ULC.ts
index 09556bdcc..bf1518bab 100644
--- a/src/resources/Restoration/ULC.ts
+++ b/src/resources/Restoration/ULC.ts
@@ -1,8 +1,7 @@
import { RestorationResourceIF } from '@/interfaces'
import { FilingCodes, RuleIds } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { RestorationSteps } from './steps'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
export const RestorationResourceUlc: RestorationResourceIF = {
entityType: CorpTypeCd.BC_ULC_COMPANY,
diff --git a/src/store/state/state-model.ts b/src/store/state/state-model.ts
index 452ef8dd6..c1f111e95 100644
--- a/src/store/state/state-model.ts
+++ b/src/store/state/state-model.ts
@@ -8,7 +8,7 @@ import {
EmptyNaics,
StateModelIF
} from '@/interfaces'
-import { AmalgamatingStatuses, AmlRoles } from '@/enums'
+import { AmlRoles } from '@/enums'
import { EmptyAddress } from '@bcrs-shared-components/interfaces'
import { cloneDeep } from 'lodash'
import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
@@ -28,20 +28,27 @@ const AMALGAMATING_BUSINESSES: AmalgamatingBusinessIF[] = [
addressCountry: 'CA'
},
role: AmlRoles.HOLDING,
- goodStanding: true,
- status: AmalgamatingStatuses.OK
+ goodStanding: true
},
{
+ // this business is an xpro and should only be valid if staff
type: 'lear',
identifier: 'A5555555',
name: 'Lollipop Canada',
email: 'sucker@example.com',
legalType: CorpTypeCd.EXTRA_PRO_A,
+ address: {
+ streetAddress: '4321 Principal Ave',
+ addressCity: 'Halifax',
+ addressRegion: 'NS',
+ postalCode: 'B3H 1A1',
+ addressCountry: 'CA'
+ },
role: AmlRoles.AMALGAMATING,
- goodStanding: true,
- status: AmalgamatingStatuses.OK
+ goodStanding: true
},
{
+ // this business is NIGS and should only be valid if staff
type: 'lear',
identifier: 'BC2222222',
name: 'Jelly Bean',
@@ -55,36 +62,37 @@ const AMALGAMATING_BUSINESSES: AmalgamatingBusinessIF[] = [
addressCountry: 'CA'
},
role: AmlRoles.AMALGAMATING,
- goodStanding: false,
- status: AmalgamatingStatuses.ERROR_NIGS
+ goodStanding: false
},
{
+ // this business has 2 issues:
+ // 1. not affiliated
+ // 2. not in good standing
type: 'lear',
- identifier: 'BC4444444',
- name: 'Eclair',
- email: null,
- legalType: CorpTypeCd.BC_COMPANY, // *** KARIM: we can get this from the business lookup
+ identifier: 'BC4444444', // we know this from the business lookup
+ name: 'Eclair', // we know this from the business lookup
+ email: undefined, // we don't know this yet (not affiliated)
+ legalType: CorpTypeCd.BC_COMPANY, // we know this from the business lookup
+ address: undefined, // we don't know this yet (not affiliated)
role: AmlRoles.AMALGAMATING,
- goodStanding: null,
- status: AmalgamatingStatuses.ERROR_AFFILIATION
+ goodStanding: false // we know this from the business lookup
},
{
type: 'foreign',
- corpNumber: 'ABC123',
- legalName: 'Gingerbread USA',
- foreignJurisdiction: { country: 'US' },
- role: AmlRoles.AMALGAMATING,
- status: AmalgamatingStatuses.ERROR_FOREIGN
+ corpNumber: 'XYZ789',
+ legalName: 'Ice Cream Sandwich Canada',
+ foreignJurisdiction: { region: 'FEDERAL', country: 'CA' },
+ role: AmlRoles.AMALGAMATING
},
{
type: 'foreign',
- corpNumber: 'XYZ789',
- legalName: 'Oreo Ice Cream Sandwich',
- foreignJurisdiction: { region: 'FEDERAL', country: 'CA' },
- role: AmlRoles.AMALGAMATING,
- status: AmalgamatingStatuses.ERROR_FOREIGN
+ corpNumber: 'ABC123',
+ legalName: 'Gingerbread USA',
+ foreignJurisdiction: { country: 'US' },
+ role: AmlRoles.AMALGAMATING
},
{
+ // this business is CCC and should only be valid if amalg type is CCC
type: 'lear',
identifier: 'BC7777777',
name: 'Donut',
@@ -98,8 +106,7 @@ const AMALGAMATING_BUSINESSES: AmalgamatingBusinessIF[] = [
addressCountry: 'CA'
},
role: AmlRoles.AMALGAMATING,
- goodStanding: true,
- status: AmalgamatingStatuses.ERROR_CCC_MISMATCH
+ goodStanding: true
},
{
type: 'lear',
@@ -115,8 +122,7 @@ const AMALGAMATING_BUSINESSES: AmalgamatingBusinessIF[] = [
addressCountry: 'CA'
},
role: AmlRoles.AMALGAMATING,
- goodStanding: true,
- status: AmalgamatingStatuses.OK
+ goodStanding: true
}
]
diff --git a/src/views/AmalgamationRegular/ReviewConfirm.vue b/src/views/AmalgamationRegular/ReviewConfirm.vue
index e14353b8c..157d21771 100644
--- a/src/views/AmalgamationRegular/ReviewConfirm.vue
+++ b/src/views/AmalgamationRegular/ReviewConfirm.vue
@@ -34,7 +34,7 @@
label="Amalgamating Businesses Information"
/>
- [*** TODO: Amalgamating Businesses summary component ***]
+
@@ -253,16 +253,18 @@ import CardHeader from '@/components/common/CardHeader.vue'
import Certify from '@/components/common/Certify.vue'
import { CourtOrderPoa } from '@bcrs-shared-components/court-order-poa'
import { DocumentDelivery } from '@bcrs-shared-components/document-delivery'
+import BusinessTableSummary from '@/components/Amalgamation/BusinessTableSummary.vue'
import IncorporationDateTime from '@/components/Incorporation/IncorporationDateTime.vue'
import ListPeopleAndRoles from '@/components/common/ListPeopleAndRoles.vue'
import ListShareClass from '@/components/common/ListShareClass.vue'
import SummaryDefineCompany from '@/components/common/SummaryDefineCompany.vue'
-import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
import StaffPayment from '@/components/common/StaffPayment.vue'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
import { FilingNames } from '@bcrs-shared-components/enums'
@Component({
components: {
+ BusinessTableSummary,
CardHeader,
Certify,
CourtOrderPoa,
diff --git a/src/views/Dissolution/DissolutionDefineDissolution.vue b/src/views/Dissolution/DissolutionDefineDissolution.vue
index 55bb6dcb4..721701720 100644
--- a/src/views/Dissolution/DissolutionDefineDissolution.vue
+++ b/src/views/Dissolution/DissolutionDefineDissolution.vue
@@ -122,8 +122,8 @@ import HelpSection from '@/components/common/HelpSection.vue'
import { CustodianResourceIF, DissolutionStatementIF } from '@/interfaces'
import { CommonMixin } from '@/mixins'
import { RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
-import { GetCorpFullDescription, GetCorpNumberedDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription, GetCorpNumberedDescription }
+ from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/views/DissolutionFirm/DissolutionFirm.vue b/src/views/DissolutionFirm/DissolutionFirm.vue
index 9d4c20d45..b52dae695 100644
--- a/src/views/DissolutionFirm/DissolutionFirm.vue
+++ b/src/views/DissolutionFirm/DissolutionFirm.vue
@@ -304,7 +304,6 @@ import { CompletingParty } from '@bcrs-shared-components/completing-party'
import StaffPayment from '@/components/common/StaffPayment.vue'
import TransactionalFolioNumber from '@/components/common/TransactionalFolioNumber.vue'
import { RoleTypes, RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
import { VuetifyRuleFunction } from '@/types'
import {
@@ -318,7 +317,7 @@ import {
StaffPaymentStepIF
} from '@/interfaces'
import { PersonAddressSchema } from '@/schemas/'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/views/Incorporation/IncorporationAgreement.vue b/src/views/Incorporation/IncorporationAgreement.vue
index 2965b4dc4..8d5ddf2f7 100644
--- a/src/views/Incorporation/IncorporationAgreement.vue
+++ b/src/views/Incorporation/IncorporationAgreement.vue
@@ -264,9 +264,9 @@ import { Getter } from 'pinia-class'
import { useStore } from '@/store/store'
import AgreementType from '@/components/common/AgreementType.vue'
import { IncorporationAgreementIF } from '@/interfaces'
-import { CorpTypeCd, RouteNames } from '@/enums'
+import { RouteNames } from '@/enums'
import { CommonMixin } from '@/mixins'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
@Component({
components: {
diff --git a/src/views/Incorporation/IncorporationDefineCompany.vue b/src/views/Incorporation/IncorporationDefineCompany.vue
index 0a8a63541..8725d7335 100644
--- a/src/views/Incorporation/IncorporationDefineCompany.vue
+++ b/src/views/Incorporation/IncorporationDefineCompany.vue
@@ -182,7 +182,7 @@ import {
} from '@/interfaces'
import { CommonMixin } from '@/mixins'
import { CoopTypes, RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import BusinessContactInfo from '@/components/common/BusinessContactInfo.vue'
import CooperativeType from '@/components/Dissolution/CooperativeType.vue'
import FolioNumber from '@/components/common/FolioNumber.vue'
diff --git a/src/views/Restoration/RestorationBusinessInformation.vue b/src/views/Restoration/RestorationBusinessInformation.vue
index 524141bfe..38137c5c6 100644
--- a/src/views/Restoration/RestorationBusinessInformation.vue
+++ b/src/views/Restoration/RestorationBusinessInformation.vue
@@ -61,7 +61,7 @@ import { AddressIF, ContactPointIF, DefineCompanyIF, RegisteredRecordsAddressesI
from '@/interfaces'
import { CommonMixin } from '@/mixins'
import { RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import BusinessContactInfo from '@/components/common/BusinessContactInfo.vue'
import OfficeAddresses from '@/components/common/OfficeAddresses.vue'
diff --git a/src/views/Restoration/RestorationBusinessName.vue b/src/views/Restoration/RestorationBusinessName.vue
index 9293c3ac4..3919a6c37 100644
--- a/src/views/Restoration/RestorationBusinessName.vue
+++ b/src/views/Restoration/RestorationBusinessName.vue
@@ -69,7 +69,7 @@ import { Getter, Action } from 'pinia-class'
import { useStore } from '@/store/store'
import { CommonMixin } from '@/mixins'
import { RouteNames } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import ApprovalType from '@/components/Restoration/ApprovalType.vue'
import BusinessName from '@/components/Restoration/BusinessName.vue'
import BusinessType from '@/components/Restoration/BusinessType.vue'
diff --git a/tests/unit/AddEditOrgPerson.spec.ts b/tests/unit/AddEditOrgPerson.spec.ts
index 6c4b101ec..27f70d939 100644
--- a/tests/unit/AddEditOrgPerson.spec.ts
+++ b/tests/unit/AddEditOrgPerson.spec.ts
@@ -7,7 +7,8 @@ import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import AddEditOrgPerson from '@/components/common/AddEditOrgPerson.vue'
import { EmptyOrgPerson } from '@/interfaces'
-import { CorpTypeCd } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
+
import { vi } from 'vitest'
// mock the console.warn function to hide "[Vuetify] Unable to locate target XXX"
diff --git a/tests/unit/AgreementType.spec.ts b/tests/unit/AgreementType.spec.ts
index 4ee78c16f..1592c8311 100644
--- a/tests/unit/AgreementType.spec.ts
+++ b/tests/unit/AgreementType.spec.ts
@@ -1,8 +1,7 @@
import Vue from 'vue'
import { wrapperFactory } from '../jest-wrapper-factory'
import AgreementType from '@/components/common/AgreementType.vue'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
-import { GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
+import { CorpTypeCd, GetCorpFullDescription } from '@bcrs-shared-components/corp-type-module'
// Input field selectors to test changes to the DOM elements.
const typeSelector = '#agreement-type-'
diff --git a/tests/unit/CompleteResolution.spec.ts b/tests/unit/CompleteResolution.spec.ts
index 7aa127c65..6d37024b6 100644
--- a/tests/unit/CompleteResolution.spec.ts
+++ b/tests/unit/CompleteResolution.spec.ts
@@ -1,7 +1,7 @@
import { wrapperFactory } from '../jest-wrapper-factory'
import CompleteResolution from '@/components/Dissolution/CompleteResolution.vue'
import { DissolutionResources } from '@/resources'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
// Test Case Data
const completeResolutionTestCases = [
diff --git a/tests/unit/DissolutionStatement.spec.ts b/tests/unit/DissolutionStatement.spec.ts
index 1ba214a30..810936e04 100644
--- a/tests/unit/DissolutionStatement.spec.ts
+++ b/tests/unit/DissolutionStatement.spec.ts
@@ -2,7 +2,7 @@ import Vue from 'vue'
import { wrapperFactory } from '../jest-wrapper-factory'
import DissolutionStatement from '@/components/Dissolution/DissolutionStatement.vue'
import { DissolutionStatementTypes } from '@/enums'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { DissolutionResources } from '@/resources'
// Input field selectors to test changes to the DOM elements.
diff --git a/tests/unit/FileAndPayInvalidNameRequestDialog.spec.ts b/tests/unit/FileAndPayInvalidNameRequestDialog.spec.ts
index fc18b62e1..72e8a109d 100644
--- a/tests/unit/FileAndPayInvalidNameRequestDialog.spec.ts
+++ b/tests/unit/FileAndPayInvalidNameRequestDialog.spec.ts
@@ -3,7 +3,7 @@ import { shallowMount } from '@vue/test-utils'
import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import FileAndPayInvalidNameRequestDialog from '@/dialogs/FileAndPayInvalidNameRequestDialog.vue'
-import { CorpTypeCd } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { NameRequestIF } from '@bcrs-shared-components/interfaces'
const vuetify = new Vuetify({})
diff --git a/tests/unit/ListPeopleAndRoles.spec.ts b/tests/unit/ListPeopleAndRoles.spec.ts
index b6a5d2f2d..21e825d91 100644
--- a/tests/unit/ListPeopleAndRoles.spec.ts
+++ b/tests/unit/ListPeopleAndRoles.spec.ts
@@ -2,7 +2,8 @@ import { wrapperFactory, shallowWrapperFactory } from '../jest-wrapper-factory'
import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import ListPeopleAndRoles from '@/components/common/ListPeopleAndRoles.vue'
-import { CorpTypeCd, FilingTypes } from '@/enums'
+import { FilingTypes } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
setActivePinia(createPinia())
const store = useStore()
diff --git a/tests/unit/OfficeAddresses.spec.ts b/tests/unit/OfficeAddresses.spec.ts
index e57ec535f..ace479309 100644
--- a/tests/unit/OfficeAddresses.spec.ts
+++ b/tests/unit/OfficeAddresses.spec.ts
@@ -4,7 +4,7 @@ import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import { createLocalVue, shallowMount, mount } from '@vue/test-utils'
import OfficeAddresses from '@/components/common/OfficeAddresses.vue'
-import { CorpTypeCd } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
const vuetify = new Vuetify({})
setActivePinia(createPinia())
diff --git a/tests/unit/RegAddEditOrgPerson.spec.ts b/tests/unit/RegAddEditOrgPerson.spec.ts
index 6bb740325..3eb7308e5 100644
--- a/tests/unit/RegAddEditOrgPerson.spec.ts
+++ b/tests/unit/RegAddEditOrgPerson.spec.ts
@@ -7,7 +7,7 @@ import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import RegAddEditOrgPerson from '@/components/common/RegAddEditOrgPerson.vue'
import { EmptyOrgPerson } from '@/interfaces'
-import { CorpTypeCd } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { vi } from 'vitest'
// mock the console.warn function to hide "[Vuetify] Unable to locate target XXX"
diff --git a/tests/unit/RegPeopleAndRoles.spec.ts b/tests/unit/RegPeopleAndRoles.spec.ts
index b0c5d3fda..662ffb60f 100644
--- a/tests/unit/RegPeopleAndRoles.spec.ts
+++ b/tests/unit/RegPeopleAndRoles.spec.ts
@@ -9,7 +9,8 @@ import { RegistrationResourceSp } from '@/resources/Registration/SP'
import { RegistrationResourceGp } from '@/resources/Registration/GP'
import RegAddEditOrgPerson from '@/components/common/RegAddEditOrgPerson.vue'
import ListPeopleAndRoles from '@/components/common/ListPeopleAndRoles.vue'
-import { CorpTypeCd, RoleTypes } from '@/enums'
+import { RoleTypes } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { OrgPersonIF, ResourceIF } from '@/interfaces'
import { vi } from 'vitest'
diff --git a/tests/unit/RegistrationBusinessAddresses.spec.ts b/tests/unit/RegistrationBusinessAddresses.spec.ts
index 79e7f73e3..f652316e9 100644
--- a/tests/unit/RegistrationBusinessAddresses.spec.ts
+++ b/tests/unit/RegistrationBusinessAddresses.spec.ts
@@ -4,7 +4,7 @@ import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import { createLocalVue, shallowMount, mount } from '@vue/test-utils'
import BusinessAddresses from '@/components/Registration/BusinessAddresses.vue'
-import { CorpTypeCd } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
const vuetify = new Vuetify({})
setActivePinia(createPinia())
diff --git a/tests/unit/SummaryRestoreBusiness.spec.ts b/tests/unit/SummaryRestoreBusiness.spec.ts
index 36783edf2..6b826ee55 100644
--- a/tests/unit/SummaryRestoreBusiness.spec.ts
+++ b/tests/unit/SummaryRestoreBusiness.spec.ts
@@ -4,8 +4,9 @@ import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
import { mount } from '@vue/test-utils'
import SummaryRestoreBusiness from '@/components/Restoration/SummaryRestoreBusiness.vue'
-import { ApprovalTypes, CorpTypeCd, CorrectNameOptions, FilingTypes, RelationshipTypes, RestorationTypes }
+import { ApprovalTypes, CorrectNameOptions, FilingTypes, RelationshipTypes, RestorationTypes }
from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { vi } from 'vitest'
// mock the console.warn function to hide "[Vuetify] Unable to locate target XXX"
diff --git a/tests/unit/UploadAffidavit.spec.ts b/tests/unit/UploadAffidavit.spec.ts
index c3c1666c6..da47aca1e 100644
--- a/tests/unit/UploadAffidavit.spec.ts
+++ b/tests/unit/UploadAffidavit.spec.ts
@@ -2,7 +2,7 @@ import Vue from 'vue'
import { shallowWrapperFactory, wrapperFactory } from '../jest-wrapper-factory'
import Affidavit from '@/components/Dissolution/CompleteAffidavit.vue'
import { DissolutionResources } from '@/resources'
-import { CorpTypeCd } from '@bcrs-shared-components/enums/'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
// Test Case Data
const uploadAffidavitTestCases = [
diff --git a/tests/unit/filing-template-mixin.spec.ts b/tests/unit/filing-template-mixin.spec.ts
index 96a9dc032..cca4d14a5 100644
--- a/tests/unit/filing-template-mixin.spec.ts
+++ b/tests/unit/filing-template-mixin.spec.ts
@@ -2,7 +2,8 @@ import { wrapperFactory } from '../jest-wrapper-factory'
import MixinTester from '@/mixin-tester.vue'
import { createPinia, setActivePinia } from 'pinia'
import { useStore } from '@/store/store'
-import { BusinessTypes, CorpTypeCd, PartyTypes, RoleTypes } from '@/enums'
+import { BusinessTypes, PartyTypes, RoleTypes } from '@/enums'
+import { CorpTypeCd } from '@bcrs-shared-components/corp-type-module'
import { NameRequestIF } from '@/interfaces'
setActivePinia(createPinia())
|