Feature: Changed the unposted report to entries report with paging, sorting, etc.

This commit is contained in:
2021-09-14 12:49:01 +05:30
parent d34c8ea0a4
commit 176559466a
35 changed files with 776 additions and 518 deletions
@@ -0,0 +1,38 @@
import { Injectable } from '@angular/core';
import { ActivatedRouteSnapshot, Resolve } from '@angular/router';
import { Observable } from 'rxjs/internal/Observable';
import { EntriesService } from './entries.service';
import { Report } from './report';
@Injectable({
providedIn: 'root',
})
export class EntriesResolver implements Resolve<Report> {
constructor(private ser: EntriesService) {}
resolve(route: ActivatedRouteSnapshot): Observable<Report> {
const start_date = route.queryParamMap.get('s');
const finish_date = route.queryParamMap.get('f');
const posted =
route.queryParamMap.get('p') === null ? null : route.queryParamMap.get('p') === 'true';
const page_size =
route.queryParamMap.get('ps') === null ? 50 : +(route.queryParamMap.get('ps') as string);
const page_index =
route.queryParamMap.get('pi') === null ? 0 : +(route.queryParamMap.get('pi') as string);
const sort = route.queryParamMap.get('a') ?? 'date';
const direction = route.queryParamMap.get('d') ?? 'desc';
const issue_vouchers =
route.queryParamMap.get('i') === null ? false : route.queryParamMap.get('i') === 'true';
return this.ser.list(
start_date,
finish_date,
posted,
page_size,
page_index,
sort,
direction,
issue_vouchers,
);
}
}