[{"__symbolic":"module","version":4,"metadata":{"AlarmRegistrationComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../../../../shared/configure-component-base","name":"ConfigureComponentBase","line":37,"character":48},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":31,"character":1},"arguments":[{"selector":"alarm-registration","template":"<div class=\"portlet-input designer-registretion\"> <div class=\"row alarm-registeration-operation\"> <div class=\"col-lg-12 operation-filter\"> <div class=\"col-lg-2 operation-filter-select\"> <ng-select name=\"alarmDataSource\" [items]=\"alarmDataSourceTypes\" bindLabel=\"name\" bindValue=\"key\" [searchable]=\"true\" [placeholder]=\"lc('AllAlarmSource')\" [(ngModel)]=\"selectedAlarmDataSource\" [clearable]=\"true\" (change)=\"loadAlarmDefsAndRemoveAllSelected()\" [notFoundText]=\"l('NoData')\"> <ng-template ng-option-tmp ng-label-tmp let-item=\"item\"> {{item.name}} </ng-template> </ng-select> </div> <div class=\"col-lg-2 operation-filter-select\"> <ng-select name=\"alarmLevel\" [items]=\"alarmLevelsData\" bindLabel=\"key\" bindValue=\"value\" [searchable]=\"true\" [placeholder]=\"lc('AllAlarmLevel')\" [(ngModel)]=\"selectedAlarmLevel\" [clearable]=\"true\" (change)=\"loadAlarmDefsAndRemoveAllSelected()\" [notFoundText]=\"l('NoData')\"> <ng-template ng-option-tmp ng-label-tmp let-item=\"item\"> {{lc(item.key)}} </ng-template> </ng-select> </div> <div class=\"col-lg-2 operation-filter-select\"> <ng-select name=\"groupSelect\" [items]=\"groupList\" bindLabel=\"name\" bindValue=\"id\" [searchable]=\"true\" [placeholder]=\"lc('AllAlarmGroup')\" [(ngModel)]=\"selectedGroupId\" [clearable]=\"true\" (change)=\"loadAlarmsAndClearSelectedItems()\" [notFoundText]=\"l('NoData')\"> <ng-template ng-option-tmp ng-label-tmp let-item=\"item\"> {{item.name}} </ng-template> </ng-select> </div> </div> </div> <div class=\"row alarm-registeration-operation\"> <div class=\"col-lg-6 operation-button\"> <button class=\"fe-btn fe-btn-default fe-btn-save\" (click)=\"showAddComponent()\">{{lc('AddAlarm')}}</button> <button class=\"fe-btn fe-btn-default fe-btn-save\" (click)=\"showBatchImportModal()\">{{lc('ImportAlarm')}}</button> <button class=\"fe-btn fe-btn-default btn-batch-delete\" [disabled]=\"!selectedAlarms || selectedAlarms.length === 0\" (click)=\"showBatchModifyLevelModal()\">{{lc('BatchEdit')}}</button> <button class=\"fe-btn fe-btn-default btn-batch-delete\" [disabled]=\"!selectedAlarms || selectedAlarms.length === 0\" (click)=\"batchDeleteAlarms()\">{{lc('BatchDelete')}}</button> <button class=\"fe-btn fe-btn-default fe-btn-normal\" (click)=\"showAlarmGroupModal()\">{{lc('AlarmGroupManage')}}</button> </div> <div class=\"col-lg-6 operation-filter\"> <div class=\"operation-search\"> <input class=\"operation-search-input\" placeholder='{{lc(\"AlarmSearchCriteria\")}}' type=\"text\" name=\"alarmSearchCriteria\" (change)=\"loadAlarmDefsAndRemoveAllSelected()\" [(ngModel)]=\"alarmSearchCriteria\"> <i class=\"fcloud-search\"></i> </div> </div> </div> </div> <div class=\"primeng-datatable-container designer-actions-style\" [busyIf]=\"primengTableHelper.isLoading\"> <p-table #dataTable (onLazyLoad)=\"onDataSourceChanged($event)\" [value]=\"primengTableHelper.records\" rows=\"{{primengTableHelper.defaultRecordsCountPerPage}}\" [paginator]=\"false\" [lazy]=\"true\" selectionMode=\"multiple\" [(selection)]=\"selectedAlarms\" scrollable=\"true\" dataKey=\"id\" ScrollWidth=\"100%\" responsive=\"primengTableHelper.isResponsive\" resizableColumns=\"primengTableHelper.resizableColumns\"> <ng-template pTemplate=\"header\"> <tr> <th class=\"checkbox\" style=\"width: 50px;\"> <p-tableHeaderCheckbox></p-tableHeaderCheckbox> </th> <th style=\"width: 100px\"> {{lc('AlarmNameG')}} </th> <th style=\"width: 150px\"> {{lc('AlarmMessage')}} </th> <th style=\"width: 100px\"> {{lc('AlarmDataSource')}} </th> <th style=\"width: 100px\"> {{lc('DataSourceName')}} </th> <th style=\"width: 100px\"> {{lc('AlarmLevel')}} </th> <th style=\"width: 100px\"> {{lc('MalfunctionCode')}} </th> <th style=\"width: 100px\"> {{lc('AlarmGroup')}} </th> <th style=\"width: 200px\"> {{lc('TriggerRule')}} </th> <th style=\"width: 100px\"> {{lc('ConfigureVariableName')}} </th> <th style=\"width: 100px\"> {{getFBoxAlias()}}{{lc('AlarmNameG')}} </th> <th style=\"width: 100px\" class=\"last-th\"> {{l('Actions')}} <span class=\"fa fa-cog fa-fw\"></span> </th> </tr> </ng-template> <ng-template pTemplate=\"body\" let-record> <tr [pSelectableRow]=\"record\"> <td class=\"checkbox\" style=\"width: 50px;\"> <p-tableCheckbox [value]=\"record\"></p-tableCheckbox> </td> <td style=\"width: 100px\"> {{record.name}} </td> <td style=\"width: 150px\"> {{record.alarmMessage}} </td> <td style=\"width: 100px\"> {{formatAlarmDataSource(record.alarmDataSource)}} </td> <td style=\"width: 100px\"> {{record.alarmDataSource > 0 ? record.dataSourceName : '-'}} </td> <td style=\"width: 100px\"> <div *ngIf=\"+record.alarmLevel === +alarmLevel.AlarmWarning\" class=\"level-content level-one\"> <div class=\"level-color\"></div> <div>{{formatAlarmLevel(record.alarmLevel)}}</div> </div> <div *ngIf=\"+record.alarmLevel === +alarmLevel.AlarmMinor\" class=\"level-content level-two\"> <div class=\"level-color\"></div> <div>{{formatAlarmLevel(record.alarmLevel)}}</div> </div> <div *ngIf=\"+record.alarmLevel === +alarmLevel.AlarmMajor\" class=\"level-content level-three\"> <div class=\"level-color\"></div> <div>{{formatAlarmLevel(record.alarmLevel)}}</div> </div> <div *ngIf=\"+record.alarmLevel === +alarmLevel.AlarmCritical\" class=\"level-content level-four\"> <div class=\"level-color\"></div> <div>{{formatAlarmLevel(record.alarmLevel)}}</div> </div> </td> <td style=\"width: 100px\"> {{record.faultCode}} </td> <td style=\"width: 100px\"> {{record.groupName}} </td> <td style=\"width: 200px\"> {{formatTriggerRule(record)}} </td> <td style=\"width: 100px\"> {{record.variableName}} </td> <td style=\"width: 100px\"> {{record.refAlarmDefName}} </td> <td style=\"width: 100px\" class=\"operation\"> <a (click)=\"showEditComponent(record.id)\" style=\"padding-left: 10px\">{{l('Edit')}}</a> <a (click)=\"singleDeleteAlarm(record.id)\" style=\"padding-left: 10px\">{{l('Delete')}}</a> </td> </tr> </ng-template> </p-table> <div class=\"primeng-no-data\" *ngIf=\"primengTableHelper.totalRecordsCount == 0\"> {{l('NoData')}} </div> <div class=\"primeng-paging-container\"> <p-paginator [rows]=\"primengTableHelper.defaultRecordsCountPerPage\" #paginator (onPageChange)=\"loadAlarmDefs($event)\" [totalRecords]=\"primengTableHelper.totalRecordsCount\" [rowsPerPageOptions]=\"primengTableHelper.predefinedRecordsCountPerPage\"> </p-paginator> <span class=\"total-records-count\"> {{l('TotalRecordsCount', primengTableHelper.totalRecordsCount)}} </span> </div> </div> <batch-import-alarm-modal #batchImportAlarmModalComponent [configureId]=\"configureId\" (reFreshData)=\"loadAlarmDefs()\"> </batch-import-alarm-modal> ","styles":[".designer-registretion{ .last-th { text-align: right !important; span { padding-right: 0; display: inline-block; } } .design-content .variable-transverse .variable-title { width: 23%; line-height: 30px; text-align: right; padding-right: 20px; } .variable-transverse .variable-input { width: 38%; } .alarm-search { margin-bottom: 10px; } .input-group { .form-control { padding-right: 16px; } .var-form-control { height: 34px; padding: 0 2rem 0 1.25rem; } .form-control-search { position: absolute; z-index: 4; right: 10px; display: block; width: 16px; height: 16px; line-height: 34px; text-align: center; pointer-events: none; color: #aaa; } } .operation { text-align: right !important; a { color: #3695FF !important; } a:hover { cursor: pointer; } a:first-child { margin-right: 10px; } } .alarm-registeration-operation { .operation-filter-select { padding: 0; } .operation-button { padding: 0; button { margin-bottom: 12px; } } .operation-search { float: right; position: relative; width:285px; input::-webkit-input-placeholder { color: rgba(0, 0, 0, 0.6); } input::-moz-placeholder { /* Mozilla Firefox 19+ */ color: rgba(0, 0, 0, 0.6); } input:-moz-placeholder { /* Mozilla Firefox 4 to 18 */ color: rgba(0, 0, 0, 0.6); } input:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: rgba(0, 0, 0, 0.6); } } .fcloud-search { position: absolute; right: 10px; top: 9px; font-size: 16px; cursor: pointer; } .operation-search-input { width: 100%; height: 34px; border: 1px solid #C4C6CF; color: rgba(0, 0, 0, 0.6); line-height: 34px; padding: 0 10px; margin-bottom: 12px; padding-left: 10px; padding-right: 34px; } .operation-filter { padding: 0; .operation-filter-select { float: left; margin-right: 12px; margin-bottom: 12px; } } .fe-btn:not(:last-child) { margin-right: 12px; } } select option { color: rgba(0, 0, 0, 0.6); } .fe-btn.fe-btn-default.btn-batch-delete { color: #000; background-color: #FFF; border: 1px solid #C4C6CF; } .fe-btn.fe-btn-default.fe-btn-normal { border: 1px solid #b5c2ca; background-color: white; } .fe-btn.fe-btn-default.btn-batch-delete:disabled { color: #7F939F; border: 1px solid #b5c2ca; } .alarm-registeration-operation > div { float: left; } .alarm-registeration-operation { margin-left: 0; margin-right: 0; } @media (max-width: 1425px) { .alarm-registeration-operation { .operation-button, .operation-filter { width: 100%; } } } .level-color { width: 16px; height: 16px; margin-right: 8px; } .level-content { display: flex; align-items: center; justify-content: flex-start; } .level-one { .level-color { background-color: #3695FF; } } .level-two { .level-color { background-color: #FFE900; } } .level-three { .level-color { background-color: #FFA800; } } .level-four { .level-color { background-color: #E84F4F; } } .checkbox { width: 50px; } .operation-filter-select ::ng-deep .ng-select-container { height: 34px !important; border: 1px solid #C4C6CF; } .ng-select.ng-select-single .ng-select-container { height: 34px; } }"],"animations":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"../../../animations/routerTransition","name":"appModuleAnimation","line":35,"character":17}}]}]}],"members":{"configureId":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":39,"character":5}}]}],"dataTable":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":40,"character":5},"arguments":["dataTable",{"static":true}]}]}],"paginator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":41,"character":5},"arguments":["paginator",{"static":false}]}]}],"batchImportAlarmModalComponent":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":42,"character":5},"arguments":["batchImportAlarmModalComponent",{"static":false}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":56,"character":35},{"__symbolic":"reference","module":"../../../../../shared/service-proxies/service-proxies","name":"AlarmRegistrationsServiceProxy","line":57,"character":52},{"__symbolic":"reference","module":"../../../../../shared/fbox/fbox/dataType.service","name":"DataTypeService","line":58,"character":42},{"__symbolic":"reference","module":"../../../../../shared/service-proxies/service-proxies","name":"AlarmGroupServiceProxy","line":59,"character":44},{"__symbolic":"reference","module":"ngx-bootstrap","name":"BsModalService","line":60,"character":39}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"onDataSourceChanged":[{"__symbolic":"method"}],"formatAlarmLevel":[{"__symbolic":"method"}],"formatAlarmDataSource":[{"__symbolic":"method"}],"formatTriggerRule":[{"__symbolic":"method"}],"getChangeValue":[{"__symbolic":"method"}],"getTriggerRuleFromFBox":[{"__symbolic":"method"}],"getTriggerRuleFromVariable":[{"__symbolic":"method"}],"getTriggerRule":[{"__symbolic":"method"}],"createComplete":[{"__symbolic":"method"}],"updateComplete":[{"__symbolic":"method"}],"loadAlarmDefsAndRemoveAllSelected":[{"__symbolic":"method"}],"loadAlarmDefs":[{"__symbolic":"method"}],"singleDeleteAlarm":[{"__symbolic":"method"}],"batchDeleteAlarms":[{"__symbolic":"method"}],"showAddComponent":[{"__symbolic":"method"}],"showEditComponent":[{"__symbolic":"method"}],"showBatchImportModal":[{"__symbolic":"method"}],"showBatchModifyLevelModal":[{"__symbolic":"method"}],"formatDataType":[{"__symbolic":"method"}],"loadGroups":[{"__symbolic":"method"}],"loadAlarmsAndGroupOnCurrentPage":[{"__symbolic":"method"}],"loadAlarmsAndClearSelectedItems":[{"__symbolic":"method"}],"loadAlarmAndGroup":[{"__symbolic":"method"}],"showAlarmGroupModal":[{"__symbolic":"method"}],"getEnum":[{"__symbolic":"method"}]}}}}]