Migrated "applyFilterParameters" and related code to the table-component base
This commit is contained in:
parent
83be7aeb1c
commit
b9da373c8d
|
@ -11,14 +11,11 @@ import { SprintFormComponent } from '../../sprint-form/sprint-form.component';
|
|||
styleUrls: ['./sprint-table.component.css']
|
||||
})
|
||||
export class SprintTableComponent extends TableComponentBase<ScrumSprint> {
|
||||
public highlightId: number;
|
||||
|
||||
|
||||
constructor(
|
||||
private backendService: BackendService, private modalService: NgbModal,
|
||||
private route: ActivatedRoute, private router: Router
|
||||
protected route: ActivatedRoute, private router: Router
|
||||
) {
|
||||
super();
|
||||
super(route);
|
||||
|
||||
backendService.getSprints().subscribe(response => {
|
||||
if (response.status > 399) {
|
||||
|
|
|
@ -1,10 +1,26 @@
|
|||
import {sortByNumberAscending, sortByStringAscending, sortByDateAscending} from '../../services/sorting.service';
|
||||
import {Priority, ScrumTask, ScrumUserstory, ScrumSprint} from '../../services/backend.service';
|
||||
import { ActivatedRoute, ParamMap } from '@angular/router';
|
||||
|
||||
export abstract class TableComponentBase<T extends ScrumTask | ScrumUserstory | ScrumSprint> {
|
||||
public sortBy: string;
|
||||
public sortDescending = false;
|
||||
public items: T[] = [];
|
||||
public highlightId: number;
|
||||
protected route: ActivatedRoute;
|
||||
|
||||
public constructor(route: ActivatedRoute)
|
||||
{
|
||||
this.route = route;
|
||||
this.applyFilterParameters(this.route.snapshot.paramMap);
|
||||
this.route.paramMap.subscribe((map) => this.applyFilterParameters(map));
|
||||
}
|
||||
|
||||
private applyFilterParameters(params: ParamMap) {
|
||||
if (params.has('id')) {
|
||||
this.highlightId = parseInt(params.get('id'));
|
||||
}
|
||||
}
|
||||
|
||||
protected doNumericSort(by: string, key: (item: T) => number) {
|
||||
if (this.sortBy === by) {
|
||||
|
|
|
@ -21,7 +21,6 @@ import { NONE_TYPE } from '@angular/compiler';
|
|||
export class TaskTableComponent extends TableComponentBase<ScrumTask> {
|
||||
public filterUserstoryId: number | null = null;
|
||||
public filterPriority: string | null = null;
|
||||
public highlightId: number;
|
||||
public status: ScrumStatus[] = [];
|
||||
public users: ScrumUser[] = [];
|
||||
public categories: ScrumCategory[] = [];
|
||||
|
@ -29,13 +28,10 @@ export class TaskTableComponent extends TableComponentBase<ScrumTask> {
|
|||
constructor(
|
||||
private backendService: BackendService,
|
||||
private modalService: NgbModal,
|
||||
private route: ActivatedRoute,
|
||||
protected route: ActivatedRoute,
|
||||
private router: Router
|
||||
) {
|
||||
super();
|
||||
|
||||
this.applyFilterParameters(route.snapshot.paramMap);
|
||||
route.paramMap.subscribe((map) => this.applyFilterParameters(map));
|
||||
super(route);
|
||||
|
||||
backendService.getTasks().subscribe((response) => {
|
||||
if (response.status > 399) {
|
||||
|
@ -114,17 +110,6 @@ export class TaskTableComponent extends TableComponentBase<ScrumTask> {
|
|||
this.items.splice(index, 1);
|
||||
}
|
||||
}
|
||||
|
||||
private applyFilterParameters(params: ParamMap) {
|
||||
if (params.has('userstoryId')) {
|
||||
this.filterUserstoryId = parseInt(params.get('userstoryId'));
|
||||
} else {
|
||||
this.filterUserstoryId = null;
|
||||
}
|
||||
if (params.has('id')) {
|
||||
this.highlightId = parseInt(params.get('id'));
|
||||
}
|
||||
}
|
||||
//#endregion taskTableFunctions
|
||||
|
||||
//#region sorters
|
||||
|
|
|
@ -20,7 +20,6 @@ import { ActivatedRoute, ParamMap, Router } from '@angular/router';
|
|||
export class UserstoryInnerTableComponent extends TableComponentBase<ScrumUserstory> {
|
||||
public tasks: ScrumTask[] = [];
|
||||
public filterPriority: string | null = null;
|
||||
public highlightId: number;
|
||||
public status: ScrumStatus[] = [];
|
||||
public categories: ScrumCategory[] = [];
|
||||
|
||||
|
@ -29,9 +28,9 @@ export class UserstoryInnerTableComponent extends TableComponentBase<ScrumUserst
|
|||
constructor(
|
||||
private backendService: BackendService,
|
||||
private modalService: NgbModal,
|
||||
private route: ActivatedRoute,
|
||||
protected route: ActivatedRoute,
|
||||
) {
|
||||
super();
|
||||
super(route);
|
||||
this.items = this.storys;
|
||||
backendService.getUserstories().subscribe((response) => {
|
||||
if (response.status > 399) {
|
||||
|
@ -91,12 +90,6 @@ export class UserstoryInnerTableComponent extends TableComponentBase<ScrumUserst
|
|||
//#endregion getters
|
||||
|
||||
//#region userstoryTableFunctions
|
||||
private applyFilterParameters(params: ParamMap) {
|
||||
if (params.has('id')) {
|
||||
this.highlightId = parseInt(params.get('id'));
|
||||
}
|
||||
}
|
||||
|
||||
public deleteUserstory(userstory: ScrumUserstory) {
|
||||
this.backendService.deleteUserstory(userstory).subscribe((response) => {
|
||||
if (response.status > 399) {
|
||||
|
|
Loading…
Reference in New Issue