Joywork/js/admin/antiznak-tariffs.js
2026-05-22 21:21:54 +03:00

103 lines
2.9 KiB
JavaScript

Vue.component('v-select', VueSelect.VueSelect);
var antiznakTariffs = new Vue({
el: '#antiznakTariffs',
data() {
return {
tariffs: [],
tariff_id: null,
is_show_tariffs: true,
is_show_edit_tariff: false,
edit_id: 0,
error_edit: false,
edit_count: null,
edit_price: null,
}
},
methods: {
//Типы оплат
getTariffs() {
axios.post('/ajax/vue_ajax/antiznak_axios.php', {
request: 'get_tariffs',
}, )
.then((response) => {
console.log(response.data);
var res = response.data;
this.tariffs = res;
})
.catch(function(error) {
console.log(error);
});
},
//Редактирование тарифа
edit_tariff(id) {
//console.log(id);
let tempTariff = this.tariffs.find(x => x.id === id);
if (!this.isEmpty(tempTariff)) {
this.edit_count = tempTariff.count;
this.edit_price = tempTariff.price;
this.edit_id = id;
}
//console.log(tempTariff);
this.is_show_edit_tariff = true;
this.is_show_tariffs = false;
},
//сохранение тарифа
save_edit() {
axios.post('/ajax/vue_ajax/antiznak_axios.php', {
request: 'save_tariff',
count: this.edit_count,
price: this.edit_price,
id: this.edit_id
}, )
.then((response) => {
// console.log(response.data);
this.getTariffs();
this.close_edit();
})
.catch(function(error) {
console.log(error);
});
},
//закрыть редактирование
close_edit() {
this.is_show_edit_tariff = false;
this.is_show_tariffs = true;
this.edit_id = 0;
},
//Проверка на пустоту
isEmpty(data) {
if (typeof(data) === 'object') {
if (JSON.stringify(data) === '{}' || JSON.stringify(data) === '[]') {
return true;
} else if (!data) {
return true;
}
return false;
} else if (typeof(data) === 'string') {
if (!data.trim()) {
return true;
}
return false;
} else if (typeof(data) === 'undefined') {
return true;
} else {
return false;
}
},
},
created: function() {
this.getTariffs();
}
})