mirror of
https://github.com/hcengineering/platform.git
synced 2026-09-06 09:47:43 +02:00
fix(tracker): make Project.defaultIssueStatus optional (#10598)
defaultIssueStatus is not reliably populated for all projects.Make the field optional in the type definition and guard the migration to handle undefined values. Signed-off-by: Igor Loskutov <igor.loskutoff@gmail.com>
This commit is contained in:
@@ -200,10 +200,12 @@ async function migrateDefaultStatuses (client: MigrationClient, logger: ModelLog
|
||||
// 1. defaultIssueStatus
|
||||
// 2. DocUpdateMessage:update:defaultIssueStatus
|
||||
for (const project of projects) {
|
||||
const newDefaultIssueStatus = getNewStatus(project.defaultIssueStatus)
|
||||
if (project.defaultIssueStatus != null) {
|
||||
const newDefaultIssueStatus = getNewStatus(project.defaultIssueStatus)
|
||||
|
||||
if (project.defaultIssueStatus !== newDefaultIssueStatus) {
|
||||
await client.update(DOMAIN_SPACE, { _id: project._id }, { defaultIssueStatus: newDefaultIssueStatus })
|
||||
if (project.defaultIssueStatus !== newDefaultIssueStatus) {
|
||||
await client.update(DOMAIN_SPACE, { _id: project._id }, { defaultIssueStatus: newDefaultIssueStatus })
|
||||
}
|
||||
}
|
||||
|
||||
const projectUpdateMessages = await client.find<DocUpdateMessage>(DOMAIN_ACTIVITY, {
|
||||
|
||||
@@ -126,7 +126,7 @@ export class TProject extends TTaskProject implements Project {
|
||||
sequence!: number
|
||||
|
||||
@Prop(TypeRef(tracker.class.IssueStatus), tracker.string.DefaultIssueStatus)
|
||||
defaultIssueStatus!: Ref<IssueStatus>
|
||||
defaultIssueStatus?: Ref<IssueStatus>
|
||||
|
||||
@Prop(TypeRef(contact.mixin.Employee), tracker.string.DefaultAssignee)
|
||||
defaultAssignee!: Ref<Employee>
|
||||
|
||||
@@ -61,7 +61,7 @@ export interface IssueStatus extends Status {}
|
||||
export interface Project extends TaskProject, IconProps {
|
||||
identifier: string // Project identifier
|
||||
sequence: number
|
||||
defaultIssueStatus: Ref<IssueStatus>
|
||||
defaultIssueStatus?: Ref<IssueStatus>
|
||||
defaultAssignee?: Ref<Employee>
|
||||
defaultTimeReportDay: TimeReportDayType
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user