49 lines
1.2 KiB
JavaScript
49 lines
1.2 KiB
JavaScript
import ngModule from '../module';
|
|
|
|
class Controller {
|
|
constructor($, $http, vnApp, $translate) {
|
|
this.$http = $http;
|
|
this.vnApp = vnApp;
|
|
this.$translate = $translate;
|
|
this.$ = $;
|
|
this.moreOptions = [
|
|
{callback: this.showRouteReport, name: 'Show route report'},
|
|
{callback: this.sendRouteReport, name: 'Send route report'}
|
|
];
|
|
}
|
|
set quicklinks(value = {}) {
|
|
this._quicklinks = Object.assign(value, this._quicklinks);
|
|
}
|
|
|
|
get quicklinks() {
|
|
return this._quicklinks;
|
|
}
|
|
|
|
onMoreChange(callback) {
|
|
callback.call(this);
|
|
}
|
|
|
|
showRouteReport() {
|
|
let url = `/api/report/rpt-route?routeFk=${this.route.id}`;
|
|
window.open(url);
|
|
}
|
|
|
|
sendRouteReport() {
|
|
let url = `/api/email/driver-route?routeFk=${this.route.id}`;
|
|
this.$http.post(url).then(() => {
|
|
this.vnApp.showSuccess(this.$translate.instant('Report sent'));
|
|
});
|
|
}
|
|
}
|
|
|
|
Controller.$inject = ['$scope', '$http', 'vnApp', '$translate'];
|
|
|
|
ngModule.component('vnRouteDescriptor', {
|
|
template: require('./index.html'),
|
|
bindings: {
|
|
route: '<',
|
|
quicklinks: '<'
|
|
},
|
|
controller: Controller
|
|
});
|