import {Injectable} from '@angular/core'; import {ActivatedRouteSnapshot, Resolve, RouterStateSnapshot} from '@angular/router'; import {Observable} from 'rxjs/internal/Observable'; import {DiscountReport} from './discount-report'; import {DiscountReportService} from './discount-report.service'; @Injectable({ providedIn: 'root' }) export class DiscountReportResolver implements Resolve { constructor(private ser: DiscountReportService) { } resolve(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable { const startDate = route.queryParamMap.get('startDate') || null; const finishDate = route.queryParamMap.get('finishDate') || null; return this.ser.get(startDate, finishDate); } }