import ngModule from '../module'; import Section from 'salix/components/section'; import './style.scss'; export default class Controller extends Section { constructor($element, $) { super($element, $); } /** * Inserts a new instance */ add() { this.$.model.insert({}); } upsertPrice(price) { price.hasMinPrice = price.minPrice ? true : false; let requiredFields = ['itemFk', 'started', 'ended', 'rate2', 'rate3']; for (let field of requiredFields) if (price[field] == undefined) return; const query = 'FixedPrices/upsertFixedPrice'; this.$http.patch(query, price) .then(res => { this.vnApp.showSuccess(this.$t('Data saved!')); Object.assign(price, res.data); }); } removePrice($index) { const price = this.$.model.data[$index]; if (price.id) { this.$http.delete(`FixedPrices/${price.id}`) .then(() => { this.$.model.remove($index); this.vnApp.showSuccess(this.$t('Data saved!')); }); } else this.$.model.remove($index); } itemSearchFunc($search) { return /^\d+$/.test($search) ? {id: $search} : {name: {like: '%' + $search + '%'}}; } } ngModule.vnComponent('vnFixedPrice', { template: require('./index.html'), controller: Controller });