85 lines
2.0 KiB
TypeScript
85 lines
2.0 KiB
TypeScript
import { Component, OnInit } from '@angular/core';
|
|
import { Router } from '@angular/router';
|
|
import { BlockUI, NgBlockUI } from 'ng-block-ui';
|
|
import { TableApiService } from 'src/app/_services/table-api.service';
|
|
|
|
@Component({
|
|
selector: 'app-cost-management',
|
|
templateUrl: './cost-management.component.html',
|
|
styleUrls: ['./cost-management.component.css']
|
|
})
|
|
export class CostManagementComponent implements OnInit{
|
|
public breadcrumb: any;
|
|
data: any;
|
|
filteredRows: any[];
|
|
searchTerm: string = "";
|
|
rows: any = [];
|
|
@BlockUI("zeroConfiguration") blockUIZeroConfiguration: NgBlockUI;
|
|
|
|
constructor(
|
|
private tableApiservice: TableApiService,
|
|
private router: Router
|
|
) {}
|
|
|
|
ngOnInit() {
|
|
this.breadcrumb = {
|
|
mainlabel: "Cost Management",
|
|
links: [
|
|
{
|
|
name: "Home",
|
|
isLink: false,
|
|
},
|
|
{
|
|
name: "Cost Management",
|
|
isLink: false,
|
|
},
|
|
],
|
|
};
|
|
this.fetchData();
|
|
}
|
|
|
|
fetchData() {
|
|
this.tableApiservice.getTableInitialisationData().subscribe((response) => {
|
|
this.data = response;
|
|
this.filteredRows = this.data.rows;
|
|
});
|
|
}
|
|
|
|
filterRows() {
|
|
if (!this.searchTerm) {
|
|
this.filteredRows = [...this.data.rows];
|
|
} else {
|
|
this.filteredRows = this.data.rows.filter((row) =>
|
|
this.rowContainsSearchTerm(row)
|
|
);
|
|
}
|
|
}
|
|
|
|
rowContainsSearchTerm(row: any): boolean {
|
|
const searchTermLC = this.searchTerm.toLowerCase();
|
|
return Object.values(row).some(
|
|
(value) =>
|
|
value !== null &&
|
|
value.toString().toLowerCase().includes(searchTermLC)
|
|
);
|
|
}
|
|
|
|
viewRow(row) {
|
|
console.log("View row:", row);
|
|
this.router.navigate(["/device/view", row.name]);
|
|
}
|
|
|
|
editRow(row) {
|
|
console.log("Edit row:", row);
|
|
this.router.navigate(["/device/edit", row.name]);
|
|
}
|
|
|
|
deleteRow(row) {
|
|
console.log("Delete row:", row);
|
|
}
|
|
|
|
onTouchStart(event: Event) {
|
|
event.preventDefault(); // Add this if necessary
|
|
}
|
|
}
|