Implement ticket statuses

This commit is contained in:
2026-04-14 03:09:12 +02:00
parent 2dc12c5d60
commit 8f4a8276ac
40 changed files with 1602 additions and 100 deletions
@@ -1,10 +1,12 @@
import type { TicketModel } from '@/types/models/ticket-model';
import type { TicketStatusModel } from '@/types/models/ticket-status-model';
export type BoardColumnModel = {
id: number;
name: string;
position: number;
project_id: number;
ticket_statuses?: TicketStatusModel[];
tickets?: TicketModel[];
created_at: string;
updated_at: string;
+3 -1
View File
@@ -1,5 +1,6 @@
import type { TicketFieldValueModel } from '@/types/models/ticket-field-value-model';
import type { TicketPriorityModel } from '@/types/models/ticket-priority-model';
import type { TicketStatusModel } from '@/types/models/ticket-status-model';
import type { TicketTypeModel } from '@/types/models/ticket-type-model';
import type { TicketWorklogEntryModel } from '@/types/models/ticket-worklog-entry-model';
import type { UserModel } from '@/types/models/user-model';
@@ -11,7 +12,6 @@ export type TicketModel = {
assignee_user_id: number | null;
author: UserModel | null;
author_user_id: number | null;
board_column_id: number | null;
blocked_comment: string | null;
description: string | null;
field_values?: TicketFieldValueModel[];
@@ -22,6 +22,8 @@ export type TicketModel = {
ticket_key: string;
ticket_priority: TicketPriorityModel;
ticket_priority_id: number;
ticket_status: TicketStatusModel | null;
ticket_status_id: number | null;
ticket_type: TicketTypeModel;
ticket_type_id: number;
title: string;
@@ -0,0 +1,14 @@
import type { BoardColumnModel } from '@/types/models/board-column-model';
export type TicketStatusModel = {
id: number;
allowed_target_statuses?: TicketStatusModel[];
board_column?: BoardColumnModel | null;
board_column_id: number | null;
name: string;
position: number;
project_id: number;
slug: string;
created_at: string;
updated_at: string;
};
+4 -1
View File
@@ -11,6 +11,7 @@ import type { TicketReferenceModel } from '@/types/models/ticket-reference-model
import type { TicketRepositoryPullRequestModel } from '@/types/models/ticket-repository-pull-request-model';
import type { TicketModel } from '@/types/models/ticket-model';
import type { TicketPriorityModel } from '@/types/models/ticket-priority-model';
import type { TicketStatusModel } from '@/types/models/ticket-status-model';
import type { TicketTreeNodeModel } from '@/types/models/ticket-tree-node-model';
import type { TicketTypeModel } from '@/types/models/ticket-type-model';
import type { UserGitConnectionModel } from '@/types/models/user-git-connection-model';
@@ -58,6 +59,7 @@ export type TeamsIndexPageProps = {
};
export type ProjectBoardSettingsPageProps = {
backlogTicketStatuses: TicketStatusModel[];
boardColumns: BoardColumnModel[];
project: ProjectModel;
status?: string | null;
@@ -99,12 +101,13 @@ export type ProjectRepositorySettingsPageProps = {
};
export type ProjectBacklogPageProps = {
boardColumns: BoardColumnModel[];
backlogTicketStatuses: TicketStatusModel[];
canCreateTickets: boolean;
canEditTickets: boolean;
project: ProjectModel;
status?: string | null;
ticketPriorities: TicketPriorityModel[];
ticketStatusOptions: TicketStatusModel[];
tickets: TicketModel[];
ticketTypes: TicketTypeModel[];
users: UserModel[];