feat: add task duplicate frontend model and service
This commit is contained in:
parent
4d494ba442
commit
52bee379d4
|
|
@ -0,0 +1,7 @@
|
|||
import type {IAbstract} from './IAbstract'
|
||||
import type {ITask} from './ITask'
|
||||
|
||||
export interface ITaskDuplicate extends IAbstract {
|
||||
taskId: number
|
||||
duplicatedTask: ITask | null
|
||||
}
|
||||
|
|
@ -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
|
||||
}
|
||||
}
|
||||
|
|
@ -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)
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue