This commit is contained in:
Cüneyt Şentürk
2020-04-22 14:50:30 +03:00
parent 5ed4cd2da9
commit 5b1306cab4
86 changed files with 1244 additions and 614 deletions

View File

@ -96,6 +96,14 @@ export default {
};
},
created: function () {
if (this.show) {
let documentClasses = document.body.classList;
documentClasses.add("modal-open");
}
},
methods: {
closeModal() {
this.$emit("update:show", false);
@ -109,6 +117,10 @@ export default {
},
onCancel() {
let documentClasses = document.body.classList;
documentClasses.remove("modal-open");
this.$emit("cancel");
}
},

View File

@ -130,6 +130,12 @@ export default {
};
},
created: function () {
let documentClasses = document.body.classList;
documentClasses.add("modal-open");
},
mounted() {
if (this.is_component) {
this.component = Vue.component('add-new-component', (resolve, reject) => {
@ -230,6 +236,10 @@ export default {
},
onCancel() {
let documentClasses = document.body.classList;
documentClasses.remove("modal-open");
this.$emit("cancel");
}
},

View File

@ -1,9 +1,9 @@
<template>
<div class="row col-md-6 pr-0">
<base-input :label="title"
name="recurring_frequency"
:class="frequencyClasses"
:error="frequencyError">
name="recurring_frequency"
:class="frequencyClasses"
:error="frequencyError">
<el-select v-model="recurring_frequency" @input="change" filterable
:placeholder="placeholder">
<template slot="prefix">
@ -21,22 +21,21 @@
</base-input>
<base-input :label="''"
name="recurring_interval"
type="number"
:value="0"
class="recurring-single"
:class="invertalClasses"
:error="intervalError"
v-model="recurring_interval"
>
name="recurring_interval"
type="number"
:value="0"
class="recurring-single"
:class="invertalClasses"
:error="intervalError"
v-model="recurring_interval"
>
</base-input>
<base-input :label="''"
name="recurring_custom_frequency"
class="recurring-single"
:class="customFrequencyClasses"
:error="customFrequencyError"
>
name="recurring_custom_frequency"
class="recurring-single"
:class="customFrequencyClasses"
:error="customFrequencyError">
<el-select v-model="recurring_custom_frequency" @input="change" filterable
:placeholder="placeholder">
<el-option v-for="(label, value) in customFrequencyOptions"
@ -48,14 +47,13 @@
</base-input>
<base-input :label="''"
name="recurring_count"
type="number"
:value="0"
class="recurring-single"
:class="countClasses"
:error="countError"
v-model="recurring_count"
>
name="recurring_count"
type="number"
:value="0"
class="recurring-single"
:class="countClasses"
:error="countError"
v-model="recurring_count">
</base-input>
</div>
</template>
@ -89,14 +87,22 @@ export default {
frequencyValue: null,
frequencyError: null,
intervalValue: null,
intervalValue: {
type: [Number, String],
default: 0,
description: "Default interval value"
},
intervalError: null,
customFrequencyOptions: null,
customFrequencyValue: null,
customFrequencyError: null,
countValue: null,
countValue: {
type: [Number, String],
default: 0,
description: "Default count value"
},
countError: null,
icon: {
@ -107,10 +113,10 @@ export default {
data() {
return {
recurring_frequency: this.frequencyValue,
recurring_interval: this.intervalValue,
recurring_custom_frequency: this.customFrequencyValue,
recurring_count: this.countValue,
recurring_frequency: null,
recurring_interval: null,
recurring_custom_frequency: null,
recurring_count: null,
frequencyClasses: 'col-md-12',
invertalClasses: 'col-md-2 d-none',
customFrequencyClasses: 'col-md-4 d-none',
@ -118,6 +124,13 @@ export default {
}
},
created() {
this.recurring_frequency = this.frequencyValue;
this.recurring_interval = this.intervalValue;
this.recurring_custom_frequency = this.customFrequencyValue;
this.recurring_count = this.countValue;
},
mounted() {
this.recurring_frequency = this.frequencyValue;

File diff suppressed because it is too large Load Diff

View File

@ -1,39 +1,39 @@
<template>
<akaunting-modal
:title="title"
:show="display"
@cancel="onCancel"
v-if="display">
:title="title"
:show="display"
@cancel="onCancel"
v-if="display">
<template #modal-body>
<div class="modal-body text-left">
<div class="row">
<div class="col-md-12">
<base-input
v-model="form.name"
:label="text.name"
prepend-icon="fas fa-font"
:placeholder="placeholder.name"
inputGroupClasses="input-group-merge">
v-model="form.name"
:label="text.name"
prepend-icon="fas fa-font"
:placeholder="placeholder.name"
inputGroupClasses="input-group-merge">
</base-input>
</div>
<div class="col-md-12">
<base-input
:label="text.type">
:label="text.type">
<span class="el-input__prefix">
<span class="el-input__suffix-inner el-select-icon">
<i class="select-icon-position el-input__icon fa fa-bars"></i>
</span>
</span>
<el-select
class="select-primary"
v-model="form.class" filterable
:placeholder="placeholder.type">
class="select-primary"
v-model="form.class" filterable
:placeholder="placeholder.type">
<el-option v-for="(name, value) in types"
class="select-primary"
:key="name"
:label="name"
:value="value">
class="select-primary"
:key="name"
:label="name"
:value="value">
</el-option>
</el-select>
</base-input>
@ -41,21 +41,21 @@
<div class="col-md-6">
<base-input
:label="text.width">
:label="text.width">
<span class="el-input__prefix">
<span class="el-input__suffix-inner el-select-icon">
<i class="select-icon-position el-input__icon fas fa-ruler-horizontal"></i>
</span>
</span>
<el-select
class="select-primary"
v-model="form.width" filterable
:placeholder="placeholder.width">
class="select-primary"
v-model="form.width" filterable
:placeholder="placeholder.width">
<el-option v-for="option in widthOptions"
class="select-primary"
:key="option.label"
:label="option.label"
:value="option.value">
class="select-primary"
:key="option.label"
:label="option.label"
:value="option.value">
</el-option>
</el-select>
</base-input>
@ -63,11 +63,11 @@
<div class="col-md-6">
<base-input
v-model="form.sort"
:label="text.sort"
prepend-icon="fas fa-sort"
:placeholder="placeholder.sort"
inputGroupClasses="input-group-merge"></base-input>
v-model="form.sort"
:label="text.sort"
prepend-icon="fas fa-sort"
:placeholder="placeholder.sort"
inputGroupClasses="input-group-merge"></base-input>
</div>
</div>
</div>
@ -255,6 +255,10 @@ export default {
},
onCancel() {
let documentClasses = document.body.classList;
documentClasses.remove("modal-open");
this.display = false;
this.form.name = '';
this.form.enabled = 1;

View File

@ -508,6 +508,8 @@ export default {
let sum = 0;
let isOdd = true;
this.unMaskCardNumber();
/*for (let i = number.length - 1; i >= 0; i--) {
let num = number.charAt(i);

View File

@ -69,7 +69,9 @@ const app = new Vue({
if (typeof bill_items !== 'undefined' && bill_items) {
let items = [];
let item_backup = this.form.item_backup[0];
let currency_code = this.form.currency_code;
this.edit.status = true;
bill_items.forEach(function(item) {
@ -119,18 +121,18 @@ const app = new Vue({
onCalculateTotal() {
let sub_total = 0;
let discount_total = 0;
let item_discount_total = 0;
let line_item_discount_total = 0;
let tax_total = 0;
let grand_total = 0;
let items = this.form.items;
let discount_in_totals = this.form.discount;
let discount = '';
if (items.length) {
let index = 0;
// get all items.
for (index = 0; index < items.length; index++) {
let discount = 0;
// get row item and set item variable.
let item = items[index];
@ -138,6 +140,15 @@ const app = new Vue({
let item_total = item.price * item.quantity;
// item discount calculate.
let line_discount_amount = 0;
if (item.discount) {
line_discount_amount = item_total * (item.discount / 100);
item_discounted_total = item_total -= line_discount_amount;
discount = item.discount;
}
let item_discounted_total = item_total;
if (discount_in_totals) {
@ -145,14 +156,6 @@ const app = new Vue({
discount = discount_in_totals;
}
let discount_amount = 0;
if (item.discount) {
discount_amount = item_total * (item.discount / 100);
item_discounted_total = item_total - discount_amount;
discount = item.discount;
}
// item tax calculate.
let item_tax_total = 0;
@ -220,7 +223,7 @@ const app = new Vue({
}
// calculate sub, tax, discount all items.
item_discount_total += discount_amount;
line_item_discount_total += line_discount_amount;
sub_total += item_total;
tax_total += item_tax_total;
}
@ -229,9 +232,7 @@ const app = new Vue({
// set global total variable.
this.totals.sub = sub_total;
this.totals.tax = tax_total;
this.totals.item_discount = item_discount_total;
sub_total -= item_discount_total;
this.totals.item_discount = line_item_discount_total;
// Apply discount to total
if (discount_in_totals) {

View File

@ -69,7 +69,9 @@ const app = new Vue({
if (typeof invoice_items !== 'undefined' && invoice_items) {
let items = [];
let item_backup = this.form.item_backup[0];
let currency_code = this.form.currency_code;
this.edit.status = true;
invoice_items.forEach(function(item) {
@ -119,18 +121,18 @@ const app = new Vue({
onCalculateTotal() {
let sub_total = 0;
let discount_total = 0;
let item_discount_total = 0;
let line_item_discount_total = 0;
let tax_total = 0;
let grand_total = 0;
let items = this.form.items;
let discount_in_totals = this.form.discount;
let discount = '';
if (items.length) {
let index = 0;
// get all items.
for (index = 0; index < items.length; index++) {
let discount = 0;
// get row item and set item variable.
let item = items[index];
@ -138,6 +140,15 @@ const app = new Vue({
let item_total = item.price * item.quantity;
// item discount calculate.
let line_discount_amount = 0;
if (item.discount) {
line_discount_amount = item_total * (item.discount / 100);
item_discounted_total = item_total -= line_discount_amount;
discount = item.discount;
}
let item_discounted_total = item_total;
if (discount_in_totals) {
@ -145,14 +156,6 @@ const app = new Vue({
discount = discount_in_totals;
}
let discount_amount = 0;
if (item.discount) {
discount_amount = item_total * (item.discount / 100);
item_discounted_total = item_total - discount_amount;
discount = item.discount;
}
// item tax calculate.
let item_tax_total = 0;
@ -220,7 +223,7 @@ const app = new Vue({
}
// calculate sub, tax, discount all items.
item_discount_total += discount_amount;
line_item_discount_total += line_discount_amount;
sub_total += item_total;
tax_total += item_tax_total;
}
@ -229,9 +232,7 @@ const app = new Vue({
// set global total variable.
this.totals.sub = sub_total;
this.totals.tax = tax_total;
this.totals.item_discount = item_discount_total;
sub_total -= item_discount_total;
this.totals.item_discount = line_item_discount_total;
// Apply discount to total
if (discount_in_totals) {

View File

@ -106,5 +106,9 @@ const app = new Vue({
.catch(error => {
});
},
onSubmit() {
this.form.oldSubmit();
},
}
});

View File

@ -78,5 +78,9 @@ const app = new Vue({
this.show = true;
},
onSubmit() {
this.form.oldSubmit();
},
}
});