From 47e5ddb4ba47655dbe9b03f9ca0913e841540dd1 Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Fri, 19 May 2023 02:33:03 +0000 Subject: [PATCH] init --- Admin/Install/Navigation.install.json | 33 ++++++++++ Admin/Install/Navigation.php | 43 +++++++++++++ Admin/Installer.php | 36 +++++++++++ Admin/Routes/Web/Api.php | 31 +++++++++ Admin/Routes/Web/Backend.php | 64 +++++++++++++++++++ Admin/Status.php | 36 +++++++++++ Admin/Uninstaller.php | 36 +++++++++++ Admin/Updater.php | 36 +++++++++++ Controller/ApiController.php | 33 ++++++++++ Controller/BackendController.php | 33 ++++++++++ Controller/Controller.php | 77 +++++++++++++++++++++++ Models/PermissionState.php | 32 ++++++++++ README.md | 0 Theme/Backend/Lang/Navigation.en.lang.php | 18 ++++++ Theme/Backend/Lang/en.lang.php | 16 +++++ Theme/Backend/stock-analysis.tpl.php | 0 Theme/Backend/stock-counting.tpl.php | 15 +++++ info.json | 45 +++++++++++++ 18 files changed, 584 insertions(+) create mode 100644 Admin/Install/Navigation.install.json create mode 100644 Admin/Install/Navigation.php create mode 100644 Admin/Installer.php create mode 100644 Admin/Routes/Web/Api.php create mode 100644 Admin/Routes/Web/Backend.php create mode 100644 Admin/Status.php create mode 100644 Admin/Uninstaller.php create mode 100644 Admin/Updater.php create mode 100644 Controller/ApiController.php create mode 100644 Controller/BackendController.php create mode 100644 Controller/Controller.php create mode 100644 Models/PermissionState.php create mode 100644 README.md create mode 100644 Theme/Backend/Lang/Navigation.en.lang.php create mode 100644 Theme/Backend/Lang/en.lang.php create mode 100644 Theme/Backend/stock-analysis.tpl.php create mode 100644 Theme/Backend/stock-counting.tpl.php create mode 100644 info.json diff --git a/Admin/Install/Navigation.install.json b/Admin/Install/Navigation.install.json new file mode 100644 index 0000000..cb9ed59 --- /dev/null +++ b/Admin/Install/Navigation.install.json @@ -0,0 +1,33 @@ +[ + { + "id": 1006701001, + "pid": "/", + "type": 2, + "subtype": 1, + "name": "Budgeting", + "uri": "{/prefix}warehouse/stocktaking/list?{?}", + "target": "self", + "icon": null, + "order": 1, + "from": "StockTaking", + "permission": { "permission": 2, "type": null, "element": null }, + "parent": 1001301001, + "children": [ + { + "id": 1006702001, + "pid": "/warehouse/stocktaking", + "type": 3, + "subtype": 1, + "name": "Dashboard", + "uri": "{/prefix}warehouse/stocktaking/list?{?}", + "target": "self", + "icon": null, + "order": 1, + "from": "StockTaking", + "permission": { "permission": 2, "type": null, "element": null }, + "parent": 1006701001, + "children": [] + } + ] + } +] diff --git a/Admin/Install/Navigation.php b/Admin/Install/Navigation.php new file mode 100644 index 0000000..8bb5d9a --- /dev/null +++ b/Admin/Install/Navigation.php @@ -0,0 +1,43 @@ + __DIR__ . '/Navigation.install.json']); + } +} diff --git a/Admin/Installer.php b/Admin/Installer.php new file mode 100644 index 0000000..2a7ed96 --- /dev/null +++ b/Admin/Installer.php @@ -0,0 +1,36 @@ + [ + [ + 'dest' => '\Modules\StockTaking\Controller\ApiController:apiStockTakingCreate', + 'verb' => RouteVerb::PUT, + 'permission' => [ + 'module' => ApiController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], + '^.*/warehouse/stocktaking/entry$' => [ + [ + 'dest' => '\Modules\StockTaking\Controller\ApiController:apiStockTakingEntryCreate', + 'verb' => RouteVerb::SET, + 'permission' => [ + 'module' => ApiController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], +]; diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php new file mode 100644 index 0000000..56bf98e --- /dev/null +++ b/Admin/Routes/Web/Backend.php @@ -0,0 +1,64 @@ + [ + [ + 'dest' => '\Modules\StockTaking\Controller\BackendController:viewStockTakingList', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], + '^.*/warehouse/stocktaking/overview.*$' => [ + [ + 'dest' => '\Modules\StockTaking\Controller\BackendController:viewStockTakingOverview', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], + '^.*/warehouse/stocktaking/area.*$' => [ + [ + 'dest' => '\Modules\StockTaking\Controller\BackendController:viewStockTakingArea', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], + '^.*/warehouse/stocktaking/entry.*$' => [ + [ + 'dest' => '\Modules\StockTaking\Controller\BackendController:viewStockTakingEntry', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], + '^.*/warehouse/stocktaking/stats.*$' => [ + [ + 'dest' => '\Modules\StockTaking\Controller\BackendController:viewStockTakingStats', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::STOCK_TAKING_ADMINISTRATION, + ], + ], + ], +]; diff --git a/Admin/Status.php b/Admin/Status.php new file mode 100644 index 0000000..a92c9ae --- /dev/null +++ b/Admin/Status.php @@ -0,0 +1,36 @@ + [ + 'Budgeting' => 'Budgeting', + 'Dashboard' => 'Dashboard', +]]; diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php new file mode 100644 index 0000000..57024f5 --- /dev/null +++ b/Theme/Backend/Lang/en.lang.php @@ -0,0 +1,16 @@ + [ +]]; diff --git a/Theme/Backend/stock-analysis.tpl.php b/Theme/Backend/stock-analysis.tpl.php new file mode 100644 index 0000000..e69de29 diff --git a/Theme/Backend/stock-counting.tpl.php b/Theme/Backend/stock-counting.tpl.php new file mode 100644 index 0000000..ab666ab --- /dev/null +++ b/Theme/Backend/stock-counting.tpl.php @@ -0,0 +1,15 @@ +getData('nav')->render(); diff --git a/info.json b/info.json new file mode 100644 index 0000000..19f4594 --- /dev/null +++ b/info.json @@ -0,0 +1,45 @@ +{ + "name": { + "id": 1006700000, + "internal": "StockTaking", + "external": "Stock Taking" + }, + "category": "Finance", + "version": "1.0.0", + "requirements": { + "phpOMS": "1.0.0", + "phpOMS-db": "1.0.0" + }, + "creator": { + "name": "Jingga", + "website": "jingga.app" + }, + "description": "Stock Taking module.", + "directory": "StockTaking", + "dependencies": { + "Controlling": "*" + }, + "providing": { + "Navigation": "*" + }, + "load": [ + { + "pid": [ + "/warehouse/stocktaking" + ], + "type": 4, + "for": 0, + "from": "StockTaking", + "file": "StockTaking" + }, + { + "pid": [ + "/" + ], + "type": 5, + "from": "StockTaking", + "for": "Navigation", + "file": "Navigation" + } + ] +}