salix/modules/ticket/front/expedition/index.js

95 lines
2.5 KiB
JavaScript
Raw Permalink Normal View History

2018-03-21 14:51:09 +00:00
import ngModule from '../module';
2020-03-18 07:35:59 +00:00
import Section from 'salix/components/section';
2018-03-21 14:51:09 +00:00
2020-03-18 07:35:59 +00:00
class Controller extends Section {
2022-10-18 09:47:22 +00:00
constructor($element, $scope) {
super($element, $scope);
2023-01-16 14:18:24 +00:00
this.landed = Date.vnNew();
2022-10-18 09:47:22 +00:00
this.newRoute = null;
this.smartTableOptions = {
activeButtons: {
search: true,
shownColumns: true,
},
columns: [
{
field: 'packageItemName',
autocomplete: {
url: 'Items',
valueField: 'id',
}
}
]
};
}
exprBuilder(param, value) {
switch (param) {
case 'expeditionFk':
return {'id': value};
case 'packageItemName':
return {'packagingItemFk': value};
}
2022-10-18 09:47:22 +00:00
}
2022-09-22 12:58:38 +00:00
get checked() {
const rows = this.$.model.data || [];
const checkedRows = [];
for (let row of rows) {
if (row.checked)
2022-10-07 08:47:54 +00:00
checkedRows.push(row.id);
2022-09-22 12:58:38 +00:00
}
return checkedRows;
}
2022-09-23 06:50:11 +00:00
get totalChecked() {
return this.checked.length;
}
2022-10-03 13:18:07 +00:00
2022-10-07 11:49:42 +00:00
onDialogAccept(id) {
return this.$http.delete(`Expeditions/${id}`)
.then(() => this.$.model.refresh());
}
showLog(expedition) {
this.expedition = expedition;
this.$.statusLog.show();
}
2022-10-07 08:47:54 +00:00
onRemove() {
2022-10-18 09:47:22 +00:00
const params = {expeditionIds: this.checked};
2022-10-07 08:47:54 +00:00
const query = `Expeditions/deleteExpeditions`;
this.$http.post(query, params)
.then(() => {
this.vnApp.showSuccess(this.$t('Expedition removed'));
2022-10-07 11:49:42 +00:00
this.$.model.refresh();
2022-10-07 08:47:54 +00:00
});
2022-10-06 08:18:19 +00:00
}
2022-10-18 09:47:22 +00:00
createTicket(landed, routeFk) {
const params = {
2022-10-03 13:18:07 +00:00
clientId: this.ticket.clientFk,
2022-10-18 09:47:22 +00:00
landed: landed,
warehouseId: this.ticket.warehouseFk,
2022-10-03 13:18:07 +00:00
addressId: this.ticket.addressFk,
agencyModeId: this.ticket.agencyModeFk,
routeId: routeFk,
expeditionIds: this.checked
2022-10-03 13:18:07 +00:00
};
const query = `Expeditions/moveExpeditions`;
this.$http.post(query, params).then(res => {
2022-10-03 13:18:07 +00:00
this.vnApp.showSuccess(this.$t('Data saved!'));
this.$state.go('ticket.card.summary', {id: res.data.id});
});
}
2018-03-21 14:51:09 +00:00
}
ngModule.vnComponent('vnTicketExpedition', {
template: require('./index.html'),
2018-09-04 09:49:00 +00:00
controller: Controller,
bindings: {
ticket: '<',
},
2018-03-21 14:51:09 +00:00
});