import { Component, Injector, OnInit, ViewChild, ViewEncapsulation, Input } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; import { appModuleAnimation } from '@shared/animations/routerTransition'; import { AppComponentBase } from '@shared/common/app-component-base'; import { ControllerRouteDetailServiceProxy, ControllerOrderPackagesListServiceProxy} from '@shared/service-proxies/service-proxies'; import { AppSessionService } from '@shared/common/session/app-session.service'; import { Table } from "primeng/table"; import { LazyLoadEvent } from "primeng/primeng"; import { Paginator } from 'primeng/components/paginator/paginator'; import { finalize } from 'rxjs/operators'; import * as _ from 'lodash'; import * as moment from 'moment'; import {Location} from '@angular/common'; declare var $: any; declare var jquery:any; @Component({ selector:'order-packages-tab', templateUrl: 'order-packages-list.component.html', encapsulation: ViewEncapsulation.None, animations: [appModuleAnimation()], styleUrls: ['./order-packages-list.component.less'], providers: [ControllerOrderPackagesListServiceProxy] }) export class ControllerOrderPackagesComponent extends AppComponentBase implements OnInit { routeId:number = null; formattedOrderPackagesDateTime: any formattedOrderPackagesPickupBy: any formattedOrderPackagesDeliveryBy: any filterText: any filterOrderTag: any filterAccountNumber: any advancedFiltersAreShown=false @ViewChild("dataTable", {static: true}) dataTable:Table @ViewChild("paginator", {static: true}) paginator: Paginator @Input() filters: { locationFilter: number; statusFilter: number; typeFilter: number; startDate: Date; endDate: Date; orderStatusCode: string } = {}; @Input() edition: any filterOrderId: number filterId: number constructor( injector: Injector, private id:ActivatedRoute, private _controllerRouteDetails: ControllerRouteDetailServiceProxy, private _controllerOrderPackages: ControllerOrderPackagesListServiceProxy, private _appSessionService :AppSessionService, private _location:Location ) { super(injector); } ngOnInit(){ // this.id.paramMap.subscribe(params => { // this.routeId = Number(params.get('id')); // }); } getOrderPackages(event?: LazyLoadEvent) : void { // this.filters.startDate = new Date(this.filters.startDate.toString()); // this.filters.endDate = new Date(this.filters.endDate.toString()); // let startDate = moment(moment(this.filters.startDate).format('YYYY-MM-DD HH:mm:ss')); // let endDate = moment(moment(this.filters.endDate).format('YYYY-MM-DD HH:mm:ss')); // let startDateA = startDate['_i'].split(' '); // startDateA = startDateA[0] + ' ' + '00:00:00'; // let endDateA = endDate['_i'].split(' '); // endDateA = endDateA[0] + ' ' + '23:59:59'; // let locationFilter = this.filters.locationFilter; // let startDate2 = moment.utc(moment(startDateA).toISOString()); // let endDate2 = moment.utc(moment(endDateA).toISOString()); let date = moment(this.filters.endDate) let timeId = localStorage.getItem('timeZoneId'); moment.tz.setDefault(timeId); if (this.primengTableHelper.shouldResetPaging(event)) { this.paginator.changePage(0); return; } this.spinnerService.show(); this._controllerOrderPackages .getControllerOrderPackagesList( this.filterText, this.filters.orderStatusCode, this.filterOrderId, this.filterId, this.filters.locationFilter, undefined, undefined, this.filterOrderTag, this.filterAccountNumber, undefined, moment.tz(localStorage.getItem('loadDate'), timeId), this.primengTableHelper.getSorting(this.dataTable), this.primengTableHelper.getMaxResultCount(this.paginator, event), this.primengTableHelper.getSkipCount(this.paginator, event)) .pipe(finalize(() => this.spinnerService.hide())).subscribe(result => { // if (result.items.length != 0) { // this.formattedOrderPackagesDateTime = moment(result.items[0]['order']['orderStatus']['time']).format('MMMM Do YYYY, h:mm a') // this.formattedOrderPackagesPickupBy = moment(result.items[0]['order']['pickupDetail']['etaStart']).format('MMMM Do YYYY, h:mm a') // this.formattedOrderPackagesDeliveryBy = moment(result.items[0]['order']['deliveryDetail']['etaEnd']).format('MMMM Do YYYY, h:mm a') // } this.primengTableHelper.totalRecordsCount = result.totalCount; this.primengTableHelper.records = result.items; this.spinnerService.hide(); }); } // toggleMoreInfo(event){ // var element = event.currentTarget.nextSibling; // var selector = document.querySelectorAll('.more-info-container.active'); // var hover = document.querySelectorAll('.more-btn.hover'); // if(element.classList.contains('active')){ // event.currentTarget.classList.remove('hover'); // element.classList.remove('active'); // } else { // if(selector.length > 0){ // selector[0].classList.remove('active'); // hover[0].classList.remove('hover'); // // event.currentTarget.classList.remove('hover'); // } // element.classList.add('active'); // event.currentTarget.classList.add('hover'); // } // } onShown(){ } }