69 lines
1.9 KiB
JavaScript
69 lines
1.9 KiB
JavaScript
import ngModule from '../module';
|
|
import Section from 'salix/components/section';
|
|
|
|
class Controller extends Section {
|
|
onDialogAccept(id) {
|
|
return this.$http.delete(`Expeditions/${id}`)
|
|
.then(() => this.$.model.refresh());
|
|
}
|
|
|
|
showLog(expedition) {
|
|
this.expedition = expedition;
|
|
this.$.statusLog.show();
|
|
}
|
|
|
|
get checked() {
|
|
const rows = this.$.model.data || [];
|
|
const checkedRows = [];
|
|
for (let row of rows) {
|
|
if (row.checked)
|
|
checkedRows.push(row);
|
|
}
|
|
|
|
return checkedRows;
|
|
}
|
|
|
|
get totalChecked() {
|
|
return this.checked.length;
|
|
}
|
|
|
|
async onRemove() {
|
|
const params = [];
|
|
for (let expedition of this.checked)
|
|
params.push(expedition.id);
|
|
|
|
for (let id of params) {
|
|
await this.$http.delete(`Expeditions/${id}`)
|
|
.then(() => {
|
|
this.vnApp.showSuccess(this.$t('Expedition removed'));
|
|
this.$state.reload();
|
|
});
|
|
}
|
|
}
|
|
|
|
createTicket(routeFk) {
|
|
const tomorrow = new Date();
|
|
const params = {
|
|
clientId: this.ticket.clientFk,
|
|
landed: tomorrow.getDay() + 1,
|
|
addressId: this.ticket.addressFk,
|
|
agencyModeId: this.ticket.agencyModeFk,
|
|
warehouseId: this.ticket.warehouseFk
|
|
};
|
|
const query = `Tickets/new`;
|
|
this.$http.post(query, params).then(res => {
|
|
if (routeFk) this.$http.patch(`Tickets/${res.data.id}`, {routeFk: routeFk});
|
|
this.vnApp.showSuccess(this.$t('Data saved!'));
|
|
this.$state.go('ticket.card.summary', {id: res.data.id});
|
|
});
|
|
}
|
|
}
|
|
|
|
ngModule.vnComponent('vnTicketExpedition', {
|
|
template: require('./index.html'),
|
|
controller: Controller,
|
|
bindings: {
|
|
ticket: '<',
|
|
},
|
|
});
|