feat: add task duplicate frontend model and service

This commit is contained in:
kolaente 2026-03-04 16:03:44 +01:00
parent 4d494ba442
commit 52bee379d4
3 changed files with 39 additions and 0 deletions

View File

@ -0,0 +1,7 @@
import type {IAbstract} from './IAbstract'
import type {ITask} from './ITask'
export interface ITaskDuplicate extends IAbstract {
taskId: number
duplicatedTask: ITask | null
}

View File

@ -0,0 +1,17 @@
import AbstractModel from './abstractModel'
import TaskModel from './task'
import type {ITaskDuplicate} from '@/modelTypes/ITaskDuplicate'
import type {ITask} from '@/modelTypes/ITask'
export default class TaskDuplicateModel extends AbstractModel<ITaskDuplicate> implements ITaskDuplicate {
taskId = 0
duplicatedTask: ITask | null = null
constructor(data: Partial<ITaskDuplicate>) {
super()
this.assignData(data)
this.duplicatedTask = this.duplicatedTask ? new TaskModel(this.duplicatedTask) : null
}
}

View File

@ -0,0 +1,15 @@
import AbstractService from './abstractService'
import TaskDuplicateModel from '@/models/taskDuplicateModel'
import type {ITaskDuplicate} from '@/modelTypes/ITaskDuplicate'
export default class TaskDuplicateService extends AbstractService<ITaskDuplicate> {
constructor() {
super({
create: '/tasks/{taskId}/duplicate',
})
}
modelFactory(data: Partial<ITaskDuplicate>) {
return new TaskDuplicateModel(data)
}
}