mirror of
https://github.com/Karaka-Management/oms-Billing.git
synced 2026-01-11 15:18:42 +00:00
bug fixes
This commit is contained in:
parent
422b5b80fe
commit
cfd11cec45
|
|
@ -145,7 +145,7 @@ final class Installer extends InstallerAbstract
|
|||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', $attribute['name'] ?? '');
|
||||
$request->setData('title', \reset($attribute['l11n']));
|
||||
$request->setData('content', \reset($attribute['l11n']));
|
||||
$request->setData('language', \array_keys($attribute['l11n'])[0] ?? 'en');
|
||||
$request->setData('is_required', $attribute['is_required'] ?? false);
|
||||
$request->setData('repeatable', $attribute['repeatable'] ?? false);
|
||||
|
|
@ -177,9 +177,9 @@ final class Installer extends InstallerAbstract
|
|||
$request = new HttpRequest();
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('title', $l11n);
|
||||
$request->setData('content', $l11n);
|
||||
$request->setData('language', $language);
|
||||
$request->setData('type', $billAttrType[$attribute['name']]['id']);
|
||||
$request->setData('ref', $billAttrType[$attribute['name']]['id']);
|
||||
|
||||
$module->apiBillAttributeTypeL11nCreate($request, $response);
|
||||
}
|
||||
|
|
@ -226,7 +226,7 @@ final class Installer extends InstallerAbstract
|
|||
$request->setData('type', $billAttrType[$attribute['name']]['id']);
|
||||
|
||||
if (isset($value['l11n']) && !empty($value['l11n'])) {
|
||||
$request->setData('title', \reset($value['l11n']));
|
||||
$request->setData('content', \reset($value['l11n']));
|
||||
$request->setData('language', \array_keys($value['l11n'])[0] ?? 'en');
|
||||
}
|
||||
|
||||
|
|
@ -254,9 +254,9 @@ final class Installer extends InstallerAbstract
|
|||
$request = new HttpRequest();
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('title', $l11n);
|
||||
$request->setData('content', $l11n);
|
||||
$request->setData('language', $language);
|
||||
$request->setData('value', $attrValue['id']);
|
||||
$request->setData('ref', $attrValue['id']);
|
||||
|
||||
$module->apiBillAttributeValueL11nCreate($request, $response);
|
||||
}
|
||||
|
|
@ -367,7 +367,7 @@ final class Installer extends InstallerAbstract
|
|||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', $type['name'] ?? '');
|
||||
$request->setData('title', \reset($type['l11n']));
|
||||
$request->setData('content', \reset($type['l11n']));
|
||||
$request->setData('language', \array_keys($type['l11n'])[0] ?? 'en');
|
||||
$request->setData('number_format', $type['numberFormat'] ?? '{id}');
|
||||
$request->setData('sign', $type['sign'] ?? 1);
|
||||
|
|
@ -402,9 +402,9 @@ final class Installer extends InstallerAbstract
|
|||
$request = new HttpRequest();
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('title', $l11n);
|
||||
$request->setData('content', $l11n);
|
||||
$request->setData('language', $language);
|
||||
$request->setData('type', $billType['id']);
|
||||
$request->setData('ref', $billType['id']);
|
||||
|
||||
$module->apiBillTypeL11nCreate($request, $response);
|
||||
}
|
||||
|
|
@ -438,7 +438,7 @@ final class Installer extends InstallerAbstract
|
|||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', $type['name'] ?? '');
|
||||
$request->setData('title', \reset($type['l11n']));
|
||||
$request->setData('content', \reset($type['l11n']));
|
||||
|
||||
$module->apiPaymentTermCreate($request, $response);
|
||||
|
||||
|
|
@ -462,9 +462,9 @@ final class Installer extends InstallerAbstract
|
|||
$request = new HttpRequest();
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('title', $l11n);
|
||||
$request->setData('content', $l11n);
|
||||
$request->setData('language', $language);
|
||||
$request->setData('type', $paymentTerms[$type['name']]['id']);
|
||||
$request->setData('ref', $paymentTerms[$type['name']]['id']);
|
||||
|
||||
$module->apiPaymentTermL11nCreate($request, $response);
|
||||
}
|
||||
|
|
@ -498,7 +498,7 @@ final class Installer extends InstallerAbstract
|
|||
|
||||
$request->header->account = 1;
|
||||
$request->setData('name', $type['name'] ?? '');
|
||||
$request->setData('title', \reset($type['l11n']));
|
||||
$request->setData('content', \reset($type['l11n']));
|
||||
|
||||
$module->apiShippingTermCreate($request, $response);
|
||||
|
||||
|
|
@ -522,9 +522,9 @@ final class Installer extends InstallerAbstract
|
|||
$request = new HttpRequest();
|
||||
|
||||
$request->header->account = 1;
|
||||
$request->setData('title', $l11n);
|
||||
$request->setData('content', $l11n);
|
||||
$request->setData('language', $language);
|
||||
$request->setData('type', $shippingTerms[$type['name']]['id']);
|
||||
$request->setData('ref', $shippingTerms[$type['name']]['id']);
|
||||
|
||||
$module->apiShippingTermL11nCreate($request, $response);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,19 @@ use phpOMS\Account\PermissionType;
|
|||
use phpOMS\Router\RouteVerb;
|
||||
|
||||
return [
|
||||
'^.*/bill/file(\?.*|$)$' => [
|
||||
[
|
||||
'dest' => '\Modules\Billing\Controller\ApiController:apiFileCreate',
|
||||
'verb' => RouteVerb::PUT,
|
||||
'csrf' => true,
|
||||
'active' => true,
|
||||
'permission' => [
|
||||
'module' => BackendController::NAME,
|
||||
'type' => PermissionType::CREATE,
|
||||
'state' => PermissionCategory::SALES_INVOICE,
|
||||
],
|
||||
],
|
||||
],
|
||||
'^.*/bill/render(\?.*$|$)' => [
|
||||
[
|
||||
'dest' => '\Modules\Billing\Controller\ApiBillController:apiMediaRender',
|
||||
|
|
|
|||
|
|
@ -244,7 +244,12 @@ final class ApiBillController extends Controller
|
|||
PermissionCategory::PURCHASE_INVOICE
|
||||
)
|
||||
) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::HIDDEN, '', '', []);
|
||||
$this->fillJsonResponse(
|
||||
$request, $response,
|
||||
NotificationLevel::ERROR, '',
|
||||
$this->app->l11nManager->getText($response->header->l11n->language, '0', '0', 'InvalidPermission'),
|
||||
[]
|
||||
);
|
||||
$response->header->status = RequestStatusCode::R_403;
|
||||
|
||||
return;
|
||||
|
|
@ -792,7 +797,7 @@ final class ApiBillController extends Controller
|
|||
}
|
||||
|
||||
/** @var \Modules\Billing\Models\Bill $bill */
|
||||
$bill = BillMapper::get()->where('id', (int) $request->getData('bill'))->execute();
|
||||
$bill = BillMapper::get()->where('id', (int) $request->getData('ref'))->execute();
|
||||
$path = $this->createBillDir($bill);
|
||||
|
||||
$uploaded = new NullCollection();
|
||||
|
|
@ -970,7 +975,7 @@ final class ApiBillController extends Controller
|
|||
{
|
||||
$val = [];
|
||||
if (($val['media'] = (!$request->hasData('media') && empty($request->files)))
|
||||
|| ($val['bill'] = !$request->hasData('bill'))
|
||||
|| ($val['ref'] = !$request->hasData('ref'))
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
|
@ -1152,7 +1157,12 @@ final class ApiBillController extends Controller
|
|||
PermissionCategory::PURCHASE_INVOICE
|
||||
)
|
||||
) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::HIDDEN, '', '', []);
|
||||
$this->fillJsonResponse(
|
||||
$request, $response,
|
||||
NotificationLevel::ERROR, '',
|
||||
$this->app->l11nManager->getText($response->header->l11n->language, '0', '0', 'InvalidPermission'),
|
||||
[]
|
||||
);
|
||||
$response->header->status = RequestStatusCode::R_403;
|
||||
|
||||
return;
|
||||
|
|
@ -1318,7 +1328,12 @@ final class ApiBillController extends Controller
|
|||
PermissionCategory::PURCHASE_INVOICE
|
||||
)
|
||||
) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::HIDDEN, '', '', []);
|
||||
$this->fillJsonResponse(
|
||||
$request, $response,
|
||||
NotificationLevel::ERROR, '',
|
||||
$this->app->l11nManager->getText($response->header->l11n->language, '0', '0', 'InvalidPermission'),
|
||||
[]
|
||||
);
|
||||
$response->header->status = RequestStatusCode::R_403;
|
||||
|
||||
return;
|
||||
|
|
@ -1578,7 +1593,7 @@ final class ApiBillController extends Controller
|
|||
}
|
||||
|
||||
/** @var \Modules\Billing\Models\Bill $bill */
|
||||
$bill = BillMapper::get()->where('id', (int) $request->getData('id'))->execute();
|
||||
$bill = BillMapper::get()->where('id', (int) $request->getData('ref'))->execute();
|
||||
|
||||
$request->setData('virtualpath', $this->createBillDir($bill), true);
|
||||
$this->app->moduleManager->get('Editor', 'Api')->apiEditorCreate($request, $response, $data);
|
||||
|
|
@ -1599,7 +1614,7 @@ final class ApiBillController extends Controller
|
|||
return;
|
||||
}
|
||||
|
||||
$this->createModelRelation($request->header->account, $request->getDataInt('id'), $model->id, BillMapper::class, 'notes', '', $request->getOrigin());
|
||||
$this->createModelRelation($request->header->account, $request->getDataInt('ref'), $model->id, BillMapper::class, 'notes', '', $request->getOrigin());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -1614,7 +1629,7 @@ final class ApiBillController extends Controller
|
|||
private function validateNoteCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['id'] = !$request->hasData('id'))) {
|
||||
if (($val['ref'] = !$request->hasData('ref'))) {
|
||||
return $val;
|
||||
}
|
||||
|
||||
|
|
@ -1841,7 +1856,12 @@ final class ApiBillController extends Controller
|
|||
if (!$this->app->accountManager->get($accountId)->hasPermission(
|
||||
PermissionType::MODIFY, $this->app->unitId, $this->app->appId, self::NAME, PermissionCategory::BILL_NOTE, $request->getDataInt('id'))
|
||||
) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::HIDDEN, '', '', []);
|
||||
$this->fillJsonResponse(
|
||||
$request, $response,
|
||||
NotificationLevel::ERROR, '',
|
||||
$this->app->l11nManager->getText($response->header->l11n->language, '0', '0', 'InvalidPermission'),
|
||||
[]
|
||||
);
|
||||
$response->header->status = RequestStatusCode::R_403;
|
||||
|
||||
return;
|
||||
|
|
@ -1869,7 +1889,12 @@ final class ApiBillController extends Controller
|
|||
if (!$this->app->accountManager->get($accountId)->hasPermission(
|
||||
PermissionType::DELETE, $this->app->unitId, $this->app->appId, self::NAME, PermissionCategory::BILL_NOTE, $request->getDataInt('id'))
|
||||
) {
|
||||
$this->fillJsonResponse($request, $response, NotificationLevel::HIDDEN, '', '', []);
|
||||
$this->fillJsonResponse(
|
||||
$request, $response,
|
||||
NotificationLevel::ERROR, '',
|
||||
$this->app->l11nManager->getText($response->header->l11n->language, '0', '0', 'InvalidPermission'),
|
||||
[]
|
||||
);
|
||||
$response->header->status = RequestStatusCode::R_403;
|
||||
|
||||
return;
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ final class ApiBillTypeController extends Controller
|
|||
{
|
||||
$billType = new BillType($request->getDataString('name') ?? '');
|
||||
$billType->setL11n(
|
||||
$request->getDataString('title') ?? '',
|
||||
$request->getDataString('content') ?? '',
|
||||
ISO639x1Enum::tryFromValue($request->getDataString('language')) ?? ISO639x1Enum::_EN
|
||||
);
|
||||
$billType->numberFormat = $request->getDataString('number_format') ?? '{id}';
|
||||
|
|
@ -109,7 +109,7 @@ final class ApiBillTypeController extends Controller
|
|||
private function validateBillTypeCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['name'] = !$request->hasData('name'))
|
||||
) {
|
||||
return $val;
|
||||
|
|
@ -157,9 +157,9 @@ final class ApiBillTypeController extends Controller
|
|||
private function createBillTypeL11nFromRequest(RequestAbstract $request) : BaseStringL11n
|
||||
{
|
||||
$billTypeL11n = new BaseStringL11n();
|
||||
$billTypeL11n->ref = $request->getDataInt('type') ?? 0;
|
||||
$billTypeL11n->ref = $request->getDataInt('ref') ?? 0;
|
||||
$billTypeL11n->language = ISO639x1Enum::tryFromValue($request->getDataString('language')) ?? $request->header->l11n->language;
|
||||
$billTypeL11n->content = $request->getDataString('title') ?? '';
|
||||
$billTypeL11n->content = $request->getDataString('content') ?? '';
|
||||
|
||||
return $billTypeL11n;
|
||||
}
|
||||
|
|
@ -176,8 +176,8 @@ final class ApiBillTypeController extends Controller
|
|||
private function validateBillTypeL11nCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
|| ($val['type'] = !$request->hasData('type'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['ref'] = !$request->hasData('ref'))
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ final class ApiController extends Controller
|
|||
private function validatePaymentTermCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['name'] = !$request->hasData('name'))
|
||||
) {
|
||||
return $val;
|
||||
|
|
@ -97,7 +97,7 @@ final class ApiController extends Controller
|
|||
{
|
||||
$paymentTerm = new BaseStringL11nType($request->getDataString('name') ?? '');
|
||||
$paymentTerm->setL11n(
|
||||
$request->getDataString('title') ?? '',
|
||||
$request->getDataString('content') ?? '',
|
||||
ISO639x1Enum::tryFromValue($request->getDataString('language')) ?? ISO639x1Enum::_EN
|
||||
);
|
||||
|
||||
|
|
@ -143,8 +143,8 @@ final class ApiController extends Controller
|
|||
private function validatePaymentTermL11nCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
|| ($val['type'] = !$request->hasData('type'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['ref'] = !$request->hasData('ref'))
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
|
@ -164,10 +164,10 @@ final class ApiController extends Controller
|
|||
private function createPaymentTermL11nFromRequest(RequestAbstract $request) : BaseStringL11n
|
||||
{
|
||||
$paymentL11n = new BaseStringL11n();
|
||||
$paymentL11n->ref = $request->getDataInt('type') ?? 0;
|
||||
$paymentL11n->ref = $request->getDataInt('ref') ?? 0;
|
||||
$paymentL11n->language = ISO639x1Enum::tryFromValue($request->getDataString('language'))
|
||||
?? $request->header->l11n->language;
|
||||
$paymentL11n->content = $request->getDataString('title') ?? '';
|
||||
$paymentL11n->content = $request->getDataString('content') ?? '';
|
||||
|
||||
return $paymentL11n;
|
||||
}
|
||||
|
|
@ -211,7 +211,7 @@ final class ApiController extends Controller
|
|||
private function validateShippingTermCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['name'] = !$request->hasData('name'))
|
||||
) {
|
||||
return $val;
|
||||
|
|
@ -233,7 +233,7 @@ final class ApiController extends Controller
|
|||
{
|
||||
$shippingTerm = new BaseStringL11nType($request->getDataString('name') ?? '');
|
||||
$shippingTerm->setL11n(
|
||||
$request->getDataString('title') ?? '',
|
||||
$request->getDataString('content') ?? '',
|
||||
ISO639x1Enum::tryFromValue($request->getDataString('language')) ?? ISO639x1Enum::_EN
|
||||
);
|
||||
|
||||
|
|
@ -279,8 +279,8 @@ final class ApiController extends Controller
|
|||
private function validateShippingTermL11nCreate(RequestAbstract $request) : array
|
||||
{
|
||||
$val = [];
|
||||
if (($val['title'] = !$request->hasData('title'))
|
||||
|| ($val['type'] = !$request->hasData('type'))
|
||||
if (($val['content'] = !$request->hasData('content'))
|
||||
|| ($val['ref'] = !$request->hasData('ref'))
|
||||
) {
|
||||
return $val;
|
||||
}
|
||||
|
|
@ -300,10 +300,10 @@ final class ApiController extends Controller
|
|||
private function createShippingTermL11nFromRequest(RequestAbstract $request) : BaseStringL11n
|
||||
{
|
||||
$shippingL11n = new BaseStringL11n();
|
||||
$shippingL11n->ref = $request->getDataInt('type') ?? 0;
|
||||
$shippingL11n->ref = $request->getDataInt('ref') ?? 0;
|
||||
$shippingL11n->language = ISO639x1Enum::tryFromValue($request->getDataString('language'))
|
||||
?? $request->header->l11n->language;
|
||||
$shippingL11n->content = $request->getDataString('title') ?? '';
|
||||
$shippingL11n->content = $request->getDataString('content') ?? '';
|
||||
|
||||
return $shippingL11n;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -565,7 +565,7 @@ echo $this->data['nav']->render(); ?>
|
|||
|
||||
<input type="radio" id="c-tab-6" name="tabular-2">
|
||||
<div class="tab col-simple">
|
||||
<?= $this->data['media-upload']->render('bill-file', 'files', '', $media); ?>
|
||||
<?= $this->data['media-upload']->render('bill-file', 'files', '', $media, '{/api}bill/file?csrf={$CSRF}', (string) $bill->id); ?>
|
||||
</div>
|
||||
|
||||
<?php if (!$isNew && !empty($bill)) : ?>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,8 @@ echo $this->data['nav']->render(); ?>
|
|||
<?= $this->data['l11nView']->render(
|
||||
$this->data['l11nValues'],
|
||||
[],
|
||||
'{/api}bill/payment/l11n?csrf={$CSRF}'
|
||||
'{/api}bill/payment/l11n?csrf={$CSRF}',
|
||||
(string) $type->id
|
||||
);
|
||||
?>
|
||||
</div>
|
||||
|
|
@ -565,7 +565,7 @@ echo $this->data['nav']->render(); ?>
|
|||
|
||||
<input type="radio" id="c-tab-6" name="tabular-2">
|
||||
<div class="tab col-simple">
|
||||
<?= $this->data['media-upload']->render('bill-file', 'files', '', $bill->files); ?>
|
||||
<?= $this->data['media-upload']->render('bill-file', 'files', '', $bill->files, '{/api}bill/file?csrf={$CSRF}', (string) $bill->id); ?>
|
||||
</div>
|
||||
|
||||
<?php if (!$isNew && !empty($logs)) : ?>
|
||||
|
|
|
|||
|
|
@ -47,7 +47,8 @@ echo $this->data['nav']->render(); ?>
|
|||
<?= $this->data['l11nView']->render(
|
||||
$this->data['l11nValues'],
|
||||
[],
|
||||
'{/api}bill/shipping/l11n?csrf={$CSRF}'
|
||||
'{/api}bill/shipping/l11n?csrf={$CSRF}',
|
||||
(string) $type->id
|
||||
);
|
||||
?>
|
||||
</div>
|
||||
|
|
@ -91,7 +91,7 @@ trait ApiBillControllerTrait
|
|||
|
||||
$request->header->account = \mt_rand(2, 5);
|
||||
|
||||
$request->setData('id', 1);
|
||||
$request->setData('ref', 1);
|
||||
$request->setData('title', 'Test note title');
|
||||
$request->setData('plain', 'Test content text');
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user