372 lines
15 KiB
HTML
372 lines
15 KiB
HTML
<div class="app-content content" style="background-color: #000000 !important">
|
|
<div class="content-wrapper">
|
|
<div class="content-header row mb-1">
|
|
<app-breadcrumb class="col-12" [breadcrumb]="breadcrumb"></app-breadcrumb>
|
|
</div>
|
|
<div class="content-body">
|
|
<section id="configuration">
|
|
<div class="row">
|
|
<div class="col-lg-4 col-12">
|
|
<div
|
|
class="card pull-up"
|
|
style="background-color: #252525 !important"
|
|
>
|
|
<div class="card-content">
|
|
<div class="card-body">
|
|
<div class="media d-flex">
|
|
<div class="media-body text-left">
|
|
<h6 class="text-muted" style="color: #ffffff !important">
|
|
Total Device
|
|
</h6>
|
|
<h3 style="color: #ffffff !important">
|
|
{{ filteredRows.length }}
|
|
</h3>
|
|
</div>
|
|
<div class="align-self-center">
|
|
<i
|
|
class="feather ft-zap primary font-large-2 float-right"
|
|
></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-lg-4 col-12">
|
|
<div
|
|
class="card pull-up"
|
|
style="background-color: #252525 !important"
|
|
>
|
|
<div class="card-content">
|
|
<div class="card-body">
|
|
<div class="media d-flex">
|
|
<div class="media-body text-left">
|
|
<h6 class="text-light" style="color: #ffffff !important">
|
|
Total Device Aktive
|
|
</h6>
|
|
<h3 style="color: #ffffff !important">{{ totalOn }}</h3>
|
|
</div>
|
|
<div class="align-self-center">
|
|
<i
|
|
class="feather ft-wifi success font-large-2 float-right"
|
|
></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-lg-4 col-12">
|
|
<div
|
|
class="card pull-up"
|
|
style="background-color: #252525 !important"
|
|
>
|
|
<div class="card-content">
|
|
<div class="card-body">
|
|
<div class="media d-flex">
|
|
<div class="media-body text-left">
|
|
<h6 class="text-muted" style="color: #ffffff !important">
|
|
Total Device Non-Active
|
|
</h6>
|
|
<h3 style="color: #ffffff !important">{{ totalOff }}</h3>
|
|
</div>
|
|
<div class="align-self-center">
|
|
<i
|
|
class="feather ft-wifi-off danger font-large-2 float-right"
|
|
></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
|
|
<section id="configuration">
|
|
<div class="row">
|
|
<div class="col-12">
|
|
<div class="card" style="background-color: #252525 !important">
|
|
<div class="card-content">
|
|
<div class="card-body">
|
|
<div class="row mb-2">
|
|
<div class="col-2">
|
|
<div class="form-group">
|
|
<ng-select
|
|
class="select-custom"
|
|
[items]="singleSelectArray"
|
|
[searchable]="true"
|
|
bindLabel="item_text"
|
|
placeholder="Select Building"
|
|
[(ngModel)]="singlebasicSelected"
|
|
>
|
|
</ng-select>
|
|
</div>
|
|
</div>
|
|
<div class="col-2">
|
|
<div class="form-group">
|
|
<ng-select
|
|
class="select-custom"
|
|
[items]="singleSelectArray"
|
|
[searchable]="true"
|
|
bindLabel="item_text"
|
|
placeholder="Select Type"
|
|
[(ngModel)]="singlebasicSelected"
|
|
>
|
|
</ng-select>
|
|
</div>
|
|
</div>
|
|
<div class="col-2">
|
|
<div class="form-group">
|
|
<ng-select
|
|
class="select-custom"
|
|
[items]="singleSelectArray"
|
|
[searchable]="true"
|
|
bindLabel="item_text"
|
|
placeholder="Select Category"
|
|
[(ngModel)]="singlebasicSelected"
|
|
>
|
|
</ng-select>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="col-2 text-left">
|
|
<button
|
|
type="button"
|
|
class="btn btn-success mr-1"
|
|
style="
|
|
background-color: #252525 !important;
|
|
border-color: #bef264 !important;
|
|
"
|
|
>
|
|
<i
|
|
class="la la-search"
|
|
style="color: #ffffff !important"
|
|
></i>
|
|
</button>
|
|
</div>
|
|
<div class="col-2">
|
|
|
|
</div>
|
|
|
|
<div class="col-2 text-right">
|
|
<button
|
|
class="btn btn-secondary"
|
|
[disabled]="spinnerActive"
|
|
(click)="addDevice()"
|
|
style="
|
|
background-color: #bef264 !important;
|
|
border-color: #bef264 !important;
|
|
color: #000000 !important;
|
|
"
|
|
>
|
|
<i
|
|
class="la la-spinner spinner"
|
|
*ngIf="spinnerActive"
|
|
></i>
|
|
<i class="feather ft-plus" *ngIf="!spinnerActive"></i
|
|
>
|
|
<span style="font-weight: 600">Synchronization</span>
|
|
</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="card-dashboard">
|
|
<ngx-datatable
|
|
class="bootstrap table-bordered"
|
|
[limit]="5"
|
|
[rows]="filteredRows"
|
|
[columnMode]="'force'"
|
|
[headerHeight]="50"
|
|
[footerHeight]="50"
|
|
[rowHeight]="50"
|
|
fxFlex="auto"
|
|
[scrollbarH]="true"
|
|
>
|
|
<ngx-datatable-column
|
|
name="#"
|
|
[flexGrow]="1"
|
|
[minWidth]="10"
|
|
>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-rowIndex="rowIndex"
|
|
>
|
|
{{ rowIndex + 1 }}
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="icon"
|
|
[flexGrow]="1"
|
|
[minWidth]="140"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Image</span>
|
|
</ng-template>
|
|
<ng-template ngx-datatable-cell-template let-row="row">
|
|
<span class="avatar avatar-sm rounded-circle">
|
|
<img [src]="row.icon" /><i></i
|
|
></span>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="Name"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important"
|
|
>Device Name</span
|
|
>
|
|
</ng-template>
|
|
<ng-template
|
|
let-value="value"
|
|
ngx-datatable-cell-template
|
|
>
|
|
<p style="color: #ffffff !important">{{ value }}</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="categoryEntity"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important"
|
|
>Category</span
|
|
>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-value="value"
|
|
>
|
|
<p style="color: #ffffff !important">
|
|
{{ value.name }}
|
|
</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="watt"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Watt</span>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-value="value"
|
|
>
|
|
<p style="color: #ffffff !important">{{ value }}</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="typeEntity"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Type</span>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-value="value"
|
|
>
|
|
<p style="color: #ffffff !important">
|
|
{{ value.name }}
|
|
</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="voltageEntity"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Voltage</span>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-value="value"
|
|
>
|
|
<p style="color: #ffffff !important">
|
|
{{ value.name }}
|
|
</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="statusEntity"
|
|
[flexGrow]="1"
|
|
[minWidth]="90"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Status</span>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-value="value"
|
|
>
|
|
<p style="color: #ffffff !important">
|
|
{{ value.name }}
|
|
</p>
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
<ngx-datatable-column
|
|
name="Actions"
|
|
[flexGrow]="1"
|
|
[minWidth]="150"
|
|
>
|
|
<ng-template ngx-datatable-header-template>
|
|
<span style="color: #ffffff !important">Actions</span>
|
|
</ng-template>
|
|
<ng-template
|
|
ngx-datatable-cell-template
|
|
let-rowIndex="rowIndex"
|
|
let-row="row"
|
|
>
|
|
<button
|
|
class="btn btn-sm btn-info mr-1"
|
|
style="
|
|
background-color: #000000 !important;
|
|
border-color: #bef264 !important;
|
|
"
|
|
(click)="viewRow(row)"
|
|
>
|
|
<i
|
|
class="ficon feather ft-eye"
|
|
style="color: #bef264 !important"
|
|
></i>
|
|
</button>
|
|
<button
|
|
class="btn btn-sm btn-warning mr-1"
|
|
style="
|
|
background-color: #000000 !important;
|
|
border-color: #bef264 !important;
|
|
"
|
|
(click)="editRow(row)"
|
|
>
|
|
<i
|
|
class="ficon feather ft-edit"
|
|
style="color: #bef264 !important"
|
|
></i>
|
|
</button>
|
|
<!-- <button
|
|
class="btn btn-sm btn-danger"
|
|
(click)="deleteRow(row)"
|
|
>
|
|
<i class="ficon feather ft-trash-2"></i>
|
|
</button> -->
|
|
</ng-template>
|
|
</ngx-datatable-column>
|
|
</ngx-datatable>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</div>
|
|
</div>
|
|
</div>
|