import ngModule from '../module'; import Section from 'salix/components/section'; import './style.scss'; export default class Controller extends Section { constructor($element, $) { super($element, $); this.showFields = { id: false, actions: false }; this.editedColumn; } get columns() { if (this._columns) return this._columns; this._columns = [ {field: 'packing', displayName: this.$t('Packing')}, {field: 'grouping', displayName: this.$t('Grouping')}, {field: 'packageValue', displayName: this.$t('Package value')}, {field: 'weight', displayName: this.$t('Weight')}, {field: 'description', displayName: this.$t('Description')}, {field: 'size', displayName: this.$t('Size')}, {field: 'density', displayName: this.$t('Density')}, {field: 'packingOut', displayName: this.$t('PackingOut')} ]; return this._columns; } get checked() { const buys = this.$.model.data || []; const checkedBuys = []; for (let buy of buys) { if (buy.checked) checkedBuys.push(buy); } return checkedBuys; } uncheck() { const lines = this.checked; for (let line of lines) { if (line.checked) line.checked = false; } } get totalChecked() { return this.checked.length; } onEditAccept() { const rowsToEdit = []; for (let row of this.checked) rowsToEdit.push({id: row.id, itemFk: row.itemFk}); let data = { field: this.editedColumn.field, newValue: this.editedColumn.newValue, lines: rowsToEdit }; return this.$http.post('Buys/editLatestBuys', data) .then(() => { this.uncheck(); this.$.model.refresh(); }); } } ngModule.component('vnEntryLatestBuys', { template: require('./index.html'), controller: Controller });