import { Component, OnInit } from '@angular/core'; import { MenuItem } from 'primeng/api'; import { OrdersService } from '../../services/orders/orders.service'; import { CookieService } from 'ngx-cookie-service'; @Component({ selector: 'app-orders', templateUrl: './orders.component.html', styleUrls: ['./orders.component.scss'] }) export class OrdersComponent implements OnInit { cols: any; items: MenuItem[]; companyId: number; orders: any = []; orderTempList: any = []; searchQuer:string; pageSizeOptions:any; recordsCount:any; searchQuery:string; constructor(private ordersService: OrdersService, private cookieService: CookieService) { this.getTheTabsItem(); } ngOnInit() { this.companyId = +this.cookieService.get('CompanyId'); this.getOrders(); this.getTableColums(); } getTableColums() { this.cols = [ { field: '', header: '' }, { field: 'OrderID', header: 'Order ID' }, { field: 'Customer', header: 'Customer' }, { field: 'Date', header: 'Date' }, { field: 'Status', header: 'Status' }, { field: 'Total', header: 'Total' }, { field: '', header: '' }, ]; } getTheTabsItem() { // show page tab list this.items = [ { label: 'All', command: (event) => { this.getOrders(); } }, { label: 'Awaiting Payment', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Awaiting Payment") } }, { label: 'Awaiting Fulfilment', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Awaiting Fulfilment") } }, { label: 'High Risk', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "High Risk") } }, { label: 'Pre Orders', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Pre Orders") } }, { label: 'Incomplet', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Incomplete") } }, { label: 'Archived', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Archived") } }, { label: 'Refunded', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Refunded") } }, { label: 'Shipped', command: (event) => { this.orders = this.orderTempList; this.orders = this.orders.filter(item => item.Status === "Shipped") } } ]; } // Get all orders getOrders() { this.ordersService.GetAllOrders(this.companyId) .subscribe(res => { this.orders = res; this.orderTempList = res; console.log("Order responce", res) }, error => { console.log("Error", error) }) } // Copy order copyOrder(id) { this.ordersService.CopyOrder(id, this.companyId) .subscribe(res => { this.getOrders(); console.log("Coppied order", res) }, error => { console.log("Error", error) }) } // Delete order deleteOrder(id) { this.ordersService.DeleteOrder(id, this.companyId) .subscribe(res => { this.getOrders(); console.log("Deleted order", res) }, error => { console.log("Error", error) }) } clickTab(){ } }