- decimal price fixes

This commit is contained in:
Peter Papp
2021-05-19 13:03:33 +02:00
parent 78aa1a0779
commit 983425b89a
7 changed files with 358 additions and 64 deletions

View File

@@ -48,8 +48,8 @@
},
"repositories": [
{
"type": "github",
"url": "https://github.com/MakingCG/vuefilemanager-invoicing"
"type": "path",
"url": "../vuefilemanager-invoicing"
}
],
"config": {

275
composer.lock generated
View File

@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "6ca10173373af1fde3bc88514b683485",
"content-hash": "05f5fbce0a8edb0f0342958e997d87bc",
"packages": [
{
"name": "amphp/amp",
@@ -230,16 +230,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.181.2",
"version": "3.183.0",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "ca4839367aa57de005d52593081eab777b87a6b0"
"reference": "bf4a4e56859b89ab307033bf695467f6d6042dda"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/ca4839367aa57de005d52593081eab777b87a6b0",
"reference": "ca4839367aa57de005d52593081eab777b87a6b0",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/bf4a4e56859b89ab307033bf695467f6d6042dda",
"reference": "bf4a4e56859b89ab307033bf695467f6d6042dda",
"shasum": ""
},
"require": {
@@ -314,9 +314,9 @@
"support": {
"forum": "https://forums.aws.amazon.com/forum.jspa?forumID=80",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.181.2"
"source": "https://github.com/aws/aws-sdk-php/tree/3.183.0"
},
"time": "2021-05-14T18:16:31+00:00"
"time": "2021-05-18T18:13:37+00:00"
},
{
"name": "bacon/bacon-qr-code",
@@ -371,6 +371,71 @@
},
"time": "2020-10-30T02:02:47+00:00"
},
{
"name": "barryvdh/laravel-snappy",
"version": "v0.4.8",
"source": {
"type": "git",
"url": "https://github.com/barryvdh/laravel-snappy.git",
"reference": "1903ab84171072b6bff8d98eb58d38b2c9aaf645"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/barryvdh/laravel-snappy/zipball/1903ab84171072b6bff8d98eb58d38b2c9aaf645",
"reference": "1903ab84171072b6bff8d98eb58d38b2c9aaf645",
"shasum": ""
},
"require": {
"illuminate/filesystem": "^5.5|^6|^7|^8",
"illuminate/support": "^5.5|^6|^7|^8",
"knplabs/knp-snappy": "^1",
"php": ">=7"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "0.4-dev"
},
"laravel": {
"providers": [
"Barryvdh\\Snappy\\ServiceProvider"
],
"aliases": {
"PDF": "Barryvdh\\Snappy\\Facades\\SnappyPdf",
"SnappyImage": "Barryvdh\\Snappy\\Facades\\SnappyImage"
}
}
},
"autoload": {
"psr-4": {
"Barryvdh\\Snappy\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Barry vd. Heuvel",
"email": "barryvdh@gmail.com"
}
],
"description": "Snappy PDF/Image for Laravel",
"keywords": [
"image",
"laravel",
"pdf",
"snappy",
"wkhtmltoimage",
"wkhtmltopdf"
],
"support": {
"issues": "https://github.com/barryvdh/laravel-snappy/issues",
"source": "https://github.com/barryvdh/laravel-snappy/tree/master"
},
"time": "2020-09-07T12:33:10+00:00"
},
{
"name": "brianium/paratest",
"version": "v6.3.0",
@@ -949,16 +1014,16 @@
},
{
"name": "doctrine/cache",
"version": "1.11.0",
"version": "1.11.1",
"source": {
"type": "git",
"url": "https://github.com/doctrine/cache.git",
"reference": "a9c1b59eba5a08ca2770a76eddb88922f504e8e0"
"reference": "163074496dc7c3c7b8ccbf3d4376c0187424ed81"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/doctrine/cache/zipball/a9c1b59eba5a08ca2770a76eddb88922f504e8e0",
"reference": "a9c1b59eba5a08ca2770a76eddb88922f504e8e0",
"url": "https://api.github.com/repos/doctrine/cache/zipball/163074496dc7c3c7b8ccbf3d4376c0187424ed81",
"reference": "163074496dc7c3c7b8ccbf3d4376c0187424ed81",
"shasum": ""
},
"require": {
@@ -1028,7 +1093,7 @@
],
"support": {
"issues": "https://github.com/doctrine/cache/issues",
"source": "https://github.com/doctrine/cache/tree/1.11.0"
"source": "https://github.com/doctrine/cache/tree/1.11.1"
},
"funding": [
{
@@ -1044,7 +1109,7 @@
"type": "tidelift"
}
],
"time": "2021-04-13T14:46:17+00:00"
"time": "2021-05-18T16:45:32+00:00"
},
{
"name": "doctrine/dbal",
@@ -2571,6 +2636,76 @@
},
"time": "2017-06-01T20:29:30+00:00"
},
{
"name": "knplabs/knp-snappy",
"version": "v1.2.1",
"source": {
"type": "git",
"url": "https://github.com/KnpLabs/snappy.git",
"reference": "7bac60fb729147b7ccd8532c07df3f52a4afa8a4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/KnpLabs/snappy/zipball/7bac60fb729147b7ccd8532c07df3f52a4afa8a4",
"reference": "7bac60fb729147b7ccd8532c07df3f52a4afa8a4",
"shasum": ""
},
"require": {
"php": ">=7.1",
"psr/log": "^1.0",
"symfony/process": "~3.4||~4.3||~5.0"
},
"require-dev": {
"phpunit/phpunit": "~7.4"
},
"suggest": {
"h4cc/wkhtmltoimage-amd64": "Provides wkhtmltoimage-amd64 binary for Linux-compatible machines, use version `~0.12` as dependency",
"h4cc/wkhtmltoimage-i386": "Provides wkhtmltoimage-i386 binary for Linux-compatible machines, use version `~0.12` as dependency",
"h4cc/wkhtmltopdf-amd64": "Provides wkhtmltopdf-amd64 binary for Linux-compatible machines, use version `~0.12` as dependency",
"h4cc/wkhtmltopdf-i386": "Provides wkhtmltopdf-i386 binary for Linux-compatible machines, use version `~0.12` as dependency",
"wemersonjanuario/wkhtmltopdf-windows": "Provides wkhtmltopdf executable for Windows, use version `~0.12` as dependency"
},
"type": "library",
"extra": {
"branch-alias": {
"dev-master": "1.x-dev"
}
},
"autoload": {
"psr-4": {
"Knp\\Snappy\\": "src/Knp/Snappy"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "KnpLabs Team",
"homepage": "http://knplabs.com"
},
{
"name": "Symfony Community",
"homepage": "http://github.com/KnpLabs/snappy/contributors"
}
],
"description": "PHP5 library allowing thumbnail, snapshot or PDF generation from a url or a html page. Wrapper for wkhtmltopdf/wkhtmltoimage.",
"homepage": "http://github.com/KnpLabs/snappy",
"keywords": [
"knp",
"knplabs",
"pdf",
"snapshot",
"thumbnail",
"wkhtmltopdf"
],
"support": {
"issues": "https://github.com/KnpLabs/snappy/issues",
"source": "https://github.com/KnpLabs/snappy/tree/master"
},
"time": "2020-01-20T08:30:30+00:00"
},
{
"name": "kyslik/column-sortable",
"version": "6.4.0",
@@ -2775,16 +2910,16 @@
},
{
"name": "laravel/framework",
"version": "v8.41.0",
"version": "v8.42.0",
"source": {
"type": "git",
"url": "https://github.com/laravel/framework.git",
"reference": "05417155d886df8710e55c84e12622b52d83c47c"
"reference": "55b886683e0a019bcad0d9d70bb781a3de1a6755"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/laravel/framework/zipball/05417155d886df8710e55c84e12622b52d83c47c",
"reference": "05417155d886df8710e55c84e12622b52d83c47c",
"url": "https://api.github.com/repos/laravel/framework/zipball/55b886683e0a019bcad0d9d70bb781a3de1a6755",
"reference": "55b886683e0a019bcad0d9d70bb781a3de1a6755",
"shasum": ""
},
"require": {
@@ -2939,7 +3074,7 @@
"issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework"
},
"time": "2021-05-11T14:00:02+00:00"
"time": "2021-05-18T15:37:44+00:00"
},
{
"name": "laravel/sanctum",
@@ -3613,6 +3748,98 @@
},
"time": "2020-12-01T23:44:14+00:00"
},
{
"name": "makingcg/vuefilemanager-invoicing",
"version": "dev-master",
"dist": {
"type": "path",
"url": "../vuefilemanager-invoicing",
"reference": "bd08d17e34d1afe61d9a5b991825139591bfc61a"
},
"require": {
"barryvdh/laravel-snappy": "^0.4.8",
"ext-json": "*",
"illuminate/contracts": "^8.37",
"intervention/image": "^2.5",
"kyslik/column-sortable": "^6.4",
"laravel/cashier": "^12.13",
"laravel/sanctum": "^2.11",
"php": "^8.0",
"spatie/laravel-package-tools": "^1.4.3",
"teamtnt/laravel-scout-tntsearch-driver": "^11.3"
},
"require-dev": {
"brianium/paratest": "^6.2",
"ext-json": "*",
"friendsofphp/php-cs-fixer": "^2.19",
"nunomaduro/collision": "^5.3",
"orchestra/testbench": "^6.15",
"phpunit/phpunit": "^9.3",
"spatie/laravel-ray": "^1.9",
"vimeo/psalm": "^4.7.2"
},
"type": "library",
"extra": {
"laravel": {
"providers": [
"Makingcg\\Invoice\\InvoiceServiceProvider",
"Kyslik\\ColumnSortable\\ColumnSortableServiceProvider"
],
"aliases": {
"Invoice": "Makingcg\\Invoice\\InvoiceFacade",
"PDF": "Barryvdh\\Snappy\\Facades\\SnappyPdf"
}
}
},
"autoload": {
"psr-4": {
"Makingcg\\Invoice\\": "src",
"Makingcg\\Invoice\\Database\\Factories\\": "database/factories"
},
"files": [
"src/helpers.php"
]
},
"autoload-dev": {
"psr-4": {
"Makingcg\\Invoice\\Tests\\": "tests"
}
},
"scripts": {
"psalm": [
"vendor/bin/psalm"
],
"format": [
"vendor/bin/php-cs-fixer fix --allow-risky=yes"
],
"test": [
"./vendor/bin/testbench package:test --parallel --no-coverage"
],
"test-coverage": [
"vendor/bin/phpunit --coverage-html coverage"
]
},
"license": [
"MIT"
],
"authors": [
{
"name": "Peter Papp",
"email": "peterpapp@makingcg.com",
"role": "Developer"
}
],
"description": "The invoice system for VueFileManager app",
"homepage": "https://github.com/makingcg/vuefilemanager-invoicing",
"keywords": [
"MakingCG",
"laravel",
"vuefilemanager-invoicing"
],
"transport-options": {
"relative": true
}
},
{
"name": "mockery/mockery",
"version": "1.4.3",
@@ -10618,12 +10845,12 @@
"source": {
"type": "git",
"url": "https://github.com/composer/composer.git",
"reference": "5456cf81971b897ee82f75e82d2bcc3ad0bc6b84"
"reference": "5bf614a7625c40db6330d42863a2a61d7aadb5b6"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/composer/composer/zipball/5456cf81971b897ee82f75e82d2bcc3ad0bc6b84",
"reference": "5456cf81971b897ee82f75e82d2bcc3ad0bc6b84",
"url": "https://api.github.com/repos/composer/composer/zipball/5bf614a7625c40db6330d42863a2a61d7aadb5b6",
"reference": "5bf614a7625c40db6330d42863a2a61d7aadb5b6",
"shasum": ""
},
"require": {
@@ -10709,7 +10936,7 @@
"type": "tidelift"
}
],
"time": "2021-05-12T13:19:52+00:00"
"time": "2021-05-17T20:35:56+00:00"
},
{
"name": "composer/metadata-minifier",
@@ -11917,7 +12144,9 @@
],
"aliases": [],
"minimum-stability": "dev",
"stability-flags": [],
"stability-flags": {
"makingcg/vuefilemanager-invoicing": 20
},
"prefer-stable": true,
"prefer-lowest": false,
"platform": {

View File

@@ -55,9 +55,9 @@
"/chunks/oasis/invoices/client-detail.js": "/chunks/oasis/invoices/client-detail.js?id=2acbe292c3671f3dbf55",
"/chunks/oasis/invoices/client-invoices.js": "/chunks/oasis/invoices/client-invoices.js?id=d393bc04694023a2591b",
"/chunks/oasis/invoices/create-client.js": "/chunks/oasis/invoices/create-client.js?id=c4d22f8f40db80976b36",
"/chunks/oasis/invoices/create-invoice.js": "/chunks/oasis/invoices/create-invoice.js?id=ca8d59b3d5e29de53993",
"/chunks/oasis/invoices/edit-invoice.js": "/chunks/oasis/invoices/edit-invoice.js?id=1f9d5b9d49be0989dcfc",
"/chunks/oasis/invoices/list.js": "/chunks/oasis/invoices/list.js?id=86bb18e99536bcb4d5c4",
"/chunks/oasis/invoices/create-invoice.js": "/chunks/oasis/invoices/create-invoice.js?id=dabf4a9de71b3bf3eab4",
"/chunks/oasis/invoices/edit-invoice.js": "/chunks/oasis/invoices/edit-invoice.js?id=295f4e18a2e6729328f4",
"/chunks/oasis/invoices/list.js": "/chunks/oasis/invoices/list.js?id=b138f14c38c3a9f7d75a",
"/chunks/oasis/invoices/profile.js": "/chunks/oasis/invoices/profile.js?id=c552dc38756ae53a6f23",
"/chunks/oasis/invoices~chunks/platform~chunks/shared.js": "/chunks/oasis/invoices~chunks/platform~chunks/shared.js?id=4f78c954ea35727cfa9f",
"/chunks/oasis/platba.js": "/chunks/oasis/platba.js?id=cf99bcf3f3cff5b7ad69",
@@ -111,18 +111,65 @@
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~66c4fa45.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~66c4fa45.js?id=a90d02375626aeb98cba",
"/vendors~chunks/files~chunks/oasis/invoices~chunks/platform~chunks/shared~chunks/shared/file-browser~~b42d96c6.js": "/vendors~chunks/files~chunks/oasis/invoices~chunks/platform~chunks/shared~chunks/shared/file-browser~~b42d96c6.js?id=052d693d0460936fcf73",
"/vendors~chunks/oasis/invoices~chunks/platform~chunks/shared.js": "/vendors~chunks/oasis/invoices~chunks/platform~chunks/shared.js?id=9b089a73923448db1f5f",
"/chunks/oasis/invoices/create-invoice.f08d803cb1c6810fcea2.hot-update.js": "/chunks/oasis/invoices/create-invoice.f08d803cb1c6810fcea2.hot-update.js",
"/chunks/oasis/invoices/create-invoice.6e49a81c121360307b6c.hot-update.js": "/chunks/oasis/invoices/create-invoice.6e49a81c121360307b6c.hot-update.js",
"/chunks/oasis/invoices/create-invoice.74cefa6a5eeac63bd13b.hot-update.js": "/chunks/oasis/invoices/create-invoice.74cefa6a5eeac63bd13b.hot-update.js",
"/chunks/oasis/invoices/create-invoice.e422c4d39d4fbcc12e5d.hot-update.js": "/chunks/oasis/invoices/create-invoice.e422c4d39d4fbcc12e5d.hot-update.js",
"/js/main.a58c554d15d09586c85c.hot-update.js": "/js/main.a58c554d15d09586c85c.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.18f5afa08d57e275f8e5.hot-update.js": "/chunks/oasis/invoices/edit-invoice.18f5afa08d57e275f8e5.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.cefb6ea7fec4aa1474c0.hot-update.js": "/chunks/oasis/invoices/edit-invoice.cefb6ea7fec4aa1474c0.hot-update.js",
"/js/main.fbdbb5bafb2036ae42d1.hot-update.js": "/js/main.fbdbb5bafb2036ae42d1.hot-update.js",
"/js/main.db5fa61c06b295a02463.hot-update.js": "/js/main.db5fa61c06b295a02463.hot-update.js",
"/js/main.75d7dbe6b53ff3ca08ed.hot-update.js": "/js/main.75d7dbe6b53ff3ca08ed.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.bbacf7e2a2262ede3446.hot-update.js": "/chunks/oasis/invoices/edit-invoice.bbacf7e2a2262ede3446.hot-update.js",
"/js/main.752910035cef4b981565.hot-update.js": "/js/main.752910035cef4b981565.hot-update.js",
"/js/main.0b8825dc2b1570338c42.hot-update.js": "/js/main.0b8825dc2b1570338c42.hot-update.js",
"/js/main.334ec08e2ac1a7041c3c.hot-update.js": "/js/main.334ec08e2ac1a7041c3c.hot-update.js",
"/js/main.300d39d1f86dbde72dbd.hot-update.js": "/js/main.300d39d1f86dbde72dbd.hot-update.js",
"/js/main.487bb5c0f8fcadccc245.hot-update.js": "/js/main.487bb5c0f8fcadccc245.hot-update.js",
"/js/main.c25fb46d2241c44afbdc.hot-update.js": "/js/main.c25fb46d2241c44afbdc.hot-update.js",
"/js/main.01a4f22426a5ab84eb18.hot-update.js": "/js/main.01a4f22426a5ab84eb18.hot-update.js",
"/js/main.da590b10aea17b6d3298.hot-update.js": "/js/main.da590b10aea17b6d3298.hot-update.js",
"/js/main.b7b19848b959c3a8946d.hot-update.js": "/js/main.b7b19848b959c3a8946d.hot-update.js",
"/js/main.e43e0b55b747475e6844.hot-update.js": "/js/main.e43e0b55b747475e6844.hot-update.js",
"/js/main.04ca99969639f0d08866.hot-update.js": "/js/main.04ca99969639f0d08866.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.29be0a6b31b78519db7f.hot-update.js": "/chunks/oasis/invoices/edit-invoice.29be0a6b31b78519db7f.hot-update.js",
"/js/main.7dc4da6deb35c9d90cdc.hot-update.js": "/js/main.7dc4da6deb35c9d90cdc.hot-update.js",
"/js/main.789fb621ee00d34babb4.hot-update.js": "/js/main.789fb621ee00d34babb4.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.92e43d8983ab5e1ac311.hot-update.js": "/chunks/oasis/invoices/edit-invoice.92e43d8983ab5e1ac311.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.ddbbd23029d56c9b8131.hot-update.js": "/chunks/oasis/invoices/edit-invoice.ddbbd23029d56c9b8131.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.4bfc311afc9d68c11fc4.hot-update.js": "/chunks/oasis/invoices/edit-invoice.4bfc311afc9d68c11fc4.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.74c270ac0f1239b8bb9b.hot-update.js": "/chunks/oasis/invoices/edit-invoice.74c270ac0f1239b8bb9b.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.5f9aa88996e12cf19ba2.hot-update.js": "/chunks/oasis/invoices/edit-invoice.5f9aa88996e12cf19ba2.hot-update.js",
"/js/main.f71279c6a1e267f61d39.hot-update.js": "/js/main.f71279c6a1e267f61d39.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.250a6b484c4a2485527b.hot-update.js": "/chunks/oasis/invoices/edit-invoice.250a6b484c4a2485527b.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.50608e5528f490bc0d8a.hot-update.js": "/chunks/oasis/invoices/edit-invoice.50608e5528f490bc0d8a.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.d776e5fb129c0e5c1492.hot-update.js": "/chunks/oasis/invoices/edit-invoice.d776e5fb129c0e5c1492.hot-update.js",
"/js/main.7c0db7524d19703b66a0.hot-update.js": "/js/main.7c0db7524d19703b66a0.hot-update.js",
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~f80ec77f.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~f80ec77f.js?id=017d9ca4d9ffe990d622",
"/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~12b8675c.js": "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~12b8675c.js?id=8c94038ec19456613822",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2efd95ce.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2efd95ce.js?id=04ef038fd2d284f2ac52",
"/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~27676aa0.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~27676aa0.js?id=cdfeaa3703acc1b45662",
"/chunks/oasis/invoices/create-invoice.a58c554d15d09586c85c.hot-update.js": "/chunks/oasis/invoices/create-invoice.a58c554d15d09586c85c.hot-update.js",
"/chunks/oasis/invoices/create-invoice.7c0db7524d19703b66a0.hot-update.js": "/chunks/oasis/invoices/create-invoice.7c0db7524d19703b66a0.hot-update.js",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2d6e823e.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~2d6e823e.js?id=ad963a59f556fc18790c",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~e700b242.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~e700b242.js?id=ccb6e669b6efd3db030a",
"/js/main.c73fff7d749b1f031224.hot-update.js": "/js/main.c73fff7d749b1f031224.hot-update.js",
"/chunks/oasis/invoices/create-invoice.c73fff7d749b1f031224.hot-update.js": "/chunks/oasis/invoices/create-invoice.c73fff7d749b1f031224.hot-update.js"
"/js/main.db40c73f64da4d79b9e9.hot-update.js": "/js/main.db40c73f64da4d79b9e9.hot-update.js",
"/chunks/oasis/invoices/create-invoice.db40c73f64da4d79b9e9.hot-update.js": "/chunks/oasis/invoices/create-invoice.db40c73f64da4d79b9e9.hot-update.js",
"/chunks/oasis/invoices/create-invoice.e9719c18226ba476e305.hot-update.js": "/chunks/oasis/invoices/create-invoice.e9719c18226ba476e305.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.e9719c18226ba476e305.hot-update.js": "/chunks/oasis/invoices/edit-invoice.e9719c18226ba476e305.hot-update.js",
"/chunks/oasis/invoices/list.027ef3c146c1f26ef137.hot-update.js": "/chunks/oasis/invoices/list.027ef3c146c1f26ef137.hot-update.js",
"/js/main.92606c83af15456a6acc.hot-update.js": "/js/main.92606c83af15456a6acc.hot-update.js",
"/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~f7b5598c.js": "/chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chu~f7b5598c.js?id=21eb736cc7cb7b70183f",
"/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~968e2d44.js": "/chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/~968e2d44.js?id=d0f03aa0d57679dcdd29",
"/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2a5ca68e.js": "/chunks/app-appearance~chunks/app-billings~chunks/app-email~chunks/app-index~chunks/app-others~chunks~2a5ca68e.js?id=069ae453afe6ad59e7b4",
"/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~860c81f3.js": "/chunks/app-language~chunks/app-settings~chunks/dashboard~chunks/dashboard-oasis~chunks/invoices~chun~860c81f3.js?id=ed255ca0acd5a867c689",
"/chunks/oasis/invoices/edit-invoice.92606c83af15456a6acc.hot-update.js": "/chunks/oasis/invoices/edit-invoice.92606c83af15456a6acc.hot-update.js",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~93d07c0f.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~93d07c0f.js?id=f58e44818026acafb1d3",
"/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~9a274fed.js": "/vendors~chunks/admin~chunks/admin-account~chunks/app-appearance~chunks/app-billings~chunks/app-email~9a274fed.js?id=45f82c2111283716589b",
"/js/main.f299e8167fa965b2fdfb.hot-update.js": "/js/main.f299e8167fa965b2fdfb.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.f299e8167fa965b2fdfb.hot-update.js": "/chunks/oasis/invoices/edit-invoice.f299e8167fa965b2fdfb.hot-update.js",
"/chunks/oasis/invoices/create-invoice.4ec544c3efe75e9349fd.hot-update.js": "/chunks/oasis/invoices/create-invoice.4ec544c3efe75e9349fd.hot-update.js",
"/chunks/oasis/invoices/create-invoice.95d9add8eaa9ab618740.hot-update.js": "/chunks/oasis/invoices/create-invoice.95d9add8eaa9ab618740.hot-update.js",
"/js/main.e1c3f739c2ca33919feb.hot-update.js": "/js/main.e1c3f739c2ca33919feb.hot-update.js",
"/chunks/oasis/invoices/create-invoice.e1c3f739c2ca33919feb.hot-update.js": "/chunks/oasis/invoices/create-invoice.e1c3f739c2ca33919feb.hot-update.js",
"/js/main.47bca65cb0e69947406c.hot-update.js": "/js/main.47bca65cb0e69947406c.hot-update.js",
"/chunks/oasis/invoices/create-invoice.47bca65cb0e69947406c.hot-update.js": "/chunks/oasis/invoices/create-invoice.47bca65cb0e69947406c.hot-update.js",
"/chunks/oasis/invoices/create-invoice.68315bb68c83d08b6b46.hot-update.js": "/chunks/oasis/invoices/create-invoice.68315bb68c83d08b6b46.hot-update.js",
"/chunks/oasis/invoices/create-invoice.d530ffe97a7520cf1ab6.hot-update.js": "/chunks/oasis/invoices/create-invoice.d530ffe97a7520cf1ab6.hot-update.js",
"/chunks/oasis/invoices/edit-invoice.e84d84adb06bbfecbb95.hot-update.js": "/chunks/oasis/invoices/edit-invoice.e84d84adb06bbfecbb95.hot-update.js"
}

View File

@@ -168,7 +168,7 @@
<div class="block-wrapper">
<label>{{ $t('in_editor.amount') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="amount" rules="required" v-slot="{ errors }">
<input v-model.number="item.amount" :placeholder="$t('in_editor.plac.item_amount')" type="number" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.amount" :placeholder="$t('in_editor.plac.item_amount')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -176,7 +176,7 @@
<div class="block-wrapper">
<label>{{ $t('in_editor.unit') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="unit" rules="required" v-slot="{ errors }">
<input v-model.number="item.unit" :placeholder="$t('in_editor.plac.item_unit')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.unit" :placeholder="$t('in_editor.plac.item_unit')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -184,7 +184,7 @@
<div v-if="isVatPayer" class="block-wrapper">
<label>{{ $t('in_editor.tax_rate') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="tax_rate" rules="required" v-slot="{ errors }">
<input v-model.number="item.tax_rate" :placeholder="$t('in_editor.plac.item_tax_rate')" type="number" step="1" min="1" max="100" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.tax_rate" :placeholder="$t('in_editor.plac.item_tax_rate')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -192,7 +192,7 @@
<div class="block-wrapper">
<label>{{ $t('in_editor.price') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="price" rules="required" v-slot="{ errors }">
<input v-model.number="item.price" :placeholder="$t('in_editor.plac.item_price')" type="text" pattern="[0-9]{1,4}(\.[0-9]{2})?" step="0.01" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.price" :placeholder="$t('in_editor.plac.item_price')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -397,14 +397,14 @@
bag.push({
rate: item.tax_rate,
total: (item.price * item.amount),
total: (this.$parseFloat(item.price) * this.$parseFloat(item.amount)),
})
} else {
bag.find(bagItem => {
// Count total tax rate for percentage
if (bagItem.rate === item.tax_rate) {
bagItem.total += (item.price * item.amount)
bagItem.total += (this.$parseFloat(item.price) * this.$parseFloat(item.amount))
}
})
}
@@ -440,7 +440,7 @@
bag.push({
rate: item.tax_rate,
total: (item.price * item.amount) * (item.tax_rate / 100),
total: (this.$parseFloat(item.price) * this.$parseFloat(item.amount)) * (item.tax_rate / 100),
})
} else {
@@ -449,7 +449,7 @@
// Count total tax rate for percentage
if (bagItem.rate === item.tax_rate) {
bagItem.total += (item.price * item.amount) * (item.tax_rate / 100)
bagItem.total += (this.$parseFloat(item.price) * this.$parseFloat(item.amount)) * (item.tax_rate / 100)
}
})
}
@@ -480,7 +480,7 @@
this.invoice.items.forEach(item => {
if (item.price && item.amount) {
let total_without_tax = (item.price * item.amount)
let total_without_tax = (this.$parseFloat(item.price) * this.$parseFloat(item.amount))
// Count tax
if (this.isVatPayer && item.tax_rate) {
@@ -545,8 +545,8 @@
price: undefined,
}
],
discount_type: 'percent',
discount_rate: 10,
discount_type: undefined,
discount_rate: undefined,
client: '',
client_avatar: '',
client_name: '',
@@ -693,7 +693,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)
day = new Intl.DateTimeFormat('en', {day: '2-digit'}).format(delivery_time)
this.invoice.delivery_at = `${year}-${month}-${day}`
}
@@ -701,6 +701,8 @@
mounted() {
this.invoice.invoice_type = this.$route.query.type
this.get_recommended_delivery_date()
if (this.user && ! this.user.data.attributes.has_billing_profile) {
this.$router.push({name: 'BillingProfileSetUp'})
}
@@ -718,7 +720,6 @@
this.invoice.invoice_number = response.data.recommendedInvoiceNumber
this.latestInvoiceNumber = response.data.latestInvoiceNumber
this.get_recommended_delivery_date()
})
.finally(() => {
this.isLoadingPage = false

View File

@@ -75,7 +75,15 @@
<div class="block-wrapper">
<label>{{ $t('in_editor.amount') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="amount" rules="required" v-slot="{ errors }">
<input v-model.number="item.amount" :placeholder="$t('in_editor.plac.item_amount')" type="number" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.amount" :placeholder="$t('in_editor.plac.item_amount')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
<div class="block-wrapper">
<label>{{ $t('in_editor.unit') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="unit" rules="required" v-slot="{ errors }">
<input v-model="item.unit" :placeholder="$t('in_editor.plac.item_unit')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -83,7 +91,7 @@
<div v-if="isVatPayer" class="block-wrapper">
<label>{{ $t('in_editor.tax_rate') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="tax_rate" rules="required" v-slot="{ errors }">
<input v-model.number="item.tax_rate" :placeholder="$t('in_editor.plac.item_tax_rate')" type="number" step="1" min="1" max="100" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.tax_rate" :placeholder="$t('in_editor.plac.item_tax_rate')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -91,7 +99,7 @@
<div class="block-wrapper">
<label>{{ $t('in_editor.price') }}:</label>
<ValidationProvider tag="div" mode="passive" class="input-wrapper" name="price" rules="required" v-slot="{ errors }">
<input v-model.number="item.price" :placeholder="$t('in_editor.plac.item_price')" type="text" pattern="[0-9]{1,4}(\.[0-9]{2})?" step="0.01" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<input v-model="item.price" :placeholder="$t('in_editor.plac.item_price')" type="text" :class="{'is-error': errors[0]}" class="focus-border-theme" />
<span class="error-message" v-if="errors[0]">{{ errors[0] }}</span>
</ValidationProvider>
</div>
@@ -293,17 +301,16 @@
if (item.price && item.amount && item.tax_rate) {
if (!bag.find(bagItem => bagItem.rate === item.tax_rate)) {
bag.push({
rate: item.tax_rate,
total: (item.price * item.amount),
total: (this.$parseFloat(item.price) * this.$parseFloat(item.amount)),
})
} else {
bag.find(bagItem => {
// Count total tax rate for percentage
if (bagItem.rate === item.tax_rate) {
bagItem.total += (item.price * item.amount)
bagItem.total += (this.$parseFloat(item.price) * this.$parseFloat(item.amount))
}
})
}
@@ -339,7 +346,7 @@
bag.push({
rate: item.tax_rate,
total: (item.price * item.amount) * (item.tax_rate / 100),
total: (this.$parseFloat(item.price) * this.$parseFloat(item.amount)) * (item.tax_rate / 100),
})
} else {
@@ -348,7 +355,7 @@
// Count total tax rate for percentage
if (bagItem.rate === item.tax_rate) {
bagItem.total += (item.price * item.amount) * (item.tax_rate / 100)
bagItem.total += (this.$parseFloat(item.price) * this.$parseFloat(item.amount)) * (item.tax_rate / 100)
}
})
}
@@ -379,7 +386,7 @@
this.invoice.items.forEach(item => {
if (item.price && item.amount) {
let total_without_tax = (item.price * item.amount)
let total_without_tax = (this.$parseFloat(item.price) * this.$parseFloat(item.amount))
// Count tax
if (this.isVatPayer && item.tax_rate) {
@@ -490,14 +497,18 @@
// Start loading
this.isLoading = true
let payload = this.invoice
//payload.items = JSON.stringify(this.invoice.items)
// Send request to get user token
axios
.put(`/api/v1/invoicing/invoices/${this.$route.params.id}`, payload)
.put(`/api/v1/invoicing/invoices/${this.$route.params.id}`, this.invoice)
.then(() => {
this.$store.dispatch({
'regular-invoice': 'getRegularInvoices',
'advance-invoice': 'getAdvanceInvoices',
}[this.invoice.invoice_type])
this.$router.push({name: 'InvoicesList'})
events.$emit('toaster', {
type: 'success',
message: this.$t('in_toaster.success_invoice_edition'),

View File

@@ -21,7 +21,7 @@
<ToolbarGroup>
<PopoverWrapper>
<ToolbarButton @click.stop.native="createMenu" source="plus" :action="$t('actions.create_folder')" />
<PopoverItem name="desktop-create-invoices">
<PopoverItem name="desktop-create-invoices" side="left">
<OptionGroup>
<Option @click.stop.native="createInvoice('regular-invoice')" :title="$t('in_editor.page.create_regular_invoice')" icon="file-plus" />
<Option @click.stop.native="createInvoice('advance-invoice')" :title="$t('in_editor.page.create_advance_invoice')" icon="clock" />

View File

@@ -7,6 +7,12 @@ import router from "./router";
const OasisHelpers = {
install(Vue) {
Vue.prototype.$parseFloat = function (val) {
let number = val.toString().replace(',', '.')
return parseFloat(number)
}
Vue.prototype.$goToInvoice = function () {
router.push({name: 'InvoicesList'})