Merge branch 'develop'

This commit is contained in:
Dennis Eichhorn 2023-10-15 16:35:14 +00:00
commit 9804d352ec
65 changed files with 740 additions and 3066 deletions

View File

@ -18,3 +18,5 @@ jobs:
secrets: secrets:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_PAT: ${{ secrets.GH_PAT }} GH_PAT: ${{ secrets.GH_PAT }}
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

View File

@ -260,8 +260,6 @@ foreach ($taxes as $rate => $tax) {
$pdf->Ln(); $pdf->Ln();
} }
// @todo: add currency
$pdf->setFillColor(255, 162, 7); $pdf->setFillColor(255, 162, 7);
$pdf->setTextColor(255); $pdf->setTextColor(255);
$pdf->setDrawColor(255, 162, 7); $pdf->setDrawColor(255, 162, 7);

View File

@ -197,21 +197,6 @@
} }
] ]
}, },
{
"id": 1005107001,
"pid": "/sales/analysis",
"type": 3,
"subtype": 1,
"name": "Bill",
"uri": "{/base}/sales/analysis/bill",
"target": "self",
"icon": null,
"order": 15,
"from": "Billing",
"permission": { "permission": 2, "category": null, "element": null },
"parent": 1001602001,
"children": []
},
{ {
"id": 1005108001, "id": 1005108001,
"pid": "/purchase/analysis", "pid": "/purchase/analysis",
@ -224,7 +209,7 @@
"order": 15, "order": 15,
"from": "Billing", "from": "Billing",
"permission": { "permission": 2, "category": null, "element": null }, "permission": { "permission": 2, "category": null, "element": null },
"parent": 1001602001, "parent": 1002101001,
"children": [] "children": []
}, },
{ {
@ -232,8 +217,8 @@
"pid": "/", "pid": "/",
"type": 2, "type": 2,
"subtype": 1, "subtype": 1,
"name": "Purchase", "name": "InvoiceRecognition",
"uri": "{/base}/private/purchase/billing/dashboard?{?}", "uri": "{/base}/private/purchase/recognition/dashboard?{?}",
"target": "self", "target": "self",
"icon": null, "icon": null,
"order": 5, "order": 5,
@ -247,7 +232,7 @@
"type": 3, "type": 3,
"subtype": 1, "subtype": 1,
"name": "List", "name": "List",
"uri": "{/base}/private/purchase/billing/dashboard?{?}", "uri": "{/base}/private/purchase/recognition/dashboard?{?}",
"target": "self", "target": "self",
"icon": null, "icon": null,
"order": 1, "order": 1,
@ -263,7 +248,7 @@
"type": 3, "type": 3,
"subtype": 1, "subtype": 1,
"name": "Upload", "name": "Upload",
"uri": "{/base}/private/purchase/billing/upload?{?}", "uri": "{/base}/private/purchase/recognition/upload?{?}",
"target": "self", "target": "self",
"icon": null, "icon": null,
"order": 5, "order": 5,
@ -274,5 +259,53 @@
] ]
} }
] ]
},
{
"id": 1005110001,
"pid": "/",
"type": 2,
"subtype": 1,
"name": "InvoiceRecognition",
"uri": "{/base}/purchase/recognition/dashboard?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Billing",
"permission": { "permission": 2, "category": null, "element": null },
"parent": 1003401001,
"children": [
{
"id": 1005110101,
"pid": "/",
"type": 3,
"subtype": 1,
"name": "List",
"uri": "{/base}/purchase/recognition/dashboard?{?}",
"target": "self",
"icon": null,
"order": 1,
"from": "Billing",
"permission": { "permission": 2, "category": null, "element": null },
"parent": 1005110001,
"children": [
]
},
{
"id": 1005110201,
"pid": "/",
"type": 3,
"subtype": 1,
"name": "Upload",
"uri": "{/base}/purchase/recognition/upload?{?}",
"target": "self",
"icon": null,
"order": 5,
"from": "Billing",
"permission": { "permission": 2, "category": null, "element": null },
"parent": 1005110001,
"children": [
]
}
]
} }
] ]

View File

@ -135,7 +135,7 @@ final class Installer extends InstallerAbstract
$module->apiBillAttributeTypeCreate($request, $response); $module->apiBillAttributeTypeCreate($request, $response);
$responseData = $response->get(''); $responseData = $response->getData('');
if (!\is_array($responseData)) { if (!\is_array($responseData)) {
continue; continue;
@ -207,7 +207,7 @@ final class Installer extends InstallerAbstract
$module->apiBillAttributeValueCreate($request, $response); $module->apiBillAttributeValueCreate($request, $response);
$responseData = $response->get(''); $responseData = $response->getData('');
if (!\is_array($responseData)) { if (!\is_array($responseData)) {
continue; continue;
} }
@ -293,7 +293,7 @@ final class Installer extends InstallerAbstract
$module->apiTaxCombinationCreate($request, $response); $module->apiTaxCombinationCreate($request, $response);
$responseData = $response->get(''); $responseData = $response->getData('');
if (!\is_array($responseData)) { if (!\is_array($responseData)) {
continue; continue;
} }
@ -345,7 +345,7 @@ final class Installer extends InstallerAbstract
$module->apiBillTypeCreate($request, $response); $module->apiBillTypeCreate($request, $response);
$responseData = $response->get(''); $responseData = $response->getData('');
if (!\is_array($responseData)) { if (!\is_array($responseData)) {
continue; continue;
} }

View File

@ -131,41 +131,7 @@ return [
], ],
], ],
'^.*/sales/analysis/bill(\?.*|$)$' => [ '^.*/private/purchase/recognition/dashboard.*$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewBillAnalysis',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::SALES_INVOICE,
],
],
],
'^.*/sales/analysis/rep(\?.*|$)$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewSalesRepAnalysis',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::SALES_ANALYSIS,
],
],
],
'^.*/sales/analysis/region(\?.*|$)$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewRegionAnalysis',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::SALES_ANALYSIS,
],
],
],
'^.*/private/purchase/billing/dashboard.*$' => [
[ [
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillDashboard', 'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillDashboard',
'verb' => RouteVerb::GET, 'verb' => RouteVerb::GET,
@ -176,7 +142,7 @@ return [
], ],
], ],
], ],
'^.*/private/purchase/billing/upload.*$' => [ '^.*/private/purchase/recognition/upload.*$' => [
[ [
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillUpload', 'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillUpload',
'verb' => RouteVerb::GET, 'verb' => RouteVerb::GET,
@ -187,7 +153,40 @@ return [
], ],
], ],
], ],
'^.*/private/purchase/billing/bill.*$' => [ '^.*/private/purchase/recognition/bill.*$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivateBillingPurchaseInvoice',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::PRIVATE_DASHBOARD,
],
],
],
'^.*/purchase/recognition/dashboard.*$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillDashboard',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::PRIVATE_DASHBOARD,
],
],
],
'^.*/purchase/recognition/upload.*$' => [
[
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivatePurchaseBillUpload',
'verb' => RouteVerb::GET,
'permission' => [
'module' => BackendController::NAME,
'type' => PermissionType::READ,
'state' => PermissionCategory::PRIVATE_BILL_UPLOAD,
],
],
],
'^.*/purchase/recognition/bill.*$' => [
[ [
'dest' => '\Modules\Billing\Controller\BackendController:viewPrivateBillingPurchaseInvoice', 'dest' => '\Modules\Billing\Controller\BackendController:viewPrivateBillingPurchaseInvoice',
'verb' => RouteVerb::GET, 'verb' => RouteVerb::GET,

View File

@ -61,7 +61,8 @@ final class ApiAttributeController extends Controller
return; return;
} }
$attribute = $this->createAttributeFromRequest($request); $type = BillAttributeTypeMapper::get()->with('defaults')->where('id', (int) $request->getData('type'))->execute();
$attribute = $this->createAttributeFromRequest($request, $type);
$this->createModel($request->header->account, $attribute, BillAttributeMapper::class, 'attribute', $request->getOrigin()); $this->createModel($request->header->account, $attribute, BillAttributeMapper::class, 'attribute', $request->getOrigin());
$this->createStandardCreateResponse($request, $response, $attribute); $this->createStandardCreateResponse($request, $response, $attribute);
} }
@ -358,7 +359,7 @@ final class ApiAttributeController extends Controller
} }
/** @var AttributeType $old */ /** @var AttributeType $old */
$old = BillAttributeTypeMapper::get()->where('id', (int) $request->getData('id'))->execute(); $old = BillAttributeTypeMapper::get()->with('defaults')->where('id', (int) $request->getData('id'))->execute();
$new = $this->updateAttributeTypeFromRequest($request, clone $old); $new = $this->updateAttributeTypeFromRequest($request, clone $old);
$this->updateModel($request->header->account, $old, $new, BillAttributeTypeMapper::class, 'bill_attribute_type', $request->getOrigin()); $this->updateModel($request->header->account, $old, $new, BillAttributeTypeMapper::class, 'bill_attribute_type', $request->getOrigin());
@ -390,7 +391,7 @@ final class ApiAttributeController extends Controller
} }
/** @var AttributeType $billAttributeType */ /** @var AttributeType $billAttributeType */
$billAttributeType = BillAttributeTypeMapper::get()->where('id', (int) $request->getData('id'))->execute(); $billAttributeType = BillAttributeTypeMapper::get()->with('defaults')->where('id', (int) $request->getData('id'))->execute();
$this->deleteModel($request->header->account, $billAttributeType, BillAttributeTypeMapper::class, 'bill_attribute_type', $request->getOrigin()); $this->deleteModel($request->header->account, $billAttributeType, BillAttributeTypeMapper::class, 'bill_attribute_type', $request->getOrigin());
$this->createStandardDeleteResponse($request, $response, $billAttributeType); $this->createStandardDeleteResponse($request, $response, $billAttributeType);
} }

View File

@ -182,8 +182,10 @@ final class ApiBillController extends Controller
{ {
$this->createModel($request->header->account, $bill, BillMapper::class, 'bill', $request->getOrigin()); $this->createModel($request->header->account, $bill, BillMapper::class, 'bill', $request->getOrigin());
// We ned to get the bill again since the bill has a trigger which is executed on insert // We need to get the bill again since the bill has a trigger which is executed on insert
// @todo: consider to remove the trigger and select the latest bill here and add + 1 to the new sequence since we have to tdo an update anyways // Doing this manually would cause concurrency issues because there are times (up to 200ms)
// when the previous element doesn't have a sequence defined.
/** @var Bill $bill */ /** @var Bill $bill */
$tmp = BillMapper::get() $tmp = BillMapper::get()
->where('id', $bill->id) ->where('id', $bill->id)
@ -192,7 +194,7 @@ final class ApiBillController extends Controller
$bill->sequence = $tmp->sequence; $bill->sequence = $tmp->sequence;
$old = clone $bill; $old = clone $bill;
$bill->buildNumber(); // The bill id is part of the number $bill->buildNumber(); // The bill sequence number is part of the number
$this->updateModel($request->header->account, $old, $bill, BillMapper::class, 'bill', $request->getOrigin()); $this->updateModel($request->header->account, $old, $bill, BillMapper::class, 'bill', $request->getOrigin());
} }
@ -537,7 +539,7 @@ final class ApiBillController extends Controller
->execute(); ->execute();
if (\count($billCollection) !== 1) { if (\count($billCollection) !== 1) {
// For some reason there are multiple collections with the same virtual path? // @todo: For some reason there are multiple collections with the same virtual path?
// @todo: check if this is the correct way to handle it or if we need to make sure that it is a collection // @todo: check if this is the correct way to handle it or if we need to make sure that it is a collection
return; return;
} }

View File

@ -106,7 +106,6 @@ final class ApiPriceController extends Controller
} }
// Get all relevant prices // Get all relevant prices
// @todo: allow to define NOT IN somehow (e.g. not in France -> simple solution to define export prices etc.)
$queryMapper = PriceMapper::getAll(); $queryMapper = PriceMapper::getAll();
if ($request->hasData('price_name')) { if ($request->hasData('price_name')) {

View File

@ -367,320 +367,6 @@ final class BackendController extends Controller
return $view; return $view;
} }
/**
* Routing end-point for application behaviour.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewRegionAnalysis(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface
{
$head = $response->data['Content']->head;
$nonce = $this->app->appSettings->getOption('script-nonce');
$head->addAsset(AssetType::CSS, 'Resources/chartjs/Chartjs/chart.css');
$head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js', ['nonce' => $nonce]);
$head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['nonce' => $nonce, 'type' => 'module']);
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Billing/Theme/Backend/region-analysis');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response);
$monthlySalesCosts = [];
for ($i = 1; $i < 13; ++$i) {
$monthlySalesCosts[] = [
'net_sales' => $sales = \mt_rand(1200000000, 2000000000),
'net_costs' => (int) ($sales * \mt_rand(25, 55) / 100),
'year' => 2020,
'month' => $i,
];
}
$view->data['monthlySalesCosts'] = $monthlySalesCosts;
/////
$currentCustomerRegion = [
'Europe' => (int) (\mt_rand(200, 400) / 4),
'America' => (int) (\mt_rand(200, 400) / 4),
'Asia' => (int) (\mt_rand(200, 400) / 4),
'Africa' => (int) (\mt_rand(200, 400) / 4),
'CIS' => (int) (\mt_rand(200, 400) / 4),
'Other' => (int) (\mt_rand(200, 400) / 4),
];
$view->data['currentCustomerRegion'] = $currentCustomerRegion;
$annualCustomerRegion = [];
for ($i = 1; $i < 11; ++$i) {
$annualCustomerRegion[] = [
'year' => 2020 - 10 + $i,
'Europe' => $a = (int) (\mt_rand(200, 400) / 4),
'America' => $b = (int) (\mt_rand(200, 400) / 4),
'Asia' => $c = (int) (\mt_rand(200, 400) / 4),
'Africa' => $d = (int) (\mt_rand(200, 400) / 4),
'CIS' => $e = (int) (\mt_rand(200, 400) / 4),
'Other' => $f = (int) (\mt_rand(200, 400) / 4),
'Total' => $a + $b + $c + $d + $e + $f,
];
}
$view->data['annualCustomerRegion'] = $annualCustomerRegion;
/////
$monthlySalesCustomer = [];
for ($i = 1; $i < 13; ++$i) {
$monthlySalesCustomer[] = [
'net_sales' => $sales = \mt_rand(1200000000, 2000000000),
'customers' => \mt_rand(200, 400),
'year' => 2020,
'month' => $i,
];
}
$view->data['monthlySalesCustomer'] = $monthlySalesCustomer;
$annualSalesCustomer = [];
for ($i = 1; $i < 11; ++$i) {
$annualSalesCustomer[] = [
'net_sales' => $sales = \mt_rand(1200000000, 2000000000) * 12,
'customers' => \mt_rand(200, 400) * 6,
'year' => 2020 - 10 + $i,
];
}
$view->data['annualSalesCustomer'] = $annualSalesCustomer;
/////
$monthlyCustomerRetention = [];
for ($i = 1; $i < 10; ++$i) {
$monthlyCustomerRetention[] = [
'customers' => \mt_rand(200, 400),
'year' => \date('y') - 9 + $i,
];
}
$view->data['monthlyCustomerRetention'] = $monthlyCustomerRetention;
/////
$currentCustomerRegion = [
'Europe' => (int) (\mt_rand(200, 400) / 4),
'America' => (int) (\mt_rand(200, 400) / 4),
'Asia' => (int) (\mt_rand(200, 400) / 4),
'Africa' => (int) (\mt_rand(200, 400) / 4),
'CIS' => (int) (\mt_rand(200, 400) / 4),
'Other' => (int) (\mt_rand(200, 400) / 4),
];
$view->data['currentCustomerRegion'] = $currentCustomerRegion;
$annualCustomerRegion = [];
for ($i = 1; $i < 11; ++$i) {
$annualCustomerRegion[] = [
'year' => 2020 - 10 + $i,
'Europe' => $a = (int) (\mt_rand(200, 400) / 4),
'America' => $b = (int) (\mt_rand(200, 400) / 4),
'Asia' => $c = (int) (\mt_rand(200, 400) / 4),
'Africa' => $d = (int) (\mt_rand(200, 400) / 4),
'CIS' => $e = (int) (\mt_rand(200, 400) / 4),
'Other' => $f = (int) (\mt_rand(200, 400) / 4),
'Total' => $a + $b + $c + $d + $e + $f,
];
}
$view->data['annualCustomerRegion'] = $annualCustomerRegion;
/////
$currentCustomersRep = [];
for ($i = 1; $i < 13; ++$i) {
$currentCustomersRep['Rep ' . $i] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
];
}
\uasort($currentCustomersRep, function($a, $b) {
return $b['customers'] <=> $a['customers'];
});
$view->data['currentCustomersRep'] = $currentCustomersRep;
$annualCustomersRep = [];
for ($i = 1; $i < 13; ++$i) {
$annualCustomersRep['Rep ' . $i] = [];
for ($j = 1; $j < 11; ++$j) {
$annualCustomersRep['Rep ' . $i][] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
'year' => 2020 - 10 + $j,
];
}
}
$view->data['annualCustomersRep'] = $annualCustomersRep;
/////
$currentCustomersCountry = [];
for ($i = 1; $i < 51; ++$i) {
$country = (string) ISO3166NameEnum::getRandom();
$currentCustomersCountry[\substr($country, 0, 20)] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
];
}
\uasort($currentCustomersCountry, function($a, $b) {
return $b['customers'] <=> $a['customers'];
});
$view->data['currentCustomersCountry'] = $currentCustomersCountry;
$annualCustomersCountry = [];
for ($i = 1; $i < 51; ++$i) {
$countryCode = ISO3166CharEnum::getRandom();
$countryName = (string) ISO3166NameEnum::getByName('_' . $countryCode);
$annualCustomersCountry[\substr($countryName, 0, 20)] = [];
for ($j = 1; $j < 11; ++$j) {
$annualCustomersCountry[\substr($countryName, 0, 20)][] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
'year' => 2020 - 10 + $j,
'name' => $countryName,
'code' => $countryCode,
];
}
}
$view->data['annualCustomersCountry'] = $annualCustomersCountry;
/////
$customerGroups = [];
for ($i = 1; $i < 7; ++$i) {
$customerGroups['Group ' . $i] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
];
}
$view->data['customerGroups'] = $customerGroups;
return $view;
}
/**
* Routing end-point for application behaviour.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewBillAnalysis(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface
{
$head = $response->data['Content']->head;
$nonce = $this->app->appSettings->getOption('script-nonce');
$head->addAsset(AssetType::CSS, 'Resources/chartjs/Chartjs/chart.css');
$head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js', ['nonce' => $nonce]);
$head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['nonce' => $nonce, 'type' => 'module']);
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Billing/Theme/Backend/bill-analysis');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response);
return $view;
}
/**
* Routing end-point for application behaviour.
*
* @param RequestAbstract $request Request
* @param ResponseAbstract $response Response
* @param array $data Generic data
*
* @return RenderableInterface
*
* @since 1.0.0
* @codeCoverageIgnore
*/
public function viewSalesRepAnalysis(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface
{
$head = $response->data['Content']->head;
$nonce = $this->app->appSettings->getOption('script-nonce');
$head->addAsset(AssetType::CSS, 'Resources/chartjs/Chartjs/chart.css');
$head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js', ['nonce' => $nonce]);
$head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['nonce' => $nonce, 'type' => 'module']);
$view = new View($this->app->l11nManager, $request, $response);
$view->setTemplate('/Modules/Billing/Theme/Backend/rep-analysis');
$view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response);
/////
$currentCustomerRegion = [
'Europe' => (int) (\mt_rand(200, 400) / 4),
'America' => (int) (\mt_rand(200, 400) / 4),
'Asia' => (int) (\mt_rand(200, 400) / 4),
'Africa' => (int) (\mt_rand(200, 400) / 4),
'CIS' => (int) (\mt_rand(200, 400) / 4),
'Other' => (int) (\mt_rand(200, 400) / 4),
];
$view->data['currentCustomerRegion'] = $currentCustomerRegion;
$annualCustomerRegion = [];
for ($i = 1; $i < 11; ++$i) {
$annualCustomerRegion[] = [
'year' => 2020 - 10 + $i,
'Europe' => $a = (int) (\mt_rand(200, 400) / 4),
'America' => $b = (int) (\mt_rand(200, 400) / 4),
'Asia' => $c = (int) (\mt_rand(200, 400) / 4),
'Africa' => $d = (int) (\mt_rand(200, 400) / 4),
'CIS' => $e = (int) (\mt_rand(200, 400) / 4),
'Other' => $f = (int) (\mt_rand(200, 400) / 4),
'Total' => $a + $b + $c + $d + $e + $f,
];
}
$view->data['annualCustomerRegion'] = $annualCustomerRegion;
/////
$currentCustomersRep = [];
for ($i = 1; $i < 13; ++$i) {
$currentCustomersRep['Rep ' . $i] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
];
}
\uasort($currentCustomersRep, function($a, $b) {
return $b['customers'] <=> $a['customers'];
});
$view->data['currentCustomersRep'] = $currentCustomersRep;
$annualCustomersRep = [];
for ($i = 1; $i < 13; ++$i) {
$annualCustomersRep['Rep ' . $i] = [];
for ($j = 1; $j < 11; ++$j) {
$annualCustomersRep['Rep ' . $i][] = [
'customers' => (int) (\mt_rand(200, 400) / 12),
'year' => 2020 - 10 + $j,
];
}
}
$view->data['annualCustomersRep'] = $annualCustomersRep;
return $view;
}
/** /**
* Routing end-point for application behaviour. * Routing end-point for application behaviour.
* *

View File

@ -414,7 +414,7 @@ class Bill implements \JsonSerializable
* @var array * @var array
* @since 1.0.0 * @since 1.0.0
*/ */
private array $vouchers = []; public array $vouchers = [];
/** /**
* Tracking ids for shipping. * Tracking ids for shipping.
@ -422,7 +422,7 @@ class Bill implements \JsonSerializable
* @var array * @var array
* @since 1.0.0 * @since 1.0.0
*/ */
private array $trackings = []; public array $trackings = [];
/** /**
* Bill elements / bill lines. * Bill elements / bill lines.

View File

@ -48,7 +48,7 @@ class BillElement implements \JsonSerializable
public string $itemDescription = ''; public string $itemDescription = '';
protected int $quantity = 0; public int $quantity = 0;
public ?Subscription $subscription = null; public ?Subscription $subscription = null;
@ -257,7 +257,7 @@ class BillElement implements \JsonSerializable
$element->totalPurchasePriceNet->setInt($element->quantity * $item->purchasePrice->getInt()); $element->totalPurchasePriceNet->setInt($element->quantity * $item->purchasePrice->getInt());
$element->singleProfitNet->setInt($element->singleSalesPriceNet->getInt() - $element->singlePurchasePriceNet->getInt()); $element->singleProfitNet->setInt($element->singleSalesPriceNet->getInt() - $element->singlePurchasePriceNet->getInt());
$element->totalProfitNet->setInt($element->quantity * ($element->totalSalesPriceNet->getInt() - $element->totalPurchasePriceNet->getInt())); $element->totalProfitNet->setInt($element->totalSalesPriceNet->getInt() - $element->totalPurchasePriceNet->getInt());
$element->taxP = new FloatInt((int) (($code->percentageInvoice * $element->totalSalesPriceNet->getInt()) / 10000)); $element->taxP = new FloatInt((int) (($code->percentageInvoice * $element->totalSalesPriceNet->getInt()) / 10000));
$element->taxR = new FloatInt($code->percentageInvoice); $element->taxR = new FloatInt($code->percentageInvoice);

View File

@ -57,7 +57,7 @@ class BillType implements \JsonSerializable
* *
* @var string|BaseStringL11n * @var string|BaseStringL11n
*/ */
protected string | BaseStringL11n $l11n; public string | BaseStringL11n $l11n;
public bool $isTemplate = false; public bool $isTemplate = false;

View File

@ -1,5 +1,75 @@
# Billing <p align="center"><img src="https://raw.githubusercontent.com/Karaka-Management/Assets/master/art/logo.png" width="256" alt="Logo"></p>
Sample invoices as selection for offers promotions etc. The Karaka software is a modular web application for small to mid sized companies that need CRM, ERP, Intranet and/or CMS functionalities and much more.
credit note by selecting invoice(s) via checkbox With Karaka you have one partner who can provide many tools and software solutions you are used to at fair and reasonable prices even for small organizations and companies/startups. Our solutions can be used independently from each other or fully integrated with other solutions we provide. By choosing Karaka as your partner you'll be able to adjust your software based on the changes in your requirements without worrying about integration and workflow optimization.
## Table of Contents
- [Table of Contents](#table-of-contents)
- [Requirements](#requirements)
- [Developer tools](#developer-tools)
- [Installation](#installation)
- [Philosophy & Demo](#philosophy--demo)
- [Development status](#development-status)
- [Tech stack](#tech-stack)
- [Become a contributor](#become-a-contributor)
- [Misc](#misc)
## Requirements
* PHP 8.1
* PHP extension: php8.1-dev php8.1-cli php8.1-common php8.1-mysql php8.1-pgsql php8.1-xdebug php8.1-opcache php8.1-pdo php8.1-sqlite php8.1-mbstring php8.1-curl php8.1-imap php8.1-bcmath php8.1-zip php8.1-dom php8.1-xml php8.1-phar php8.1-gd php-pear
* apache2 (recommended) or nginx
* mysql-server (recommended) or postgresql postgresql-contrib
* Tools: tesseract-ocr, pdftotext, pdftoppm
* Make sure that URL rewriting is active!
### Developer tools
* Php extension: xdebug
* Tools: Composer, Npm
* Composer tools: phpstan, phpunit, phpcs
* Npm tools: eslint
## Installation
Detailed installation instructions can be found at:
* [Developer Setup](https://github.com/Karaka-Management/Developer-Guide/blob/develop/general/setup.md)
* [User Setup](https://github.com/Karaka-Management/User-Guide/blob/develop/setup/install.md)
## Philosophy & Demo
We believe software should support a business in it's daily tasks and growth in a very efficient way without frustration. In order to achieve this we constantly take feedback from our customers and expand and improve our software solutions.
You can find a freely available online demo at https://demo.karaka.app (user: admin, pass: orange) without any registration or inquiry.
## Development status
Currently Karaka is still developing the first Alpha version. As soon as we have a running Beta version we are allowing external testers to use our software and a selected amount of inhouse developed modules.
General updates can be found in our info section at https://jingga.app/info and developer updates can be found in our developer section at https://jingga.app/dev. In our developer section you can also check out the automatically generated reports such as code coverage, code style, static analysis etc. as well as our code style guide lines and developer documentation.
* [Project Status](https://github.com/Karaka-Management/Organization-Guide/blob/master/Project/PROJECT.md)
## Tech stack
* Language: php, js, c/c++, c#, html, css, markdown, shell script
* Database: Maria/MySQL, PostgreSQL, MSSQL/SQLSrv, SQLite
* Webserver: apache2, nginx
* Cache: Redis, Memcached
## Become a contributor
Karaka has a very open culture and we always welcome new people who share our philosophy in providing create solutions which just work. You can find the development process description which also describes how to become a contributer in the [Organization documentation](https://github.com/Karaka-Management/Organization-Guide/blob/master/Processes/Development.md).
## Misc
* End-User documentation: https://github.com/Karaka-Management/Documentation
* Developer documentation: https://github.com/Karaka-Management/Developer-Guide
* Organization documentation: https://github.com/Karaka-Management/Organization-Guide
* Website: [https://jingga.app](https://jingga.app)
* Demo: [https://jingga.app](https://jingga.app) (user: admin, pass: orange)
* Dev: [https://jingga.app/dev](https://jingga.app/dev)
* Contact: info@jingga.app

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'أرشيف', 'Archive' => 'أرشيف',
'Bill' => 'فاتورة', 'Bill' => 'فاتورة',
'Billing' => 'الفواتير', 'Billing' => 'الفواتير',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archiv', 'Archive' => 'Archiv',
'Bill' => 'Účtovat', 'Bill' => 'Účtovat',
'Billing' => 'Fakturační', 'Billing' => 'Fakturační',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arkiv', 'Archive' => 'Arkiv',
'Bill' => 'Regning', 'Bill' => 'Regning',
'Billing' => 'Fakturering', 'Billing' => 'Fakturering',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archiv', 'Archive' => 'Archiv',
'Bill' => 'Rechnung', 'Bill' => 'Rechnung',
'Billing' => 'Billing', 'Billing' => 'Billing',
'Open' => '', 'InvoiceRecognition' => 'Rechnungserkennung',
'Upload' => '', 'Open' => 'Offen',
'Upload' => 'Hochladen',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Αρχειοθέτηση', 'Archive' => 'Αρχειοθέτηση',
'Bill' => 'Νομοσχέδιο', 'Bill' => 'Νομοσχέδιο',
'Billing' => 'Χρέωση', 'Billing' => 'Χρέωση',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archive', 'Archive' => 'Archive',
'Bill' => 'Bill', 'Bill' => 'Bill',
'Billing' => 'Billing', 'Billing' => 'Billing',
'Open' => 'Open', 'InvoiceRecognition' => 'Invoice Recognition',
'Upload' => 'Upload', 'Open' => 'Open',
'Upload' => 'Upload',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archivo', 'Archive' => 'Archivo',
'Bill' => 'Factura', 'Bill' => 'Factura',
'Billing' => 'Facturación', 'Billing' => 'Facturación',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arkisto', 'Archive' => 'Arkisto',
'Bill' => 'Laskuttaa', 'Bill' => 'Laskuttaa',
'Billing' => 'Laskutus', 'Billing' => 'Laskutus',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archiver', 'Archive' => 'Archiver',
'Bill' => 'Facture', 'Bill' => 'Facture',
'Billing' => 'Facturation', 'Billing' => 'Facturation',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archívum', 'Archive' => 'Archívum',
'Bill' => 'Számla', 'Bill' => 'Számla',
'Billing' => 'Számlázás', 'Billing' => 'Számlázás',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archivio', 'Archive' => 'Archivio',
'Bill' => 'Conto', 'Bill' => 'Conto',
'Billing' => 'Fatturazione', 'Billing' => 'Fatturazione',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'アーカイブ', 'Archive' => 'アーカイブ',
'Bill' => '明細書', 'Bill' => '明細書',
'Billing' => '請求する', 'Billing' => '請求する',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => '보관소', 'Archive' => '보관소',
'Bill' => '청구서', 'Bill' => '청구서',
'Billing' => '청구자', 'Billing' => '청구자',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arkivet', 'Archive' => 'Arkivet',
'Bill' => 'Regning', 'Bill' => 'Regning',
'Billing' => 'Fakturering', 'Billing' => 'Fakturering',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Archiwum.', 'Archive' => 'Archiwum.',
'Bill' => 'Rachunek', 'Bill' => 'Rachunek',
'Billing' => 'Dane do faktury', 'Billing' => 'Dane do faktury',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arquivo', 'Archive' => 'Arquivo',
'Bill' => 'Conta', 'Bill' => 'Conta',
'Billing' => 'Cobrança', 'Billing' => 'Cobrança',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Архив', 'Archive' => 'Архив',
'Bill' => 'Счет', 'Bill' => 'Счет',
'Billing' => 'Биллинг', 'Billing' => 'Биллинг',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arkiv', 'Archive' => 'Arkiv',
'Bill' => 'Räkningen', 'Bill' => 'Räkningen',
'Billing' => 'Fakturering', 'Billing' => 'Fakturering',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'คลังเก็บเอกสารสำคัญ', 'Archive' => 'คลังเก็บเอกสารสำคัญ',
'Bill' => 'ใบแจ้งหนี้', 'Bill' => 'ใบแจ้งหนี้',
'Billing' => 'การเรียกเก็บเงิน', 'Billing' => 'การเรียกเก็บเงิน',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Arşiv', 'Archive' => 'Arşiv',
'Bill' => 'Fatura', 'Bill' => 'Fatura',
'Billing' => 'Fatura', 'Billing' => 'Fatura',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => 'Архів', 'Archive' => 'Архів',
'Bill' => 'Вексель', 'Bill' => 'Вексель',
'Billing' => 'Платіж', 'Billing' => 'Платіж',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -13,9 +13,10 @@
declare(strict_types=1); declare(strict_types=1);
return ['Navigation' => [ return ['Navigation' => [
'Archive' => '档案', 'Archive' => '档案',
'Bill' => '账单', 'Bill' => '账单',
'Billing' => '结算', 'Billing' => '结算',
'Open' => '', 'InvoiceRecognition' => '',
'Upload' => '', 'Open' => '',
'Upload' => '',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'تبوك', 'Address' => 'تبوك',
'Addresses' => 'عناوين', 'Addresses' => 'عناوين',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'مدفوع بالفعل', 'AlreadyPaid' => 'مدفوع بالفعل',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'فواتير', 'Bills' => 'فواتير',
'Bonus' => 'علاوة', 'Bonus' => 'علاوة',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'استرداد النقدي', 'Cashback' => 'استرداد النقدي',
'City' => 'مدينة', 'City' => 'مدينة',
'Client' => 'عميل', 'Client' => 'عميل',
'ClientID' => 'معرف العميل', 'ClientID' => 'معرف العميل',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'تأكيد', 'Confirmation' => 'تأكيد',
'Country' => 'دولة', 'Country' => 'دولة',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'بطاقة إئتمان', 'CreditCard' => 'بطاقة إئتمان',
'CreditNote' => 'اشعار دائن', 'CreditNote' => 'اشعار دائن',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'تاريخ', 'Date' => 'تاريخ',
'Delivery' => 'توصيل', 'Delivery' => 'توصيل',
'DeliveryNote' => 'مذكرة تسليم', 'DeliveryNote' => 'مذكرة تسليم',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'خصم ٪', 'DiscountP' => 'خصم ٪',
'Due' => 'بسبب', 'Due' => 'بسبب',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'شحن', 'Freightage' => 'شحن',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'أزداد', 'Gross' => 'أزداد',
'Invoice' => 'فاتورة', 'Invoice' => 'فاتورة',
'Invoices' => 'الفواتير', 'Invoices' => 'الفواتير',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'شبكة', 'Net' => 'شبكة',
'Offer' => 'عرض', 'Offer' => 'عرض',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'دفع', 'Payment' => 'دفع',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'بريدي', 'Postal' => 'بريدي',
'Prepaid' => 'مسبقة الدفع', 'Prepaid' => 'مسبقة الدفع',
'Preview' => 'معاينة', 'Preview' => 'معاينة',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'ربح', 'Profit' => 'ربح',
'Quantity' => 'كمية', 'Quantity' => 'كمية',
'Recipient' => 'متلقي', 'Recipient' => 'متلقي',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'يختار', 'Select' => 'يختار',
'Shipment' => 'شحنة', 'Shipment' => 'شحنة',
'Source' => 'مصدر', 'Source' => 'مصدر',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'نوع', 'Type' => 'نوع',
'Types' => '', 'Types' => '',
'Upload' => 'تحميل', 'Upload' => 'تحميل',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'تفاوت', 'Variation' => 'تفاوت',
'Zip' => 'أزيز', 'Zip' => 'أزيز',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adresa', 'Address' => 'Adresa',
'Addresses' => 'Adresy', 'Addresses' => 'Adresy',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Již zaplatil', 'AlreadyPaid' => 'Již zaplatil',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Účtenka', 'Bills' => 'Účtenka',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Hotovost', 'Cashback' => 'Hotovost',
'City' => 'Město', 'City' => 'Město',
'Client' => 'Klienta', 'Client' => 'Klienta',
'ClientID' => 'ID klienta', 'ClientID' => 'ID klienta',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'potvrzení', 'Confirmation' => 'potvrzení',
'Country' => 'Země', 'Country' => 'Země',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Kreditní karta', 'CreditCard' => 'Kreditní karta',
'CreditNote' => 'Dobropis', 'CreditNote' => 'Dobropis',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'datum', 'Date' => 'datum',
'Delivery' => 'dodávka', 'Delivery' => 'dodávka',
'DeliveryNote' => 'Dodací list', 'DeliveryNote' => 'Dodací list',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Sleva%', 'DiscountP' => 'Sleva%',
'Due' => 'Způsoben', 'Due' => 'Způsoben',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Dopravné', 'Freightage' => 'Dopravné',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Hrubý', 'Gross' => 'Hrubý',
'Invoice' => 'Faktura', 'Invoice' => 'Faktura',
'Invoices' => 'Faktury', 'Invoices' => 'Faktury',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Síť', 'Net' => 'Síť',
'Offer' => 'Nabídka', 'Offer' => 'Nabídka',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Způsob platby', 'Payment' => 'Způsob platby',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Poštovní', 'Postal' => 'Poštovní',
'Prepaid' => 'Předplacený', 'Prepaid' => 'Předplacený',
'Preview' => 'Náhled', 'Preview' => 'Náhled',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Zisk', 'Profit' => 'Zisk',
'Quantity' => 'Množství', 'Quantity' => 'Množství',
'Recipient' => 'Příjemce', 'Recipient' => 'Příjemce',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Vybrat', 'Select' => 'Vybrat',
'Shipment' => 'náklad', 'Shipment' => 'náklad',
'Source' => 'Zdroj', 'Source' => 'Zdroj',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Typ', 'Type' => 'Typ',
'Types' => '', 'Types' => '',
'Upload' => 'nahrát', 'Upload' => 'nahrát',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variace', 'Variation' => 'Variace',
'Zip' => 'Zip', 'Zip' => 'Zip',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adresse', 'Address' => 'Adresse',
'Addresses' => 'Adresser', 'Addresses' => 'Adresser',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Allerede betalt', 'AlreadyPaid' => 'Allerede betalt',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Regninger.', 'Bills' => 'Regninger.',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Penge tilbage', 'Cashback' => 'Penge tilbage',
'City' => 'City.', 'City' => 'City.',
'Client' => 'Klient', 'Client' => 'Klient',
'ClientID' => 'Klient ID.', 'ClientID' => 'Klient ID.',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Bekræftelse', 'Confirmation' => 'Bekræftelse',
'Country' => 'Land', 'Country' => 'Land',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Kreditkort', 'CreditCard' => 'Kreditkort',
'CreditNote' => 'Kreditnota', 'CreditNote' => 'Kreditnota',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Dato', 'Date' => 'Dato',
'Delivery' => 'Levering', 'Delivery' => 'Levering',
'DeliveryNote' => 'Levering note', 'DeliveryNote' => 'Levering note',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Rabat%', 'DiscountP' => 'Rabat%',
'Due' => 'På grund', 'Due' => 'På grund',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Gods', 'Freightage' => 'Gods',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Brutto', 'Gross' => 'Brutto',
'Invoice' => 'Faktura', 'Invoice' => 'Faktura',
'Invoices' => 'Fakturaer.', 'Invoices' => 'Fakturaer.',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Net', 'Net' => 'Net',
'Offer' => 'Tilbud', 'Offer' => 'Tilbud',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Betaling', 'Payment' => 'Betaling',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postal.', 'Postal' => 'Postal.',
'Prepaid' => 'Forudbetalt', 'Prepaid' => 'Forudbetalt',
'Preview' => 'Preview.', 'Preview' => 'Preview.',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Profit', 'Profit' => 'Profit',
'Quantity' => 'Antal', 'Quantity' => 'Antal',
'Recipient' => 'Modtager', 'Recipient' => 'Modtager',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Vælg', 'Select' => 'Vælg',
'Shipment' => 'Forsendelse', 'Shipment' => 'Forsendelse',
'Source' => 'Kilde', 'Source' => 'Kilde',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Type', 'Type' => 'Type',
'Types' => '', 'Types' => '',
'Upload' => 'Upload', 'Upload' => 'Upload',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variation', 'Variation' => 'Variation',
'Zip' => 'Zip.', 'Zip' => 'Zip.',
]]; ]];

View File

@ -31,7 +31,7 @@ return ['Billing' => [
'CIS' => 'CIS', 'CIS' => 'CIS',
'Cashback' => 'Kennzeichnen', 'Cashback' => 'Kennzeichnen',
'City' => 'Stadt', 'City' => 'Stadt',
'Client' => 'Klient', 'Client' => 'Kunde',
'ClientID' => 'Kunden ID', 'ClientID' => 'Kunden ID',
'ComparisonTime' => 'Vergleichszeit', 'ComparisonTime' => 'Vergleichszeit',
'Confirmation' => 'Bestätigung', 'Confirmation' => 'Bestätigung',
@ -70,8 +70,7 @@ return ['Billing' => [
'Original' => 'Original', 'Original' => 'Original',
'Other' => 'Sonstige', 'Other' => 'Sonstige',
'Payment' => 'Zahlung', 'Payment' => 'Zahlung',
'PaymentPlan' => '', 'PaymentPlan' => 'Zahlungsplan',
'PazmentPlan' => 'Zahlplan',
'Postal' => 'Post', 'Postal' => 'Post',
'Prepaid' => 'Vorausbezahlt', 'Prepaid' => 'Vorausbezahlt',
'Preview' => 'Vorschau', 'Preview' => 'Vorschau',

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Διεύθυνση', 'Address' => 'Διεύθυνση',
'Addresses' => 'Διευθύνσεις', 'Addresses' => 'Διευθύνσεις',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Ήδη πληρωθεί', 'AlreadyPaid' => 'Ήδη πληρωθεί',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Λογαριασμοί', 'Bills' => 'Λογαριασμοί',
'Bonus' => 'Δώρο', 'Bonus' => 'Δώρο',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Επιστροφή μετρητών', 'Cashback' => 'Επιστροφή μετρητών',
'City' => 'Πόλη', 'City' => 'Πόλη',
'Client' => 'Πελάτης', 'Client' => 'Πελάτης',
'ClientID' => 'ταυτότητα πελάτη', 'ClientID' => 'ταυτότητα πελάτη',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Επιβεβαίωση', 'Confirmation' => 'Επιβεβαίωση',
'Country' => 'Χώρα', 'Country' => 'Χώρα',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Πιστωτική κάρτα', 'CreditCard' => 'Πιστωτική κάρτα',
'CreditNote' => 'Πιστωτικό σημείωμα', 'CreditNote' => 'Πιστωτικό σημείωμα',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Ημερομηνία', 'Date' => 'Ημερομηνία',
'Delivery' => 'Διανομή', 'Delivery' => 'Διανομή',
'DeliveryNote' => 'Δελτίο παράδοσης', 'DeliveryNote' => 'Δελτίο παράδοσης',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Έκπτωση%', 'DiscountP' => 'Έκπτωση%',
'Due' => 'Λόγω', 'Due' => 'Λόγω',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Ναύλος', 'Freightage' => 'Ναύλος',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Ακαθάριστο', 'Gross' => 'Ακαθάριστο',
'Invoice' => 'Τιμολόγιο', 'Invoice' => 'Τιμολόγιο',
'Invoices' => 'Τιμολόγια', 'Invoices' => 'Τιμολόγια',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Καθαρά', 'Net' => 'Καθαρά',
'Offer' => 'Προσφορά', 'Offer' => 'Προσφορά',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Πληρωμή', 'Payment' => 'Πληρωμή',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Ταχυδρομικός', 'Postal' => 'Ταχυδρομικός',
'Prepaid' => 'Προπληρωμένος', 'Prepaid' => 'Προπληρωμένος',
'Preview' => 'Προεπισκόπηση', 'Preview' => 'Προεπισκόπηση',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Κέρδος', 'Profit' => 'Κέρδος',
'Quantity' => 'Ποσότητα', 'Quantity' => 'Ποσότητα',
'Recipient' => 'Παραλήπτης', 'Recipient' => 'Παραλήπτης',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Επιλέγω', 'Select' => 'Επιλέγω',
'Shipment' => 'Αποστολή', 'Shipment' => 'Αποστολή',
'Source' => 'Πηγή', 'Source' => 'Πηγή',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Τύπος', 'Type' => 'Τύπος',
'Types' => '', 'Types' => '',
'Upload' => 'Μεταφόρτω', 'Upload' => 'Μεταφόρτω',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Παραλλαγή', 'Variation' => 'Παραλλαγή',
'Zip' => 'Φερμουάρ', 'Zip' => 'Φερμουάρ',
]]; ]];

View File

@ -71,7 +71,6 @@ return ['Billing' => [
'Other' => 'Other', 'Other' => 'Other',
'Payment' => 'Payment', 'Payment' => 'Payment',
'PaymentPlan' => 'Payment Plan', 'PaymentPlan' => 'Payment Plan',
'PazmentPlan' => '',
'Postal' => 'Postal', 'Postal' => 'Postal',
'Prepaid' => 'Prepaid', 'Prepaid' => 'Prepaid',
'Preview' => 'Preview', 'Preview' => 'Preview',

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Habla a', 'Address' => 'Habla a',
'Addresses' => 'Direcciones', 'Addresses' => 'Direcciones',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Ya pagado', 'AlreadyPaid' => 'Ya pagado',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Facturas', 'Bills' => 'Facturas',
'Bonus' => 'Prima', 'Bonus' => 'Prima',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Devolución de dinero', 'Cashback' => 'Devolución de dinero',
'City' => 'Ciudad', 'City' => 'Ciudad',
'Client' => 'Cliente', 'Client' => 'Cliente',
'ClientID' => 'Identificación del cliente', 'ClientID' => 'Identificación del cliente',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Confirmación', 'Confirmation' => 'Confirmación',
'Country' => 'País', 'Country' => 'País',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Tarjeta de crédito', 'CreditCard' => 'Tarjeta de crédito',
'CreditNote' => 'Nota de crédito', 'CreditNote' => 'Nota de crédito',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Fecha', 'Date' => 'Fecha',
'Delivery' => 'Entrega', 'Delivery' => 'Entrega',
'DeliveryNote' => 'Nota de entrega', 'DeliveryNote' => 'Nota de entrega',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Descuento%', 'DiscountP' => 'Descuento%',
'Due' => 'Vencer', 'Due' => 'Vencer',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Flete', 'Freightage' => 'Flete',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Bruto', 'Gross' => 'Bruto',
'Invoice' => 'Factura', 'Invoice' => 'Factura',
'Invoices' => 'Facturas', 'Invoices' => 'Facturas',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Red', 'Net' => 'Red',
'Offer' => 'Oferta', 'Offer' => 'Oferta',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Pago', 'Payment' => 'Pago',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postal', 'Postal' => 'Postal',
'Prepaid' => 'Pagado por adelantado', 'Prepaid' => 'Pagado por adelantado',
'Preview' => 'Avance', 'Preview' => 'Avance',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Lucro', 'Profit' => 'Lucro',
'Quantity' => 'Cantidad', 'Quantity' => 'Cantidad',
'Recipient' => 'Recipiente', 'Recipient' => 'Recipiente',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Seleccione', 'Select' => 'Seleccione',
'Shipment' => 'Envío', 'Shipment' => 'Envío',
'Source' => 'Fuente', 'Source' => 'Fuente',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Escribe', 'Type' => 'Escribe',
'Types' => '', 'Types' => '',
'Upload' => 'Subir', 'Upload' => 'Subir',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variación', 'Variation' => 'Variación',
'Zip' => 'Cremallera', 'Zip' => 'Cremallera',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Osoite', 'Address' => 'Osoite',
'Addresses' => 'Osoitteet', 'Addresses' => 'Osoitteet',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Jo maksettu', 'AlreadyPaid' => 'Jo maksettu',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Laskut', 'Bills' => 'Laskut',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Vaihtorahat', 'Cashback' => 'Vaihtorahat',
'City' => 'Kaupunki', 'City' => 'Kaupunki',
'Client' => 'Asiakas', 'Client' => 'Asiakas',
'ClientID' => 'Asiakastunnus', 'ClientID' => 'Asiakastunnus',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Vahvistus', 'Confirmation' => 'Vahvistus',
'Country' => 'Maa', 'Country' => 'Maa',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Luottokortti', 'CreditCard' => 'Luottokortti',
'CreditNote' => 'Luottoluotto', 'CreditNote' => 'Luottoluotto',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Päivämäärä', 'Date' => 'Päivämäärä',
'Delivery' => 'Toimitus', 'Delivery' => 'Toimitus',
'DeliveryNote' => 'Saapumisilmoitus', 'DeliveryNote' => 'Saapumisilmoitus',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Alennus %', 'DiscountP' => 'Alennus %',
'Due' => 'Takia', 'Due' => 'Takia',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Rahti', 'Freightage' => 'Rahti',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Ällöttävä', 'Gross' => 'Ällöttävä',
'Invoice' => 'Lasku', 'Invoice' => 'Lasku',
'Invoices' => 'Laskut', 'Invoices' => 'Laskut',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Netto', 'Net' => 'Netto',
'Offer' => 'Tarjous', 'Offer' => 'Tarjous',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Maksu', 'Payment' => 'Maksu',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Posti-', 'Postal' => 'Posti-',
'Prepaid' => 'Prepaid', 'Prepaid' => 'Prepaid',
'Preview' => 'Esikatselu', 'Preview' => 'Esikatselu',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Voitto', 'Profit' => 'Voitto',
'Quantity' => 'Määrä', 'Quantity' => 'Määrä',
'Recipient' => 'Vastaanottaja', 'Recipient' => 'Vastaanottaja',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Valitse', 'Select' => 'Valitse',
'Shipment' => 'Lähetys', 'Shipment' => 'Lähetys',
'Source' => 'Lähde', 'Source' => 'Lähde',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Tyyppi', 'Type' => 'Tyyppi',
'Types' => '', 'Types' => '',
'Upload' => 'Ladata', 'Upload' => 'Ladata',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Vaihtelu', 'Variation' => 'Vaihtelu',
'Zip' => 'Postinumero', 'Zip' => 'Postinumero',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adresse', 'Address' => 'Adresse',
'Addresses' => 'Adresses', 'Addresses' => 'Adresses',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Déjà payé', 'AlreadyPaid' => 'Déjà payé',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Factures', 'Bills' => 'Factures',
'Bonus' => 'Prime', 'Bonus' => 'Prime',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Remise en argent', 'Cashback' => 'Remise en argent',
'City' => 'Ville', 'City' => 'Ville',
'Client' => 'Client', 'Client' => 'Client',
'ClientID' => 'identité du client', 'ClientID' => 'identité du client',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Confirmation', 'Confirmation' => 'Confirmation',
'Country' => 'Pays', 'Country' => 'Pays',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Carte de crédit', 'CreditCard' => 'Carte de crédit',
'CreditNote' => 'Note de crédit', 'CreditNote' => 'Note de crédit',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Date', 'Date' => 'Date',
'Delivery' => 'Livraison', 'Delivery' => 'Livraison',
'DeliveryNote' => 'Bon de livraison', 'DeliveryNote' => 'Bon de livraison',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Remise %', 'DiscountP' => 'Remise %',
'Due' => 'Dû', 'Due' => 'Dû',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Fret', 'Freightage' => 'Fret',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Brut', 'Gross' => 'Brut',
'Invoice' => 'Facture d\'achat', 'Invoice' => 'Facture d\'achat',
'Invoices' => 'Factures', 'Invoices' => 'Factures',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Rapporter', 'Net' => 'Rapporter',
'Offer' => 'Offrir', 'Offer' => 'Offrir',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Paiement', 'Payment' => 'Paiement',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postal', 'Postal' => 'Postal',
'Prepaid' => 'Prépayé', 'Prepaid' => 'Prépayé',
'Preview' => 'Aperçu', 'Preview' => 'Aperçu',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Profit', 'Profit' => 'Profit',
'Quantity' => 'Quantité', 'Quantity' => 'Quantité',
'Recipient' => 'Destinataire', 'Recipient' => 'Destinataire',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Sélectionner', 'Select' => 'Sélectionner',
'Shipment' => 'Expédition', 'Shipment' => 'Expédition',
'Source' => 'La source', 'Source' => 'La source',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Taper', 'Type' => 'Taper',
'Types' => '', 'Types' => '',
'Upload' => 'Télécharger', 'Upload' => 'Télécharger',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variation', 'Variation' => 'Variation',
'Zip' => 'Zipper', 'Zip' => 'Zipper',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Cím', 'Address' => 'Cím',
'Addresses' => 'Címek', 'Addresses' => 'Címek',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Fizetve', 'AlreadyPaid' => 'Fizetve',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Számlák', 'Bills' => 'Számlák',
'Bonus' => 'Bónusz', 'Bonus' => 'Bónusz',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Pénzvisszafizetés', 'Cashback' => 'Pénzvisszafizetés',
'City' => 'Város', 'City' => 'Város',
'Client' => 'Ügyfél', 'Client' => 'Ügyfél',
'ClientID' => 'Ügyfélazonosító', 'ClientID' => 'Ügyfélazonosító',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Megerősítés', 'Confirmation' => 'Megerősítés',
'Country' => 'Ország', 'Country' => 'Ország',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Hitelkártya', 'CreditCard' => 'Hitelkártya',
'CreditNote' => 'Jóváírás', 'CreditNote' => 'Jóváírás',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Dátum', 'Date' => 'Dátum',
'Delivery' => 'Szállítás', 'Delivery' => 'Szállítás',
'DeliveryNote' => 'Fuvarlevél', 'DeliveryNote' => 'Fuvarlevél',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Árengedmény%', 'DiscountP' => 'Árengedmény%',
'Due' => 'Esedékes', 'Due' => 'Esedékes',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Fuvardíj', 'Freightage' => 'Fuvardíj',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Bruttó', 'Gross' => 'Bruttó',
'Invoice' => 'Számla', 'Invoice' => 'Számla',
'Invoices' => 'Számlák', 'Invoices' => 'Számlák',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Háló', 'Net' => 'Háló',
'Offer' => 'Ajánlat', 'Offer' => 'Ajánlat',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Fizetés', 'Payment' => 'Fizetés',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postai', 'Postal' => 'Postai',
'Prepaid' => 'Előre kifizetett', 'Prepaid' => 'Előre kifizetett',
'Preview' => 'Előnézet', 'Preview' => 'Előnézet',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Nyereség', 'Profit' => 'Nyereség',
'Quantity' => 'Mennyiség', 'Quantity' => 'Mennyiség',
'Recipient' => 'Befogadó', 'Recipient' => 'Befogadó',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Kiválaszt', 'Select' => 'Kiválaszt',
'Shipment' => 'Szállítmány', 'Shipment' => 'Szállítmány',
'Source' => 'Forrás', 'Source' => 'Forrás',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'típus', 'Type' => 'típus',
'Types' => '', 'Types' => '',
'Upload' => 'Feltöltés', 'Upload' => 'Feltöltés',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variáció', 'Variation' => 'Variáció',
'Zip' => 'Postai irányítószám', 'Zip' => 'Postai irányítószám',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Indirizzo', 'Address' => 'Indirizzo',
'Addresses' => 'Indirizzi', 'Addresses' => 'Indirizzi',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Già pagato', 'AlreadyPaid' => 'Già pagato',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Fatture', 'Bills' => 'Fatture',
'Bonus' => 'Bonus.', 'Bonus' => 'Bonus.',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Rimborso', 'Cashback' => 'Rimborso',
'City' => 'Città', 'City' => 'Città',
'Client' => 'Cliente', 'Client' => 'Cliente',
'ClientID' => 'Identificativo cliente', 'ClientID' => 'Identificativo cliente',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Conferma', 'Confirmation' => 'Conferma',
'Country' => 'Nazione', 'Country' => 'Nazione',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Carta di credito', 'CreditCard' => 'Carta di credito',
'CreditNote' => 'Nota di credito', 'CreditNote' => 'Nota di credito',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Data', 'Date' => 'Data',
'Delivery' => 'Consegna', 'Delivery' => 'Consegna',
'DeliveryNote' => 'Bolla d\'accompagnamento', 'DeliveryNote' => 'Bolla d\'accompagnamento',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Sconto%', 'DiscountP' => 'Sconto%',
'Due' => 'Dovuto', 'Due' => 'Dovuto',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Liberare', 'Freightage' => 'Liberare',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Schifoso', 'Gross' => 'Schifoso',
'Invoice' => 'Fattura', 'Invoice' => 'Fattura',
'Invoices' => 'Fatture', 'Invoices' => 'Fatture',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Rete', 'Net' => 'Rete',
'Offer' => 'Offerta', 'Offer' => 'Offerta',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Pagamento', 'Payment' => 'Pagamento',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'postale', 'Postal' => 'postale',
'Prepaid' => 'Prepagato', 'Prepaid' => 'Prepagato',
'Preview' => 'Anteprima', 'Preview' => 'Anteprima',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Profitto', 'Profit' => 'Profitto',
'Quantity' => 'Quantità', 'Quantity' => 'Quantità',
'Recipient' => 'Destinatario', 'Recipient' => 'Destinatario',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Selezionare', 'Select' => 'Selezionare',
'Shipment' => 'Spedizione', 'Shipment' => 'Spedizione',
'Source' => 'Fonte', 'Source' => 'Fonte',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Tipo', 'Type' => 'Tipo',
'Types' => '', 'Types' => '',
'Upload' => 'Caricamento', 'Upload' => 'Caricamento',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variazione', 'Variation' => 'Variazione',
'Zip' => 'Cerniera lampo', 'Zip' => 'Cerniera lampo',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => '住所', 'Address' => '住所',
'Addresses' => 'アドレス', 'Addresses' => 'アドレス',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => '既に支払いました', 'AlreadyPaid' => '既に支払いました',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'bill', 'Bills' => 'bill',
'Bonus' => 'ボーナス', 'Bonus' => 'ボーナス',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'キャッシュバック', 'Cashback' => 'キャッシュバック',
'City' => '市', 'City' => '市',
'Client' => 'クライアント', 'Client' => 'クライアント',
'ClientID' => 'クライアントID', 'ClientID' => 'クライアントID',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => '確認', 'Confirmation' => '確認',
'Country' => '国', 'Country' => '国',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'クレジットカード', 'CreditCard' => 'クレジットカード',
'CreditNote' => 'クレジットノート', 'CreditNote' => 'クレジットノート',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => '日にち', 'Date' => '日にち',
'Delivery' => '配達', 'Delivery' => '配達',
'DeliveryNote' => '配達メモ', 'DeliveryNote' => '配達メモ',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => '割引 ', 'DiscountP' => '割引 ',
'Due' => '期限', 'Due' => '期限',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'fre fre', 'Freightage' => 'fre fre',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'きもい', 'Gross' => 'きもい',
'Invoice' => '請求書', 'Invoice' => '請求書',
'Invoices' => '請求書', 'Invoices' => '請求書',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'ネット', 'Net' => 'ネット',
'Offer' => 'オファー', 'Offer' => 'オファー',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => '支払い', 'Payment' => '支払い',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => '郵便', 'Postal' => '郵便',
'Prepaid' => '前払い', 'Prepaid' => '前払い',
'Preview' => 'プレビュー', 'Preview' => 'プレビュー',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => '利益', 'Profit' => '利益',
'Quantity' => '量', 'Quantity' => '量',
'Recipient' => '受信者', 'Recipient' => '受信者',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => '選択する', 'Select' => '選択する',
'Shipment' => '出荷', 'Shipment' => '出荷',
'Source' => 'ソース', 'Source' => 'ソース',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'タイプ', 'Type' => 'タイプ',
'Types' => '', 'Types' => '',
'Upload' => 'アップロード', 'Upload' => 'アップロード',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => '変化', 'Variation' => '変化',
'Zip' => 'ジップ', 'Zip' => 'ジップ',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => '주소', 'Address' => '주소',
'Addresses' => '구애', 'Addresses' => '구애',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => '이미 지불', 'AlreadyPaid' => '이미 지불',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => '청구서', 'Bills' => '청구서',
'Bonus' => '보너스', 'Bonus' => '보너스',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => '현금', 'Cashback' => '현금',
'City' => '도시', 'City' => '도시',
'Client' => '고객', 'Client' => '고객',
'ClientID' => '클라이언트 ID.', 'ClientID' => '클라이언트 ID.',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => '확인', 'Confirmation' => '확인',
'Country' => '국가', 'Country' => '국가',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => '신용 카드', 'CreditCard' => '신용 카드',
'CreditNote' => '신용 노트', 'CreditNote' => '신용 노트',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => '날짜', 'Date' => '날짜',
'Delivery' => '배달', 'Delivery' => '배달',
'DeliveryNote' => '배달 메모', 'DeliveryNote' => '배달 메모',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => '할인 %', 'DiscountP' => '할인 %',
'Due' => '로 인한', 'Due' => '로 인한',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => '화물', 'Freightage' => '화물',
'General' => '#VALUE!', 'General' => '',
'Gross' => '역겨운', 'Gross' => '역겨운',
'Invoice' => '송장', 'Invoice' => '송장',
'Invoices' => '송장', 'Invoices' => '송장',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => '그물', 'Net' => '그물',
'Offer' => '권하다', 'Offer' => '권하다',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => '지불', 'Payment' => '지불',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => '우편 엽서', 'Postal' => '우편 엽서',
'Prepaid' => '선불', 'Prepaid' => '선불',
'Preview' => '시사', 'Preview' => '시사',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => '이익', 'Profit' => '이익',
'Quantity' => '수량', 'Quantity' => '수량',
'Recipient' => '받는 사람', 'Recipient' => '받는 사람',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => '선택하다', 'Select' => '선택하다',
'Shipment' => '선적', 'Shipment' => '선적',
'Source' => '원천', 'Source' => '원천',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => '유형', 'Type' => '유형',
'Types' => '', 'Types' => '',
'Upload' => '업로드', 'Upload' => '업로드',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => '변화', 'Variation' => '변화',
'Zip' => '지퍼', 'Zip' => '지퍼',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adresse', 'Address' => 'Adresse',
'Addresses' => 'Adresser', 'Addresses' => 'Adresser',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Allerede betalt', 'AlreadyPaid' => 'Allerede betalt',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Regninger', 'Bills' => 'Regninger',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Penger tilbake', 'Cashback' => 'Penger tilbake',
'City' => 'By', 'City' => 'By',
'Client' => 'Klient', 'Client' => 'Klient',
'ClientID' => 'klient-ID', 'ClientID' => 'klient-ID',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Bekreftelse', 'Confirmation' => 'Bekreftelse',
'Country' => 'Land', 'Country' => 'Land',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Kredittkort', 'CreditCard' => 'Kredittkort',
'CreditNote' => 'Kredittnota', 'CreditNote' => 'Kredittnota',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Dato', 'Date' => 'Dato',
'Delivery' => 'Leveranse', 'Delivery' => 'Leveranse',
'DeliveryNote' => 'Leveringsnotat', 'DeliveryNote' => 'Leveringsnotat',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Rabatt%', 'DiscountP' => 'Rabatt%',
'Due' => 'På grunn av det', 'Due' => 'På grunn av det',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Frakt', 'Freightage' => 'Frakt',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Ekkelt', 'Gross' => 'Ekkelt',
'Invoice' => 'Faktura', 'Invoice' => 'Faktura',
'Invoices' => 'Fakturaer', 'Invoices' => 'Fakturaer',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Nett', 'Net' => 'Nett',
'Offer' => 'By på', 'Offer' => 'By på',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'innbetaling', 'Payment' => 'innbetaling',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postal.', 'Postal' => 'Postal.',
'Prepaid' => 'Forhåndsbetalt', 'Prepaid' => 'Forhåndsbetalt',
'Preview' => 'Forhåndsvisning', 'Preview' => 'Forhåndsvisning',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Profitt', 'Profit' => 'Profitt',
'Quantity' => 'Mengde', 'Quantity' => 'Mengde',
'Recipient' => 'Mottaker', 'Recipient' => 'Mottaker',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Plukke ut', 'Select' => 'Plukke ut',
'Shipment' => 'Forsendelse', 'Shipment' => 'Forsendelse',
'Source' => 'Kilde', 'Source' => 'Kilde',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Type', 'Type' => 'Type',
'Types' => '', 'Types' => '',
'Upload' => 'Laste opp', 'Upload' => 'Laste opp',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variasjon', 'Variation' => 'Variasjon',
'Zip' => 'Glidelås', 'Zip' => 'Glidelås',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adres', 'Address' => 'Adres',
'Addresses' => 'Adresy', 'Addresses' => 'Adresy',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Już zapłacone', 'AlreadyPaid' => 'Już zapłacone',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Rachunki', 'Bills' => 'Rachunki',
'Bonus' => 'Premia', 'Bonus' => 'Premia',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Zwrot gotówki', 'Cashback' => 'Zwrot gotówki',
'City' => 'Miasto', 'City' => 'Miasto',
'Client' => 'Klient', 'Client' => 'Klient',
'ClientID' => 'Identyfikator klienta', 'ClientID' => 'Identyfikator klienta',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Potwierdzenie', 'Confirmation' => 'Potwierdzenie',
'Country' => 'Kraj', 'Country' => 'Kraj',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Karta kredytowa', 'CreditCard' => 'Karta kredytowa',
'CreditNote' => 'Uwaga kredytowa', 'CreditNote' => 'Uwaga kredytowa',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Data', 'Date' => 'Data',
'Delivery' => 'Dostawa', 'Delivery' => 'Dostawa',
'DeliveryNote' => 'Dowód dostawy', 'DeliveryNote' => 'Dowód dostawy',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Zniżka %', 'DiscountP' => 'Zniżka %',
'Due' => 'Z powodu', 'Due' => 'Z powodu',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Frachtowanie', 'Freightage' => 'Frachtowanie',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Brutto', 'Gross' => 'Brutto',
'Invoice' => 'Faktura', 'Invoice' => 'Faktura',
'Invoices' => 'Faktury', 'Invoices' => 'Faktury',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Internet', 'Net' => 'Internet',
'Offer' => 'Oferta', 'Offer' => 'Oferta',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Zapłata', 'Payment' => 'Zapłata',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Pocztowy', 'Postal' => 'Pocztowy',
'Prepaid' => 'Opłacony z góry', 'Prepaid' => 'Opłacony z góry',
'Preview' => 'Zapowiedź', 'Preview' => 'Zapowiedź',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Zysk', 'Profit' => 'Zysk',
'Quantity' => 'Ilość', 'Quantity' => 'Ilość',
'Recipient' => 'Odbiorca', 'Recipient' => 'Odbiorca',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Wybierać', 'Select' => 'Wybierać',
'Shipment' => 'Wysyłka', 'Shipment' => 'Wysyłka',
'Source' => 'Źródło', 'Source' => 'Źródło',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Rodzaj', 'Type' => 'Rodzaj',
'Types' => '', 'Types' => '',
'Upload' => 'Wgrywać', 'Upload' => 'Wgrywać',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Zmiana', 'Variation' => 'Zmiana',
'Zip' => 'Zamek błyskawiczny', 'Zip' => 'Zamek błyskawiczny',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Endereço', 'Address' => 'Endereço',
'Addresses' => 'Endereços', 'Addresses' => 'Endereços',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Já pago', 'AlreadyPaid' => 'Já pago',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Notas', 'Bills' => 'Notas',
'Bonus' => 'Bônus', 'Bonus' => 'Bônus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Dinheiro de volta', 'Cashback' => 'Dinheiro de volta',
'City' => 'Cidade', 'City' => 'Cidade',
'Client' => 'Cliente', 'Client' => 'Cliente',
'ClientID' => 'ID do Cliente', 'ClientID' => 'ID do Cliente',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Confirmação', 'Confirmation' => 'Confirmação',
'Country' => 'País', 'Country' => 'País',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Cartão de crédito', 'CreditCard' => 'Cartão de crédito',
'CreditNote' => 'Nota de crédito', 'CreditNote' => 'Nota de crédito',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Encontro', 'Date' => 'Encontro',
'Delivery' => 'Entrega', 'Delivery' => 'Entrega',
'DeliveryNote' => 'Nota de entrega', 'DeliveryNote' => 'Nota de entrega',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Desconto%', 'DiscountP' => 'Desconto%',
'Due' => 'Vencimento', 'Due' => 'Vencimento',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Freightage', 'Freightage' => 'Freightage',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Bruto', 'Gross' => 'Bruto',
'Invoice' => 'Fatura', 'Invoice' => 'Fatura',
'Invoices' => 'Faturas', 'Invoices' => 'Faturas',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Internet', 'Net' => 'Internet',
'Offer' => 'Oferta', 'Offer' => 'Oferta',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Pagamento', 'Payment' => 'Pagamento',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Postal', 'Postal' => 'Postal',
'Prepaid' => 'Pré-pago', 'Prepaid' => 'Pré-pago',
'Preview' => 'Pré-visualização', 'Preview' => 'Pré-visualização',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Lucro', 'Profit' => 'Lucro',
'Quantity' => 'Quantidade', 'Quantity' => 'Quantidade',
'Recipient' => 'Destinatário', 'Recipient' => 'Destinatário',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Selecione.', 'Select' => 'Selecione.',
'Shipment' => 'envio', 'Shipment' => 'envio',
'Source' => 'Fonte', 'Source' => 'Fonte',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Modelo', 'Type' => 'Modelo',
'Types' => '', 'Types' => '',
'Upload' => 'Envio', 'Upload' => 'Envio',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variação', 'Variation' => 'Variação',
'Zip' => 'Fecho eclair', 'Zip' => 'Fecho eclair',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Адрес', 'Address' => 'Адрес',
'Addresses' => 'Адреса', 'Addresses' => 'Адреса',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Уже оплачено', 'AlreadyPaid' => 'Уже оплачено',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Счета', 'Bills' => 'Счета',
'Bonus' => 'Бонус', 'Bonus' => 'Бонус',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Возврат наличных', 'Cashback' => 'Возврат наличных',
'City' => 'Город', 'City' => 'Город',
'Client' => 'Клиент', 'Client' => 'Клиент',
'ClientID' => 'ID клиента', 'ClientID' => 'ID клиента',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Подтверждение', 'Confirmation' => 'Подтверждение',
'Country' => 'Страна', 'Country' => 'Страна',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Кредитная карта', 'CreditCard' => 'Кредитная карта',
'CreditNote' => 'Кредитная нота', 'CreditNote' => 'Кредитная нота',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Дата', 'Date' => 'Дата',
'Delivery' => 'Доставка', 'Delivery' => 'Доставка',
'DeliveryNote' => 'Накладная', 'DeliveryNote' => 'Накладная',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Скидка %', 'DiscountP' => 'Скидка %',
'Due' => 'Должное', 'Due' => 'Должное',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Фрахты', 'Freightage' => 'Фрахты',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Валовой', 'Gross' => 'Валовой',
'Invoice' => 'Счет', 'Invoice' => 'Счет',
'Invoices' => 'Счета', 'Invoices' => 'Счета',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Сеть', 'Net' => 'Сеть',
'Offer' => 'Предложение', 'Offer' => 'Предложение',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Оплата', 'Payment' => 'Оплата',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Почтовый', 'Postal' => 'Почтовый',
'Prepaid' => 'Предоплаты', 'Prepaid' => 'Предоплаты',
'Preview' => 'Превью', 'Preview' => 'Превью',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Выгода', 'Profit' => 'Выгода',
'Quantity' => 'Количество', 'Quantity' => 'Количество',
'Recipient' => 'Получатель', 'Recipient' => 'Получатель',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Выбирать', 'Select' => 'Выбирать',
'Shipment' => 'Отгрузка', 'Shipment' => 'Отгрузка',
'Source' => 'Источник', 'Source' => 'Источник',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Тип', 'Type' => 'Тип',
'Types' => '', 'Types' => '',
'Upload' => 'Загрузить', 'Upload' => 'Загрузить',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Вариация', 'Variation' => 'Вариация',
'Zip' => 'Zip.', 'Zip' => 'Zip.',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adress', 'Address' => 'Adress',
'Addresses' => 'Adresser', 'Addresses' => 'Adresser',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Redan betalat', 'AlreadyPaid' => 'Redan betalat',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Räkningar', 'Bills' => 'Räkningar',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Pengar tillbaka', 'Cashback' => 'Pengar tillbaka',
'City' => 'Stad', 'City' => 'Stad',
'Client' => 'Klient', 'Client' => 'Klient',
'ClientID' => 'Klient ID', 'ClientID' => 'Klient ID',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Bekräftelse', 'Confirmation' => 'Bekräftelse',
'Country' => 'Land', 'Country' => 'Land',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Kreditkort', 'CreditCard' => 'Kreditkort',
'CreditNote' => 'Kreditanteckning', 'CreditNote' => 'Kreditanteckning',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Datum', 'Date' => 'Datum',
'Delivery' => 'Leverans', 'Delivery' => 'Leverans',
'DeliveryNote' => 'Leveransanteckning', 'DeliveryNote' => 'Leveransanteckning',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Rabatt%', 'DiscountP' => 'Rabatt%',
'Due' => 'På grund av', 'Due' => 'På grund av',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Frakt', 'Freightage' => 'Frakt',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Äckligt', 'Gross' => 'Äckligt',
'Invoice' => 'Faktura', 'Invoice' => 'Faktura',
'Invoices' => 'Fakturor', 'Invoices' => 'Fakturor',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Netto', 'Net' => 'Netto',
'Offer' => 'Erbjudande', 'Offer' => 'Erbjudande',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Betalning', 'Payment' => 'Betalning',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Post', 'Postal' => 'Post',
'Prepaid' => 'Förbetalt', 'Prepaid' => 'Förbetalt',
'Preview' => 'Förhandsvisning', 'Preview' => 'Förhandsvisning',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Vinst', 'Profit' => 'Vinst',
'Quantity' => 'Kvantitet', 'Quantity' => 'Kvantitet',
'Recipient' => 'Mottagare', 'Recipient' => 'Mottagare',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Välj', 'Select' => 'Välj',
'Shipment' => 'Sändning', 'Shipment' => 'Sändning',
'Source' => 'Källa', 'Source' => 'Källa',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Typ', 'Type' => 'Typ',
'Types' => '', 'Types' => '',
'Upload' => 'Ladda upp', 'Upload' => 'Ladda upp',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Variation', 'Variation' => 'Variation',
'Zip' => 'Blixtlås', 'Zip' => 'Blixtlås',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'ที่อยู่', 'Address' => 'ที่อยู่',
'Addresses' => 'ที่อยู่', 'Addresses' => 'ที่อยู่',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'จ่ายแล้ว', 'AlreadyPaid' => 'จ่ายแล้ว',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'การเรียกเก็บเงิน', 'Bills' => 'การเรียกเก็บเงิน',
'Bonus' => 'โบนัส', 'Bonus' => 'โบนัส',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'เงินคืน', 'Cashback' => 'เงินคืน',
'City' => 'เมือง', 'City' => 'เมือง',
'Client' => 'ลูกค้า', 'Client' => 'ลูกค้า',
'ClientID' => 'รหัสลูกค้า', 'ClientID' => 'รหัสลูกค้า',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'การยืนยัน', 'Confirmation' => 'การยืนยัน',
'Country' => 'ประเทศ', 'Country' => 'ประเทศ',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'บัตรเครดิต', 'CreditCard' => 'บัตรเครดิต',
'CreditNote' => 'ใบลดหนี้', 'CreditNote' => 'ใบลดหนี้',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'วันที่', 'Date' => 'วันที่',
'Delivery' => 'จัดส่ง', 'Delivery' => 'จัดส่ง',
'DeliveryNote' => 'บันทึกการส่งมอบ', 'DeliveryNote' => 'บันทึกการส่งมอบ',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'การลดราคา %', 'DiscountP' => 'การลดราคา %',
'Due' => 'เนื่องจาก', 'Due' => 'เนื่องจาก',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'การขนส่งสินค้า', 'Freightage' => 'การขนส่งสินค้า',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'ทั้งหมด', 'Gross' => 'ทั้งหมด',
'Invoice' => 'ใบแจ้งหนี้', 'Invoice' => 'ใบแจ้งหนี้',
'Invoices' => 'ใบแจ้งหนี้', 'Invoices' => 'ใบแจ้งหนี้',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'สุทธิ', 'Net' => 'สุทธิ',
'Offer' => 'เสนอ', 'Offer' => 'เสนอ',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'การชำระเงิน', 'Payment' => 'การชำระเงิน',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'เกี่ยวกับการไปรษณีย์', 'Postal' => 'เกี่ยวกับการไปรษณีย์',
'Prepaid' => 'ชำระล่วงหน้า', 'Prepaid' => 'ชำระล่วงหน้า',
'Preview' => 'ดูตัวอย่าง', 'Preview' => 'ดูตัวอย่าง',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'กำไร', 'Profit' => 'กำไร',
'Quantity' => 'ปริมาณ', 'Quantity' => 'ปริมาณ',
'Recipient' => 'ผู้รับ', 'Recipient' => 'ผู้รับ',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'เลือก', 'Select' => 'เลือก',
'Shipment' => 'การจัดส่ง', 'Shipment' => 'การจัดส่ง',
'Source' => 'แหล่งที่มา', 'Source' => 'แหล่งที่มา',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'พิมพ์', 'Type' => 'พิมพ์',
'Types' => '', 'Types' => '',
'Upload' => 'ที่อัพโหลด', 'Upload' => 'ที่อัพโหลด',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'การเปลี่ยนแปลง', 'Variation' => 'การเปลี่ยนแปลง',
'Zip' => 'ซิป', 'Zip' => 'ซิป',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Adres', 'Address' => 'Adres',
'Addresses' => 'Adresler', 'Addresses' => 'Adresler',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Zaten ödendi', 'AlreadyPaid' => 'Zaten ödendi',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Faturalar', 'Bills' => 'Faturalar',
'Bonus' => 'Bonus', 'Bonus' => 'Bonus',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Nakit para', 'Cashback' => 'Nakit para',
'City' => 'Şehir', 'City' => 'Şehir',
'Client' => 'Müşteri', 'Client' => 'Müşteri',
'ClientID' => 'Müşteri Kimliği', 'ClientID' => 'Müşteri Kimliği',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Onayla', 'Confirmation' => 'Onayla',
'Country' => 'Ülke', 'Country' => 'Ülke',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Kredi kartı', 'CreditCard' => 'Kredi kartı',
'CreditNote' => 'Kredi notu', 'CreditNote' => 'Kredi notu',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Tarih', 'Date' => 'Tarih',
'Delivery' => 'Teslimat', 'Delivery' => 'Teslimat',
'DeliveryNote' => 'Teslimat notu', 'DeliveryNote' => 'Teslimat notu',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'İndirim %', 'DiscountP' => 'İndirim %',
'Due' => 'Vadesi dolmuş', 'Due' => 'Vadesi dolmuş',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Yük', 'Freightage' => 'Yük',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Brüt', 'Gross' => 'Brüt',
'Invoice' => 'Fatura', 'Invoice' => 'Fatura',
'Invoices' => 'Faturalar', 'Invoices' => 'Faturalar',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Ağ', 'Net' => 'Ağ',
'Offer' => 'Teklif', 'Offer' => 'Teklif',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Ödeme', 'Payment' => 'Ödeme',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Posta', 'Postal' => 'Posta',
'Prepaid' => 'Ön ödemeli', 'Prepaid' => 'Ön ödemeli',
'Preview' => 'Ön izleme', 'Preview' => 'Ön izleme',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Kâr', 'Profit' => 'Kâr',
'Quantity' => 'Miktar', 'Quantity' => 'Miktar',
'Recipient' => 'Alıcı', 'Recipient' => 'Alıcı',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Seçme', 'Select' => 'Seçme',
'Shipment' => 'gönderi', 'Shipment' => 'gönderi',
'Source' => 'Kaynak', 'Source' => 'Kaynak',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Tip', 'Type' => 'Tip',
'Types' => '', 'Types' => '',
'Upload' => 'Yüklemek', 'Upload' => 'Yüklemek',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'varyasyon', 'Variation' => 'varyasyon',
'Zip' => 'Zip', 'Zip' => 'Zip',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => 'Адреса', 'Address' => 'Адреса',
'Addresses' => 'Адреси', 'Addresses' => 'Адреси',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => 'Вже оплачено', 'AlreadyPaid' => 'Вже оплачено',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => 'Векселі', 'Bills' => 'Векселі',
'Bonus' => 'Бонус', 'Bonus' => 'Бонус',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => 'Готівка', 'Cashback' => 'Готівка',
'City' => 'Місто', 'City' => 'Місто',
'Client' => 'Клієнт', 'Client' => 'Клієнт',
'ClientID' => 'Ідентифікатор клієнта', 'ClientID' => 'Ідентифікатор клієнта',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => 'Підтвердження', 'Confirmation' => 'Підтвердження',
'Country' => 'Країна', 'Country' => 'Країна',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => 'Кредитна карта', 'CreditCard' => 'Кредитна карта',
'CreditNote' => 'Кредитове авізо', 'CreditNote' => 'Кредитове авізо',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => 'Дата', 'Date' => 'Дата',
'Delivery' => 'Доставка', 'Delivery' => 'Доставка',
'DeliveryNote' => 'Накладна', 'DeliveryNote' => 'Накладна',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => 'Знижка%', 'DiscountP' => 'Знижка%',
'Due' => 'Заборгованість', 'Due' => 'Заборгованість',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'Фрахт', 'Freightage' => 'Фрахт',
'General' => '#VALUE!', 'General' => '',
'Gross' => 'Валовий', 'Gross' => 'Валовий',
'Invoice' => 'Рахунок-фактура', 'Invoice' => 'Рахунок-фактура',
'Invoices' => 'Рахунки-фактури', 'Invoices' => 'Рахунки-фактури',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => 'Сітка', 'Net' => 'Сітка',
'Offer' => 'Пропозиція', 'Offer' => 'Пропозиція',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => 'Платіж', 'Payment' => 'Платіж',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => 'Поштовий', 'Postal' => 'Поштовий',
'Prepaid' => 'Передплачений', 'Prepaid' => 'Передплачений',
'Preview' => 'Попередній перегляд', 'Preview' => 'Попередній перегляд',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => 'Прибуток', 'Profit' => 'Прибуток',
'Quantity' => 'Кількість', 'Quantity' => 'Кількість',
'Recipient' => 'Одержувач', 'Recipient' => 'Одержувач',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => 'Вибирати', 'Select' => 'Вибирати',
'Shipment' => 'Відвантаження', 'Shipment' => 'Відвантаження',
'Source' => 'Джерело', 'Source' => 'Джерело',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => 'Тип', 'Type' => 'Тип',
'Types' => '', 'Types' => '',
'Upload' => 'Завантажувати', 'Upload' => 'Завантажувати',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => 'Зміна', 'Variation' => 'Зміна',
'Zip' => 'Блиск', 'Zip' => 'Блиск',
]]; ]];

View File

@ -15,25 +15,25 @@ declare(strict_types=1);
return ['Billing' => [ return ['Billing' => [
'Address' => '地址', 'Address' => '地址',
'Addresses' => '地址', 'Addresses' => '地址',
'Africa' => '#VALUE!', 'Africa' => '',
'AlreadyPaid' => '已付款', 'AlreadyPaid' => '已付款',
'America' => '#VALUE!', 'America' => '',
'Amount' => '', 'Amount' => '',
'Analyse' => '#VALUE!', 'Analyse' => '',
'Archive' => '', 'Archive' => '',
'Articles' => '#VALUE!', 'Articles' => '',
'Asia' => '#VALUE!', 'Asia' => '',
'Attribute' => '#VALUE!', 'Attribute' => '',
'BaseTime' => '#VALUE!', 'BaseTime' => '',
'Billing' => '', 'Billing' => '',
'Bills' => '账单', 'Bills' => '账单',
'Bonus' => '奖金', 'Bonus' => '奖金',
'CIS' => '#VALUE!', 'CIS' => '',
'Cashback' => '返现金', 'Cashback' => '返现金',
'City' => '城市', 'City' => '城市',
'Client' => '客户', 'Client' => '客户',
'ClientID' => '客户ID', 'ClientID' => '客户ID',
'ComparisonTime' => '#VALUE!', 'ComparisonTime' => '',
'Confirmation' => '确认', 'Confirmation' => '确认',
'Country' => '国家', 'Country' => '国家',
'CreateBill' => '', 'CreateBill' => '',
@ -41,7 +41,7 @@ return ['Billing' => [
'CreditCard' => '信用卡', 'CreditCard' => '信用卡',
'CreditNote' => '信用票据', 'CreditNote' => '信用票据',
'Currency' => '', 'Currency' => '',
'Customers' => '#VALUE!', 'Customers' => '',
'Date' => '日期', 'Date' => '日期',
'Delivery' => '交货', 'Delivery' => '交货',
'DeliveryNote' => '送货单', 'DeliveryNote' => '送货单',
@ -50,10 +50,10 @@ return ['Billing' => [
'DiscountP' => '折扣 ', 'DiscountP' => '折扣 ',
'Due' => '到期的', 'Due' => '到期的',
'Email' => '', 'Email' => '',
'Europe' => '#VALUE!', 'Europe' => '',
'Filter' => '#VALUE!', 'Filter' => '',
'Freightage' => 'FRIGUTAGE.', 'Freightage' => 'FRIGUTAGE.',
'General' => '#VALUE!', 'General' => '',
'Gross' => '总的', 'Gross' => '总的',
'Invoice' => '发票', 'Invoice' => '发票',
'Invoices' => '发票', 'Invoices' => '发票',
@ -68,10 +68,9 @@ return ['Billing' => [
'Net' => '网', 'Net' => '网',
'Offer' => '提供', 'Offer' => '提供',
'Original' => '', 'Original' => '',
'Other' => '#VALUE!', 'Other' => '',
'Payment' => '支付', 'Payment' => '支付',
'PaymentPlan' => '', 'PaymentPlan' => '',
'PazmentPlan' => '',
'Postal' => '邮政', 'Postal' => '邮政',
'Prepaid' => '预付款', 'Prepaid' => '预付款',
'Preview' => '预览', 'Preview' => '预览',
@ -79,9 +78,9 @@ return ['Billing' => [
'Profit' => '利润', 'Profit' => '利润',
'Quantity' => '数量', 'Quantity' => '数量',
'Recipient' => '接受者', 'Recipient' => '接受者',
'Region' => '#VALUE!', 'Region' => '',
'Rep' => '#VALUE!', 'Rep' => '',
'Sales' => '#VALUE!', 'Sales' => '',
'Select' => '选择', 'Select' => '选择',
'Shipment' => '运输', 'Shipment' => '运输',
'Source' => '来源', 'Source' => '来源',
@ -93,7 +92,7 @@ return ['Billing' => [
'Type' => '类型', 'Type' => '类型',
'Types' => '', 'Types' => '',
'Upload' => '上传', 'Upload' => '上传',
'Value' => '#VALUE!', 'Value' => '',
'Variation' => '变化', 'Variation' => '变化',
'Zip' => '压缩', 'Zip' => '压缩',
]]; ]];

View File

@ -1,21 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\ClientManagement
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
/* @todo: single month/quarter/fiscal year/calendar year */
/* @todo: time range (<= 12 month = monthly view; else annual view/comparison) */
/**
* @var \phpOMS\Views\View $this
*/
echo $this->data['nav']->render();

View File

@ -22,6 +22,7 @@ include __DIR__ . '/../../../Media/Theme/Backend/template-functions.php';
* @var \phpOMS\Views\View $this * @var \phpOMS\Views\View $this
*/ */
/** @var \Modules\Billing\Models\Bill $bill */
$bill = $this->data['bill']; $bill = $this->data['bill'];
$elements = $bill->getElements(); $elements = $bill->getElements();
@ -29,7 +30,7 @@ $previewType = $this->data['previewType'];
$originalType = $this->data['originalType']; $originalType = $this->data['originalType'];
$billPdf = $bill->getFileByType($previewType); $billPdf = $bill->getFileByType($previewType);
$original = $bill->getFileByType($originalType); $original = $bill->getFileByType($originalType);
$media = $bill->getMedia(); $media = $bill->files;
echo $this->data['nav']->render(); ?> echo $this->data['nav']->render(); ?>
@ -219,7 +220,7 @@ echo $this->data['nav']->render(); ?>
<section id="mediaFile" class="portlet col-simple"> <section id="mediaFile" class="portlet col-simple">
<div class="portlet-body col-simple"> <div class="portlet-body col-simple">
<?php if ($original->id > 0) : ?> <?php if ($original->id > 0) : ?>
<iframe class="col-simple" data-form="iUiSettings" data-name="iframeHelper" id="iHelperFrame" src="<?= UriFactory::build('Resources/mozilla/Pdf/web/viewer.html{?}&file=' . \urlencode(($original->isAbsolute ? '' : '/../../../../') . $original->getPath())); ?>" allowfullscreen></iframe> <iframe class="col-simple" id="iOriginal" src="<?= UriFactory::build('Resources/mozilla/Pdf/web/viewer.html?file=' . \urlencode(UriFactory::build('{/api}media/export?id=' . $original->id))); ?>" allowfullscreen></iframe>
<?php endif; ?> <?php endif; ?>
</div> </div>
</section> </section>

File diff suppressed because it is too large Load Diff

View File

@ -1,344 +0,0 @@
<?php
/**
* Jingga
*
* PHP Version 8.1
*
* @package Modules\ClientManagement
* @copyright Dennis Eichhorn
* @license OMS License 2.0
* @version 1.0.0
* @link https://jingga.app
*/
declare(strict_types=1);
/* @todo: single month/quarter/fiscal year/calendar year */
/* @todo: time range (<= 12 month = monthly view; else annual view/comparison) */
/**
* @var \phpOMS\Views\View $this
*/
echo $this->data['nav']->render();
?>
<div class="tabview tab-2">
<div class="box">
<ul class="tab-links">
<li><label for="c-tab-2"><?= $this->getHtml('General'); ?></label></li>
<li><label for="c-tab-1"><?= $this->getHtml('Filter'); ?></label></li>
</ul>
</div>
<div class="tab-content">
<input type="radio" id="c-tab-1" name="tabular-2"<?= $this->request->uri->fragment === 'c-tab-1' ? ' checked' : ''; ?>>
<div class="tab">
<div class="row">
<div class="col-xs-12 col-lg-6">
<section class="portlet">
<form>
<div class="portlet-head"><?= $this->getHtml('Filter'); ?></div>
<div class="portlet-body">
<div class="form-group">
<label for="iId"><?= $this->getHtml('Client'); ?></label>
<input type="text" id="iName1" name="name1">
</div>
<div class="form-group">
<div class="input-control">
<label for="iDecimalPoint"><?= $this->getHtml('BaseTime'); ?></label>
<input id="iDecimalPoint" name="settings_decimal" type="text" value="" placeholder=".">
</div>
<div class="input-control">
<label for="iThousandSep"><?= $this->getHtml('ComparisonTime'); ?></label>
<input id="iThousandSep" name="settings_thousands" type="text" value="" placeholder=",">
</div>
</div>
<div class="form-group">
<div class="input-control">
<label for="iDecimalPoint"><?= $this->getHtml('Attribute'); ?></label>
<input id="iDecimalPoint" name="settings_decimal" type="text" value="" placeholder=".">
</div>
<div class="input-control">
<label for="iThousandSep"><?= $this->getHtml('Value'); ?></label>
<input id="iThousandSep" name="settings_thousands" type="text" value="" placeholder=",">
</div>
</div>
<div class="form-group">
<label for="iId"><?= $this->getHtml('Region'); ?></label>
<input type="text" id="iName1" name="name1">
</div>
<div class="form-group">
<label for="iId"><?= $this->getHtml('Country'); ?></label>
<input type="text" id="iName1" name="name1">
</div>
<div class="form-group">
<label for="iId"><?= $this->getHtml('Rep'); ?></label>
<input type="text" id="iName1" name="name1">
</div>
</div>
<div class="portlet-foot"><input id="iSubmitGeneral" name="submitGeneral" type="submit" value="<?= $this->getHtml('Save', '0', '0'); ?>"></div>
</form>
</section>
</div>
</div>
</div>
<input type="radio" id="c-tab-2" name="tabular-2"<?= $this->request->uri->fragment === 'c-tab-1' ? ' checked' : ''; ?>>
<div class="tab">
<div class="row">
<div class="col-xs-12 col-lg-6">
<section class="portlet">
<div class="portlet-head">
Sales per Rep - Current
<?php include __DIR__ . '/../../../../Web/Backend/Themes/popup-export-data.tpl.php'; ?>
</div>
<?php $customersRep = $this->data['currentCustomersRep']; ?>
<div class="portlet-body">
<canvas id="sales-region" data-chart='{
"type": "horizontalBar",
"data": {
"labels": [
<?php
$temp = [];
foreach ($customersRep as $name => $rep) {
$temp[] = $name;
}
?>
<?= '"' . \implode('", "', $temp) . '"'; ?>
],
"datasets": [
{
"label": "<?= $this->getHtml('Customers'); ?>",
"type": "horizontalBar",
"data": [
<?php
$temp = [];
foreach ($customersRep as $values) {
$temp[] = ((int) $values['customers']);
}
?>
<?= \implode(',', $temp); ?>
],
"fill": false,
"borderColor": "rgb(54, 162, 235)",
"backgroundColor": "rgb(54, 162, 235)",
"tension": 0.0
}
]
},
"options": {
"title": {
"display": false,
"text": "Customers per rep"
}
}
}'></canvas>
<div class="more-container">
<input id="more-customer-rep-current" type="checkbox" name="more-container">
<label for="more-customer-rep-current">
<span>Data</span>
<i class="fa fa-chevron-right expand"></i>
</label>
<div>
<table class="default">
<thead>
<tr>
<td>Rep
<td>Customer count
<tbody>
<?php
$sum = 0;
foreach ($customersRep as $rep => $values) : $sum += $values['customers']; ?>
<tr>
<td><?= $rep; ?>
<td><?= $values['customers']; ?>
<?php endforeach; ?>
<tr>
<td>Total
<td><?= $sum; ?>
</table>
</div>
</div>
</div>
</section>
</div>
<div class="col-xs-12 col-lg-6">
<section class="portlet">
<div class="portlet-head">
Sales per Rep - Annual
<?php include __DIR__ . '/../../../../Web/Backend/Themes/popup-export-data.tpl.php'; ?>
</div>
<?php $customersRep = $this->data['annualCustomersRep']; ?>
<table class="default">
<thead>
<tr>
<td>Rep
<?php foreach ([2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020] as $year) : ?>
<td><?= $year; ?>
<?php endforeach; ?>
<tbody>
<?php
$sum = [];
foreach ($customersRep as $rep => $annual) : ?>
<tr>
<td><?= $rep; ?>
<?php foreach ($annual as $year => $values) :
$sum[$values['year']] = ($sum[$values['year']] ?? 0) + $values['customers']; ?>
<td><?= $values['customers']; ?>
<?php endforeach; ?>
<?php endforeach; ?>
<tr>
<td>Total
<?php foreach ([2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020] as $year) : ?>
<td><?= $sum[$year]; ?>
<?php endforeach; ?>
</table>
</section>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-lg-6">
<section class="portlet">
<div class="portlet-head">
Profit per Rep - Current
<?php include __DIR__ . '/../../../../Web/Backend/Themes/popup-export-data.tpl.php'; ?>
</div>
<?php $customersRep = $this->data['currentCustomersRep']; ?>
<div class="portlet-body">
<canvas id="sales-region" data-chart='{
"type": "horizontalBar",
"data": {
"labels": [
<?php
$temp = [];
foreach ($customersRep as $name => $rep) {
$temp[] = $name;
}
?>
<?= '"' . \implode('", "', $temp) . '"'; ?>
],
"datasets": [
{
"label": "<?= $this->getHtml('Customers'); ?>",
"type": "horizontalBar",
"data": [
<?php
$temp = [];
foreach ($customersRep as $values) {
$temp[] = ((int) $values['customers']);
}
?>
<?= \implode(',', $temp); ?>
],
"fill": false,
"borderColor": "rgb(54, 162, 235)",
"backgroundColor": "rgb(54, 162, 235)",
"tension": 0.0
}
]
},
"options": {
"title": {
"display": false,
"text": "Customers per rep"
}
}
}'></canvas>
<div class="more-container">
<input id="more-customer-rep-current" type="checkbox" name="more-container">
<label for="more-customer-rep-current">
<span>Data</span>
<i class="fa fa-chevron-right expand"></i>
</label>
<div>
<table class="default">
<thead>
<tr>
<td>Rep
<td>Customer count
<tbody>
<?php
$sum = 0;
foreach ($customersRep as $rep => $values) : $sum += $values['customers']; ?>
<tr>
<td><?= $rep; ?>
<td><?= $values['customers']; ?>
<?php endforeach; ?>
<tr>
<td>Total
<td><?= $sum; ?>
</table>
</div>
</div>
</div>
</section>
</div>
<div class="col-xs-12 col-lg-6">
<section class="portlet">
<div class="portlet-head">
Profit per Rep - Annual
<?php include __DIR__ . '/../../../../Web/Backend/Themes/popup-export-data.tpl.php'; ?>
</div>
<?php $customersRep = $this->data['annualCustomersRep']; ?>
<table class="default">
<thead>
<tr>
<td>Rep
<?php foreach ([2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020] as $year) : ?>
<td><?= $year; ?>
<?php endforeach; ?>
<tbody>
<?php
$sum = [];
foreach ($customersRep as $rep => $annual) : ?>
<tr>
<td><?= $rep; ?>
<?php foreach ($annual as $year => $values) :
$sum[$values['year']] = ($sum[$values['year']] ?? 0) + $values['customers']; ?>
<td><?= $values['customers']; ?>
<?php endforeach; ?>
<?php endforeach; ?>
<tr>
<td>Total
<?php foreach ([2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020] as $year) : ?>
<td><?= $sum[$year]; ?>
<?php endforeach; ?>
</table>
</section>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<section class="portlet">
<div class="portlet-head">
Sales / Rep
<?php include __DIR__ . '/../../../../Web/Backend/Themes/popup-export-data.tpl.php'; ?>
</div>
<table class="default">
<thead>
<tr>
<td>Rep
<td>Sales PY
<td>Sales B
<td>Sales A
<td>Diff PY
<td>Diff B
<tbody>
</table>
</section>
</div>
</div>
</div>
</div>
</div>

View File

@ -79,7 +79,7 @@ final class Autoloader
$class = \strtr($class, '_\\', '//'); $class = \strtr($class, '_\\', '//');
if (\stripos($class, 'Web/Backend') !== false || \stripos($class, 'Web/Api') !== false) { if (\stripos($class, 'Web/Backend') !== false || \stripos($class, 'Web/Api') !== false) {
$class = \is_dir(__DIR__ . '/Web') ? $class : \str_replace('Web/', 'Karaka/Web/', $class); $class = \is_dir(__DIR__ . '/Web') ? $class : \str_replace('Web/', 'MainRepository/Web/', $class);
} }
$class2 = $class; $class2 = $class;

View File

@ -7,7 +7,10 @@ declare(strict_types=1);
\error_reporting(\E_ALL); \error_reporting(\E_ALL);
\setlocale(\LC_ALL, 'en_US.UTF-8'); \setlocale(\LC_ALL, 'en_US.UTF-8');
require_once __DIR__ . '/../vendor/autoload.php'; if (\is_file(__DIR__ . '/../vendor/autoload.php')) {
require_once __DIR__ . '/../vendor/autoload.php';
}
require_once __DIR__ . '/Autoloader.php'; require_once __DIR__ . '/Autoloader.php';
use phpOMS\DataStorage\Database\DatabasePool; use phpOMS\DataStorage\Database\DatabasePool;
@ -71,9 +74,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -81,9 +84,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -91,9 +94,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -101,9 +104,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -111,9 +114,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -121,9 +124,9 @@ $CONFIG = [
'db' => 'mysql', /* db type */ 'db' => 'mysql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '3306', /* db host port */ 'port' => '3306', /* db host port */
'login' => 'root', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -133,9 +136,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -143,9 +146,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -153,9 +156,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -163,9 +166,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -173,9 +176,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -183,9 +186,9 @@ $CONFIG = [
'db' => 'pgsql', /* db type */ 'db' => 'pgsql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '5432', /* db host port */ 'port' => '5432', /* db host port */
'login' => 'postgres', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'root', /* db login password */ 'password' => 'orange', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -233,9 +236,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -243,9 +246,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -253,9 +256,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -263,9 +266,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -273,9 +276,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],
@ -283,9 +286,9 @@ $CONFIG = [
'db' => 'mssql', /* db type */ 'db' => 'mssql', /* db type */
'host' => '127.0.0.1', /* db host address */ 'host' => '127.0.0.1', /* db host address */
'port' => '1433', /* db host port */ 'port' => '1433', /* db host port */
'login' => 'sa', /* db login name */ 'login' => 'test', /* db login name */
'password' => 'c0MplicatedP@ssword', /* db login password */ 'password' => 'c0MplicatedP@ssword', /* db login password */
'database' => 'oms', /* db name */ 'database' => 'omt', /* db name */
'weight' => 1000, /* db table prefix */ 'weight' => 1000, /* db table prefix */
'datetimeformat' => 'Y-m-d H:i:s', 'datetimeformat' => 'Y-m-d H:i:s',
], ],

View File

@ -123,7 +123,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
$this->module->apiBillCreate($request, $response); $this->module->apiBillCreate($request, $response);
$bId = $response->get('')['response']->id; $bId = $response->getDataArray('')['response']->id;
self::assertGreaterThan(0, $bId); self::assertGreaterThan(0, $bId);
for ($k = 0; $k < 10; ++$k) { for ($k = 0; $k < 10; ++$k) {
@ -151,7 +151,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
} }
$this->module->apiBillElementCreate($request, $response); $this->module->apiBillElementCreate($request, $response);
self::assertGreaterThan(0, $response->get('')['response']->id); self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
} }
$response = new HttpResponse(); $response = new HttpResponse();
@ -162,7 +162,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
$this->module->apiBillPdfArchiveCreate($request, $response); $this->module->apiBillPdfArchiveCreate($request, $response);
$result = $response->get(''); $result = $response->getData('');
self::assertGreaterThan(0, $result === null ? -1 : $result['response']?->id); self::assertGreaterThan(0, $result === null ? -1 : $result['response']?->id);
} }
*/ */
@ -199,7 +199,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
$this->module->apiBillCreate($request, $response); $this->module->apiBillCreate($request, $response);
$bId = $response->get('')['response']->id; $bId = $response->getDataArray('')['response']->id;
self::assertGreaterThan(0, $bId); self::assertGreaterThan(0, $bId);
for ($k = 0; $k < 10; ++$k) { for ($k = 0; $k < 10; ++$k) {
@ -227,7 +227,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
} }
$this->module->apiBillElementCreate($request, $response); $this->module->apiBillElementCreate($request, $response);
self::assertGreaterThan(0, $response->get('')['response']->id); self::assertGreaterThan(0, $response->getDataArray('')['response']->id);
} }
$response = new HttpResponse(); $response = new HttpResponse();
@ -238,7 +238,7 @@ final class ApiControllerTest extends \PHPUnit\Framework\TestCase
$this->module->apiBillPdfArchiveCreate($request, $response); $this->module->apiBillPdfArchiveCreate($request, $response);
$result = $response->get(''); $result = $response->getData('');
self::assertGreaterThan(0, $result === null ? -1 : $result['response']?->id); self::assertGreaterThan(0, $result === null ? -1 : $result['response']?->id);
} }
*/ */

View File

@ -7,6 +7,7 @@
<exclude> <exclude>
<directory>../vendor*</directory> <directory>../vendor*</directory>
<directory>../MainRepository*</directory> <directory>../MainRepository*</directory>
<directory>../Karaka*</directory>
<directory>../Admin/Install/Application*</directory> <directory>../Admin/Install/Application*</directory>
<directory>../phpOMS*</directory> <directory>../phpOMS*</directory>
<directory>../tests*</directory> <directory>../tests*</directory>