diff --git a/app/Http/Requests/Oasis/StoreInvoiceRequest.php b/app/Http/Requests/Oasis/StoreInvoiceRequest.php index c68942a0..d4938432 100644 --- a/app/Http/Requests/Oasis/StoreInvoiceRequest.php +++ b/app/Http/Requests/Oasis/StoreInvoiceRequest.php @@ -28,8 +28,8 @@ class StoreInvoiceRequest extends FormRequest 'variable_number' => 'required|string', 'client' => 'required', 'items' => 'required|string', - 'discount_type' => 'nullable|string', - 'discount_rate' => 'nullable|integer', + 'discount_type' => 'sometimes|string', + 'discount_rate' => 'sometimes|integer', 'delivery_at' => 'required|date', ]; } diff --git a/public/mix-manifest.json b/public/mix-manifest.json index 95bcf1f5..2f7c4e0e 100644 --- a/public/mix-manifest.json +++ b/public/mix-manifest.json @@ -56,10 +56,10 @@ "/chunks/oasis/invoices/client-detail.js": "/chunks/oasis/invoices/client-detail.js?id=775aa4205c9189fcf6bc", "/chunks/oasis/invoices/client-invoices.js": "/chunks/oasis/invoices/client-invoices.js?id=b9aed08d93a606918d22", "/chunks/oasis/invoices/create-client.js": "/chunks/oasis/invoices/create-client.js?id=2416e9a56896fedb15b7", - "/chunks/oasis/invoices/create-invoice.js": "/chunks/oasis/invoices/create-invoice.js?id=389c9aafcd4e462bb4b9", + "/chunks/oasis/invoices/create-invoice.js": "/chunks/oasis/invoices/create-invoice.js?id=b9a7dbd7cdb79616338c", "/chunks/oasis/invoices/list.js": "/chunks/oasis/invoices/list.js?id=a622e568efb24e955520", "/chunks/oasis/invoices/profile.js": "/chunks/oasis/invoices/profile.js?id=06b0487a934116de2f95", - "/chunks/oasis/invoices~chunks/platform~chunks/shared.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.js?id=a53a01abf7a98a9c2d15", + "/chunks/oasis/invoices~chunks/platform~chunks/shared.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.js?id=02d307d644549673764b", "/chunks/oasis/platba.js": "/chunks/oasis/platba.js?id=9a20bc7c6b8570f936a1", "/chunks/oasis/platba~chunks/oasis/upgrade-billing~chunks/oasis/upgrade-plan~chunks/upgrade-billing~ch~6880400b.js": "/chunks/oasis/platba~chunks/oasis/upgrade-billing~chunks/oasis/upgrade-plan~chunks/upgrade-billing~ch~6880400b.js?id=0c8d1c3cca084baa177f", "/chunks/oasis/sign-up.js": "/chunks/oasis/sign-up.js?id=e53eeb48ebabae259f9c", @@ -334,5 +334,56 @@ "/chunks/oasis/invoices/create-invoice.245181c4fb62c1df4375.hot-update.js": "/chunks/oasis/invoices/create-invoice.245181c4fb62c1df4375.hot-update.js", "/chunks/oasis/invoices/create-invoice.0a8e0c76914a1c00d6f7.hot-update.js": "/chunks/oasis/invoices/create-invoice.0a8e0c76914a1c00d6f7.hot-update.js", "/chunks/oasis/invoices/create-invoice.258f3eb33557ccbac3ea.hot-update.js": "/chunks/oasis/invoices/create-invoice.258f3eb33557ccbac3ea.hot-update.js", - "/chunks/oasis/invoices/create-invoice.cb8ab124d3248115bbeb.hot-update.js": "/chunks/oasis/invoices/create-invoice.cb8ab124d3248115bbeb.hot-update.js" + "/chunks/oasis/invoices/create-invoice.cb8ab124d3248115bbeb.hot-update.js": "/chunks/oasis/invoices/create-invoice.cb8ab124d3248115bbeb.hot-update.js", + "/js/main.e5cb54ffa973f245f788.hot-update.js": "/js/main.e5cb54ffa973f245f788.hot-update.js", + "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~30c3eb1b.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~30c3eb1b.js?id=d47268e349bd2772cd71", + "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~b2b17caf.js": "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~b2b17caf.js?id=55d2b5e5a0fdda04fe42", + "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2e1d0044.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2e1d0044.js?id=15bd59d080c7feb21c94", + "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~e9fdda75.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~e9fdda75.js?id=62ce022b3544cd69a5bd", + "/chunks/oasis/invoices/create-invoice.e5cb54ffa973f245f788.hot-update.js": "/chunks/oasis/invoices/create-invoice.e5cb54ffa973f245f788.hot-update.js", + "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~031a0bf8.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~031a0bf8.js?id=e5355666d39ae3c90ece", + "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~6b50d93b.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~6b50d93b.js?id=bcb779faea92dfb55517", + "/chunks/oasis/invoices/create-invoice.29f5dac0d6de4c926c48.hot-update.js": "/chunks/oasis/invoices/create-invoice.29f5dac0d6de4c926c48.hot-update.js", + "/js/main.7762a0cb7c8f081da7a8.hot-update.js": "/js/main.7762a0cb7c8f081da7a8.hot-update.js", + "/chunks/oasis/invoices/create-invoice.7762a0cb7c8f081da7a8.hot-update.js": "/chunks/oasis/invoices/create-invoice.7762a0cb7c8f081da7a8.hot-update.js", + "/chunks/oasis/invoices/create-invoice.bf2ff3653cab334dd3db.hot-update.js": "/chunks/oasis/invoices/create-invoice.bf2ff3653cab334dd3db.hot-update.js", + "/chunks/oasis/invoices/create-invoice.6f4ae4ca5c84af0df008.hot-update.js": "/chunks/oasis/invoices/create-invoice.6f4ae4ca5c84af0df008.hot-update.js", + "/chunks/oasis/invoices/create-invoice.f4f34464008780d72ad1.hot-update.js": "/chunks/oasis/invoices/create-invoice.f4f34464008780d72ad1.hot-update.js", + "/chunks/oasis/invoices/create-invoice.011d114f24bd5b37350a.hot-update.js": "/chunks/oasis/invoices/create-invoice.011d114f24bd5b37350a.hot-update.js", + "/chunks/oasis/invoices/create-invoice.e058013474e665ca119c.hot-update.js": "/chunks/oasis/invoices/create-invoice.e058013474e665ca119c.hot-update.js", + "/chunks/oasis/invoices/create-invoice.d2cbe8ce58839c982b9d.hot-update.js": "/chunks/oasis/invoices/create-invoice.d2cbe8ce58839c982b9d.hot-update.js", + "/chunks/oasis/invoices/create-invoice.279ac49a07287b29d2cf.hot-update.js": "/chunks/oasis/invoices/create-invoice.279ac49a07287b29d2cf.hot-update.js", + "/chunks/oasis/invoices/create-invoice.482e4cff79206d07edf1.hot-update.js": "/chunks/oasis/invoices/create-invoice.482e4cff79206d07edf1.hot-update.js", + "/chunks/oasis/invoices/create-invoice.03d98fd51456fc637a30.hot-update.js": "/chunks/oasis/invoices/create-invoice.03d98fd51456fc637a30.hot-update.js", + "/chunks/oasis/invoices/create-invoice.2894a5ee466b17d1234b.hot-update.js": "/chunks/oasis/invoices/create-invoice.2894a5ee466b17d1234b.hot-update.js", + "/chunks/oasis/invoices/create-invoice.2a0de71c8b320487afd1.hot-update.js": "/chunks/oasis/invoices/create-invoice.2a0de71c8b320487afd1.hot-update.js", + "/chunks/oasis/invoices/create-invoice.cbf489a83cf22e685f7c.hot-update.js": "/chunks/oasis/invoices/create-invoice.cbf489a83cf22e685f7c.hot-update.js", + "/chunks/oasis/invoices/create-invoice.5e9c8a6932ad21fd98b8.hot-update.js": "/chunks/oasis/invoices/create-invoice.5e9c8a6932ad21fd98b8.hot-update.js", + "/chunks/oasis/invoices/create-invoice.4056339805bc2fcb0814.hot-update.js": "/chunks/oasis/invoices/create-invoice.4056339805bc2fcb0814.hot-update.js", + "/chunks/oasis/invoices/create-invoice.4a782e5e6431091e7b7d.hot-update.js": "/chunks/oasis/invoices/create-invoice.4a782e5e6431091e7b7d.hot-update.js", + "/chunks/oasis/invoices/create-invoice.919da996ed767dc806c8.hot-update.js": "/chunks/oasis/invoices/create-invoice.919da996ed767dc806c8.hot-update.js", + "/chunks/oasis/invoices/create-invoice.f2783372014898e929a8.hot-update.js": "/chunks/oasis/invoices/create-invoice.f2783372014898e929a8.hot-update.js", + "/chunks/oasis/invoices/create-invoice.fde87c4bb7f4554a47d9.hot-update.js": "/chunks/oasis/invoices/create-invoice.fde87c4bb7f4554a47d9.hot-update.js", + "/chunks/oasis/invoices/create-invoice.50f75fc9769aecc1fb29.hot-update.js": "/chunks/oasis/invoices/create-invoice.50f75fc9769aecc1fb29.hot-update.js", + "/chunks/oasis/invoices/create-invoice.8f56747ce20f0b9d7956.hot-update.js": "/chunks/oasis/invoices/create-invoice.8f56747ce20f0b9d7956.hot-update.js", + "/chunks/oasis/invoices/create-invoice.3f6153328dc2ba36bcc1.hot-update.js": "/chunks/oasis/invoices/create-invoice.3f6153328dc2ba36bcc1.hot-update.js", + "/chunks/oasis/invoices/create-invoice.3bdd19e4193a8de87ad7.hot-update.js": "/chunks/oasis/invoices/create-invoice.3bdd19e4193a8de87ad7.hot-update.js", + "/chunks/oasis/invoices/create-invoice.db47f93f14bfc6f04685.hot-update.js": "/chunks/oasis/invoices/create-invoice.db47f93f14bfc6f04685.hot-update.js", + "/chunks/oasis/invoices/create-invoice.9956c96c2cda88f23bd2.hot-update.js": "/chunks/oasis/invoices/create-invoice.9956c96c2cda88f23bd2.hot-update.js", + "/chunks/oasis/invoices/create-invoice.4caf6e9d79c129da92da.hot-update.js": "/chunks/oasis/invoices/create-invoice.4caf6e9d79c129da92da.hot-update.js", + "/js/main.a5081e80b89d37b1116b.hot-update.js": "/js/main.a5081e80b89d37b1116b.hot-update.js", + "/chunks/oasis/invoices/create-invoice.6ed906a233d8a6d43d46.hot-update.js": "/chunks/oasis/invoices/create-invoice.6ed906a233d8a6d43d46.hot-update.js", + "/chunks/oasis/invoices/create-invoice.893de38e56ccda6a9180.hot-update.js": "/chunks/oasis/invoices/create-invoice.893de38e56ccda6a9180.hot-update.js", + "/chunks/oasis/invoices/create-invoice.f0016d27590db786f0b3.hot-update.js": "/chunks/oasis/invoices/create-invoice.f0016d27590db786f0b3.hot-update.js", + "/chunks/oasis/invoices/create-invoice.1473ee40a2a35b9dd2f4.hot-update.js": "/chunks/oasis/invoices/create-invoice.1473ee40a2a35b9dd2f4.hot-update.js", + "/chunks/oasis/invoices/create-invoice.c27a1232a6a26a349bf5.hot-update.js": "/chunks/oasis/invoices/create-invoice.c27a1232a6a26a349bf5.hot-update.js", + "/chunks/oasis/invoices/create-invoice.fdab71ae2a37e6b67b72.hot-update.js": "/chunks/oasis/invoices/create-invoice.fdab71ae2a37e6b67b72.hot-update.js", + "/chunks/oasis/invoices/create-invoice.65f83636e0b15f04c6d4.hot-update.js": "/chunks/oasis/invoices/create-invoice.65f83636e0b15f04c6d4.hot-update.js", + "/chunks/oasis/invoices/create-invoice.ae596a136746dd5286da.hot-update.js": "/chunks/oasis/invoices/create-invoice.ae596a136746dd5286da.hot-update.js", + "/chunks/oasis/invoices/create-invoice.f389c93ef6cabe4d1e91.hot-update.js": "/chunks/oasis/invoices/create-invoice.f389c93ef6cabe4d1e91.hot-update.js", + "/chunks/oasis/invoices/create-invoice.c00976946212f8d36ead.hot-update.js": "/chunks/oasis/invoices/create-invoice.c00976946212f8d36ead.hot-update.js", + "/chunks/oasis/invoices~chunks/platform~chunks/shared.3ffceeeff18e2ce02137.hot-update.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.3ffceeeff18e2ce02137.hot-update.js", + "/chunks/oasis/invoices~chunks/platform~chunks/shared.4b0bec00b34ee2363921.hot-update.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.4b0bec00b34ee2363921.hot-update.js", + "/chunks/oasis/invoices~chunks/platform~chunks/shared.3d4177546e680e5b6588.hot-update.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.3d4177546e680e5b6588.hot-update.js", + "/chunks/oasis/invoices/create-invoice.11bad75bf12b98b8ce07.hot-update.js": "/chunks/oasis/invoices/create-invoice.11bad75bf12b98b8ce07.hot-update.js" } diff --git a/resources/js/Oasis/Invoices/Invoices/CreateInvoice.vue b/resources/js/Oasis/Invoices/Invoices/CreateInvoice.vue index 166c35b0..a2994a3f 100644 --- a/resources/js/Oasis/Invoices/Invoices/CreateInvoice.vue +++ b/resources/js/Oasis/Invoices/Invoices/CreateInvoice.vue @@ -15,7 +15,7 @@
- + Recommendation based on your latest invoice number {{ latestInvoiceNumber }} @@ -26,7 +26,7 @@
- + Recommendation based on your invoice number @@ -36,8 +36,8 @@
- - + + {{ errors[0] }}
@@ -49,7 +49,7 @@
- + {{ errors[0] }} @@ -59,7 +59,7 @@
- + {{ errors[0] }}
@@ -67,7 +67,7 @@
- + {{ errors[0] }}
@@ -76,7 +76,7 @@
- + {{ errors[0] }}
@@ -84,7 +84,7 @@
- + {{ errors[0] }}
@@ -92,7 +92,7 @@
- + {{ errors[0] }}
@@ -101,7 +101,7 @@
- + {{ errors[0] }}
@@ -109,7 +109,7 @@
- + {{ errors[0] }}
@@ -118,7 +118,7 @@
- + {{ errors[0] }}
@@ -126,7 +126,7 @@
- + {{ errors[0] }}
@@ -134,7 +134,7 @@
- + {{ errors[0] }}
@@ -153,7 +153,7 @@
- +
@@ -190,7 +190,7 @@
- + Add New Item
@@ -201,7 +201,7 @@ Discount
- +
@@ -209,13 +209,13 @@
- +
- + {{ errors[0] }}
@@ -223,7 +223,7 @@
- + {{ errors[0] }}
@@ -234,7 +234,7 @@ Others
- +
@@ -242,11 +242,11 @@
- +
- +
@@ -254,7 +254,7 @@
- +
@@ -511,22 +511,22 @@ isVatPayer: false, clients: [], latestInvoiceNumber: undefined, - _invoice: { + invoice: { invoice_type: '', invoice_number: '', variable_number: '', delivery_at: '', items: [ { - id: 1, + id: Math.floor(Math.random() * 10000000), description: '', amount: 1, - tax_rate: undefined, + tax_rate: 21, price: undefined, } ], - discount_type: null, - discount_rate: null, + discount_type: undefined, + discount_rate: undefined, client: '', client_avatar: '', client_name: '', @@ -542,7 +542,7 @@ send_invoice: true, store_client: true, }, - invoice: { + /*invoice: { invoice_type: 'regular-invoice', invoice_number: undefined, variable_number: undefined, @@ -564,7 +564,7 @@ client_ic_dph: 'SK2023489457', send_invoice: false, store_client: true, - }, + },*/ invoiceTypeList: [ { label: 'Regular Invoice', @@ -605,6 +605,7 @@ if (!isValid) { this.isError = true + this.errorMessage = 'There is probably an error, please check it and fix it.' return } @@ -620,7 +621,8 @@ if (key === 'items') { formData.append(key, JSON.stringify(this.invoice[key])) } else { - formData.append(key, this.invoice[key]) + if (this.invoice[key]) + formData.append(key, this.invoice[key]) } }) @@ -677,7 +679,7 @@ id: Math.floor(Math.random() * 10000000), description: '', amount: 1, - tax_rate: lastTaxRate?.tax_rate || 20, + tax_rate: lastTaxRate?.tax_rate || 21, price: 1, }) @@ -685,8 +687,19 @@ }, removeRow(item) { - this.invoice.items = this.invoice.items.filter(obj => obj.id !== item.id) + if (this.invoice.items.length > 1) + this.invoice.items = this.invoice.items.filter(obj => obj.id !== item.id) }, + get_recommended_delivery_date() { + let now = new Date(), + delivery_time = now.setDate(now.getDate() + 2 * 7) + + let year = new Intl.DateTimeFormat('en', {year: 'numeric'}).format(delivery_time), + month = new Intl.DateTimeFormat('en', {month: '2-digit'}).format(delivery_time), + day = new Intl.DateTimeFormat('en', {day: 'numeric'}).format(delivery_time) + + this.invoice.delivery_at = `${year}-${month}-${day}` + } }, mounted() { this.invoice.invoice_type = this.$route.query.type @@ -703,6 +716,8 @@ this.invoice.invoice_number = response.data.recommendedInvoiceNumber this.latestInvoiceNumber = response.data.latestInvoiceNumber + + this.get_recommended_delivery_date() }) .finally(() => { this.isLoadingPage = false @@ -734,6 +749,7 @@ .summary-list { box-shadow: 0 7px 20px 5px hsla(220, 36%, 16%, 0.06); border-radius: 8px; + min-width: 300px; position: sticky; padding: 25px; top: 85px; @@ -806,6 +822,13 @@ } } + .duplicator { + + .wrapper-inline { + margin-bottom: 0 !important; + } + } + @media only screen and (max-width: 970px) { .content-page { grid-template-columns: 1fr; diff --git a/resources/js/components/FilesView/FilePreviewMedia.vue b/resources/js/components/FilesView/FilePreviewMedia.vue index 189eac08..3b709bbb 100644 --- a/resources/js/components/FilesView/FilePreviewMedia.vue +++ b/resources/js/components/FilesView/FilePreviewMedia.vue @@ -251,10 +251,12 @@ export default { } #pdf-wrapper { - overflow-y: scroll; + border-radius: 8px; + box-shadow: $light_mode_popup_shadow; + overflow-y: scroll; margin: 0 auto; position: absolute; - top: 0; + top: 20px; left: 0; right: 0; bottom: 0; diff --git a/resources/sass/app.scss b/resources/sass/app.scss index f6ea6cf6..b1498934 100644 --- a/resources/sass/app.scss +++ b/resources/sass/app.scss @@ -65,7 +65,7 @@ .duplicator { .duplicator-add-button { - //width: 100%; + width: 100%; } .duplicator-item { @@ -109,7 +109,7 @@ border-radius: 0; padding: 0 0 8px; - &:focus { + &:focus, &.is-error { border-top-color: transparent !important; border-left-color: transparent !important; border-right-color: transparent !important; diff --git a/resources/views/oasis/invoices/invoice.blade.php b/resources/views/oasis/invoices/invoice.blade.php index eefeecbe..675c9241 100644 --- a/resources/views/oasis/invoices/invoice.blade.php +++ b/resources/views/oasis/invoices/invoice.blade.php @@ -61,7 +61,7 @@
-
+

Odberateľ:

{{ $invoice->client['name'] }}

{{ $invoice->client['address'] }}, {{ $invoice->client['city'] }}