60 lines
1.2 KiB
JavaScript
60 lines
1.2 KiB
JavaScript
import ngModule from '../module';
|
|
import SearchPanel from 'core/components/searchbar/search-panel';
|
|
|
|
class Controller extends SearchPanel {
|
|
constructor($, $element) {
|
|
super($, $element);
|
|
this.filter = this.$.filter;
|
|
|
|
this.getGroupedStates();
|
|
}
|
|
|
|
getGroupedStates() {
|
|
let groupedStates = [];
|
|
this.$http.get('AlertLevels').then(res => {
|
|
for (let state of res.data) {
|
|
groupedStates.push({
|
|
id: state.id,
|
|
code: state.code,
|
|
name: this.$t(state.code)
|
|
});
|
|
}
|
|
this.groupedStates = groupedStates;
|
|
});
|
|
}
|
|
|
|
get from() {
|
|
return this._from;
|
|
}
|
|
|
|
set from(value) {
|
|
this._from = value;
|
|
this.filter.scopeDays = null;
|
|
}
|
|
|
|
get to() {
|
|
return this._to;
|
|
}
|
|
|
|
set to(value) {
|
|
this._to = value;
|
|
this.filter.scopeDays = null;
|
|
}
|
|
|
|
get scopeDays() {
|
|
return this._scopeDays;
|
|
}
|
|
|
|
set scopeDays(value) {
|
|
this._scopeDays = value;
|
|
|
|
this.filter.from = null;
|
|
this.filter.to = null;
|
|
}
|
|
}
|
|
|
|
ngModule.vnComponent('vnTicketSearchPanel', {
|
|
template: require('./index.html'),
|
|
controller: Controller
|
|
});
|