diff --git a/Admin/Install/Admin.install.json b/Admin/Install/Admin.install.json index 043bcc5..f8d19f3 100644 --- a/Admin/Install/Admin.install.json +++ b/Admin/Install/Admin.install.json @@ -3,7 +3,7 @@ "description": "Default item segmentation (segment, section, sales group, product group)", "type": "setting", "name": "1004800001", - "content": "[\"segment\":1, \"section\":1, \"sales_group\":1, \"product_group\":1]", + "content": "{\"segment\":1, \"section\":1, \"sales_group\":1, \"product_group\":1}", "pattern": "", "module": "ItemManagement" } diff --git a/Admin/Install/Admin.php b/Admin/Install/Admin.php index d624cda..4951236 100644 --- a/Admin/Install/Admin.php +++ b/Admin/Install/Admin.php @@ -38,6 +38,10 @@ class Admin */ public static function install(ApplicationAbstract $app, string $path) : void { - \Modules\Admin\Admin\Installer::installExternal($app, ['path' => __DIR__ . '/Admin.install.json']); + // We are creating default items in the ItemManagement installer. + // This requires that these settings are already available + // However, this install script runs AFTER the primary installer runs. + // This causes problems for the item installation and is therefore moved to the "Installer". + // \Modules\Admin\Admin\Installer::installExternal($app, ['path' => __DIR__ . '/Admin.install.json']); } } diff --git a/Admin/Install/Navigation.install.json b/Admin/Install/Navigation.install.json index 3da25d6..0ece2c3 100755 --- a/Admin/Install/Navigation.install.json +++ b/Admin/Install/Navigation.install.json @@ -120,6 +120,21 @@ "children": [] } ] + }, + { + "id": 1004804001, + "pid": "/", + "type": 2, + "subtype": 1, + "name": "Materials", + "uri": "{/base}/item/material/list?{?}", + "target": "self", + "icon": null, + "order": 5, + "from": "ItemManagement", + "permission": { "permission": 2, "category": null, "element": null }, + "parent": 1004801001, + "children": [] } ] }, diff --git a/Admin/Install/attributes.json b/Admin/Install/attributes.json index b11e76a..5a58d0c 100755 --- a/Admin/Install/attributes.json +++ b/Admin/Install/attributes.json @@ -1,4 +1,269 @@ [ + { + "name": "primary_supplier", + "l11n": { + "en": "Primary Supplier", + "de": "Hauptlieferant" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "lead_time", + "l11n": { + "en": "Lead time", + "de": "Lieferzeit" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "qc_time", + "l11n": { + "en": "QC time", + "de": "QC Zeit" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "maximum_stock_quantity", + "l11n": { + "en": "Maximum stock quantity", + "de": "Maximale Lagermenge" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "minimum_stock_quantity", + "l11n": { + "en": "Minimum stock quantity", + "de": "Minimale Lagermenge" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "maximum_order_interval", + "l11n": { + "en": "Maximum order interval", + "de": "Maximale Bestellhäufigkeit" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "minimum_order_quantity", + "l11n": { + "en": "MOQ", + "de": "Mindestbestellmenge" + }, + "value_type": 1, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [] + }, + { + "name": "order_suggestion_type", + "l11n": { + "en": "Order suggestion type", + "de": "Bestellvorschlags Art" + }, + "value_type": 1, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": 4, + "values": [ + { + "value": 1, + "l11n": { + "en": "Available", + "de": "Verfügbar" + } + }, + { + "value": 2, + "l11n": { + "en": "Historic", + "de": "Historisch" + } + }, + { + "value": 4, + "l11n": { + "en": "Trend", + "de": "Trend" + } + } + ] + }, + { + "name": "order_suggestion_optimization_type", + "l11n": { + "en": "Order optimization type", + "de": "Bestelloptimierung" + }, + "value_type": 1, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": 3, + "values": [ + { + "value": 1, + "l11n": { + "en": "Price", + "de": "Preis" + } + }, + { + "value": 2, + "l11n": { + "en": "Just in time", + "de": "Just in time" + } + }, + { + "value": 3, + "l11n": { + "en": "Availability", + "de": "Verfügbarkeit" + } + } + ] + }, + { + "name": "order_suggestion_history_duration", + "l11n": { + "en": "Order suggestion historic data", + "de": "Historische Bestelldaten" + }, + "value_type": 1, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": 36, + "values": [ + {"value": 1},{"value": 2},{"value": 3},{"value": 4},{"value": 5},{"value": 6}, + {"value": 7},{"value": 8},{"value": 9},{"value": 10},{"value": 11},{"value": 12}, + {"value": 13},{"value": 14},{"value": 15},{"value": 16},{"value": 17},{"value": 18}, + {"value": 19},{"value": 20},{"value": 21},{"value": 22},{"value": 23},{"value": 24}, + {"value": 25},{"value": 26},{"value": 27},{"value": 28},{"value": 29},{"value": 30}, + {"value": 31},{"value": 32},{"value": 33},{"value": 34},{"value": 35},{"value": 36} + ] + }, + { + "name": "order_suggestion_averaging_method", + "l11n": { + "en": "Order suggestion averaging method", + "de": "Bestellvorschlag Durchschnittsmethode" + }, + "value_type": 1, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": 2, + "values": [ + { + "value": 1, + "l11n": { + "en": "Mean", + "de": "Durchschnitt" + } + }, + { + "value": 2, + "l11n": { + "en": "Median", + "de": "Median" + } + }, + { + "value": 3, + "l11n": { + "en": "Weighted mean", + "de": "Gewichtetes Mittel" + } + } + ] + }, + { + "name": "order_suggestion_comparison_duration_type", + "l11n": { + "en": "Order suggestion comparison type", + "de": "Bestellvorschlagsvergleich" + }, + "value_type": 1, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": 2, + "values": [ + { + "value": 1, + "l11n": { + "en": "Annually", + "de": "Jährlich" + } + }, + { + "value": 2, + "l11n": { + "en": "Monthly", + "de": "Monatlich" + } + }, + { + "value": 3, + "l11n": { + "en": "Weekly", + "de": "Wöchentlich" + } + }, + { + "value": 4, + "l11n": { + "en": "Monthly/Yearly", + "de": "Monatlich/Jährlich" + } + }, + { + "value": 5, + "l11n": { + "en": "Weekly/Yearly", + "de": "Wöchentlich/Jährlich" + } + } + ] + }, { "name": "shop_item", "l11n": { @@ -238,7 +503,7 @@ { "name": "purchase_tax_code", "l11n": { - "en": "Purchse tax code", + "en": "Purchase tax code", "de": "VSt. code" }, "value_type": 2, @@ -313,7 +578,7 @@ "value": "green", "l11n": { "en": "Green", - "de": "Gruen" + "de": "Grün" } }, { @@ -400,6 +665,32 @@ }, "values": [] }, + { + "name": "height", + "value_type": 2, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "l11n": { + "en": "Height", + "de": "Höhe" + }, + "values": [] + }, + { + "name": "volume", + "value_type": 2, + "is_custom_allowed": true, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "l11n": { + "en": "Volume", + "de": "Volumen" + }, + "values": [] + }, { "name": "releasedate", "value_type": 4, @@ -559,19 +850,6 @@ } ] }, - { - "name": "minimum_order", - "l11n": { - "en": "MOQ", - "de": "Mindestbestellmenge" - }, - "value_type": 1, - "is_custom_allowed": true, - "validation_pattern": "", - "is_required": false, - "default_value": "", - "values": [] - }, { "name": "dual_use", "l11n": { @@ -1046,5 +1324,54 @@ "is_required": false, "default_value": "", "values": [] + }, + { + "name": "eu_medical_device_class", + "l11n": { + "en": "EU Medical device class", + "de": "EU Medizinproduktklasse" + }, + "value_type": 2, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [ + { + "value": "I" + }, + { + "value": "IIa" + }, + { + "value": "IIb" + }, + { + "value": "III" + } + ] + }, + { + "name": "fda_medical_regulatory_class", + "l11n": { + "en": "FDA Medical regulatory class", + "de": "FDA regulatorische Klasse" + }, + "value_type": 2, + "is_custom_allowed": false, + "validation_pattern": "", + "is_required": false, + "default_value": "", + "values": [ + { + "value": "I" + }, + { + "value": "II" + }, + { + "value": "III" + } + ] } ] \ No newline at end of file diff --git a/Admin/Install/db.json b/Admin/Install/db.json index 56df95b..b60f457 100755 --- a/Admin/Install/db.json +++ b/Admin/Install/db.json @@ -38,6 +38,11 @@ "default": null, "null": true }, + "itemmgmt_item_stockidentifier": { + "name": "itemmgmt_item_stockidentifier", + "type": "TINYINT(1)", + "null": false + }, "itemmgmt_item_parent": { "name": "itemmgmt_item_parent", "type": "INT(11)", @@ -108,6 +113,158 @@ } } }, + "itemmgmt_item_container": { + "name": "itemmgmt_item_container", + "fields": { + "itemmgmt_item_container_id": { + "name": "itemmgmt_item_container_id", + "type": "INT", + "null": false, + "primary": true, + "autoincrement": true + }, + "itemmgmt_item_container_name": { + "name": "itemmgmt_item_container_name", + "type": "VARCHAR(255)", + "null": false + }, + "itemmgmt_item_container_quantity": { + "name": "itemmgmt_item_container_quantity", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_weight": { + "name": "itemmgmt_item_container_weight", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_width": { + "name": "itemmgmt_item_container_width", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_height": { + "name": "itemmgmt_item_container_height", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_length": { + "name": "itemmgmt_item_container_length", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_volume": { + "name": "itemmgmt_item_container_volume", + "type": "INT", + "null": false + }, + "itemmgmt_item_container_item": { + "name": "itemmgmt_item_container_item", + "type": "INT", + "null": false, + "foreignTable": "itemmgmt_item", + "foreignKey": "itemmgmt_item_id" + } + } + }, + "itemmgmt_material_type": { + "name": "itemmgmt_material_type", + "fields": { + "itemmgmt_material_type_id": { + "name": "itemmgmt_material_type_id", + "type": "INT", + "null": false, + "primary": true, + "autoincrement": true + }, + "itemmgmt_material_type_name": { + "name": "itemmgmt_material_type_name", + "type": "VARCHAR(255)", + "null": false, + "unique": true + } + } + }, + "itemmgmt_material_type_l11n": { + "name": "itemmgmt_material_type_l11n", + "fields": { + "itemmgmt_material_type_l11n_id": { + "name": "itemmgmt_material_type_l11n_id", + "type": "INT", + "null": false, + "primary": true, + "autoincrement": true + }, + "itemmgmt_material_type_l11n_title": { + "name": "itemmgmt_material_type_l11n_title", + "type": "VARCHAR(255)", + "null": false + }, + "itemmgmt_material_type_l11n_type": { + "name": "itemmgmt_material_type_l11n_type", + "type": "INT", + "null": false, + "foreignTable": "itemmgmt_material_type", + "foreignKey": "itemmgmt_material_type_id" + }, + "itemmgmt_material_type_l11n_language": { + "name": "itemmgmt_material_type_l11n_language", + "type": "VARCHAR(2)", + "default": null, + "null": true, + "foreignTable": "language", + "foreignKey": "language_639_1" + } + } + }, + "itemmgmt_material": { + "name": "itemmgmt_material", + "fields": { + "itemmgmt_material_id": { + "name": "itemmgmt_material_id", + "type": "INT", + "null": false, + "primary": true, + "autoincrement": true + }, + "itemmgmt_material_category": { + "description": "product, packaging", + "name": "itemmgmt_material_category", + "type": "TINYINT(1)", + "null": false + }, + "itemmgmt_material_subcategory": { + "description": "primary, secondary, tertiary, retail", + "name": "itemmgmt_material_subcategory", + "type": "INT", + "null": false + }, + "itemmgmt_material_type": { + "name": "itemmgmt_material_type", + "type": "INT", + "null": false, + "foreignTable": "itemmgmt_material_type", + "foreignKey": "itemmgmt_material_type_id" + }, + "itemmgmt_material_quantity": { + "name": "itemmgmt_material_quantity", + "type": "INT", + "null": false + }, + "itemmgmt_material_unit": { + "name": "itemmgmt_material_unit", + "type": "VARCHAR(25)", + "null": false + }, + "itemmgmt_material_item": { + "name": "itemmgmt_material_item", + "type": "INT", + "null": false, + "foreignTable": "itemmgmt_item", + "foreignKey": "itemmgmt_item_id" + } + } + }, "itemmgmt_item_l11n_type": { "name": "itemmgmt_item_l11n_type", "fields": { @@ -200,6 +357,11 @@ "type": "TINYINT(1)", "null": false }, + "itemmgmt_attr_type_repeatable": { + "name": "itemmgmt_attr_type_repeatable", + "type": "TINYINT(1)", + "null": false + }, "itemmgmt_attr_type_required": { "description": "Every item must have this attribute type if set to true.", "name": "itemmgmt_attr_type_required", diff --git a/Admin/Install/materialtypes.json b/Admin/Install/materialtypes.json new file mode 100644 index 0000000..a43610c --- /dev/null +++ b/Admin/Install/materialtypes.json @@ -0,0 +1,107 @@ +[ + { + "name": "plastic", + "l11n": { + "en": "Plastic", + "de": "Plastik" + } + }, + { + "name": "cardboard", + "l11n": { + "en": "Cardboard", + "de": "Karton" + } + }, + { + "name": "glass", + "l11n": { + "en": "Glas", + "de": "Glas" + } + }, + { + "name": "paper", + "l11n": { + "en": "Paper", + "de": "Papier" + } + }, + { + "name": "paperboard", + "l11n": { + "en": "Paperboard", + "de": "Pappe" + } + }, + { + "name": "aluminum", + "l11n": { + "en": "Aluminum", + "de": "Aluminium" + } + }, + { + "name": "tinplate", + "l11n": { + "en": "Tin plate", + "de": "Weißblech" + } + }, + { + "name": "bubble_wrap", + "l11n": { + "en": "Bubble Wrap", + "de": "Blisterfolie" + } + }, + { + "name": "foam", + "l11n": { + "en": "Foam", + "de": "Schaum" + } + }, + { + "name": "plastic_foil", + "l11n": { + "en": "Plastic foil", + "de": "Plastikfolie" + } + }, + { + "name": "plastic_pallet", + "l11n": { + "en": "Plastic pallet", + "de": "Plastikpalette" + } + }, + { + "name": "wood_pallet", + "l11n": { + "en": "Wood pallet", + "de": "Holzpalette" + } + }, + { + "name": "wood", + "l11n": { + "en": "Wood", + "de": "Holz" + } + }, + { + "name": "steel", + "l11n": { + "en": "Steel", + "de": "Stahl" + } + }, + { + "name": "composite", + "l11n": { + "en": "Composite", + "de": "Verbund" + } + } +] \ No newline at end of file diff --git a/Admin/Install/payment.json b/Admin/Install/payment.json deleted file mode 100755 index 1c2b6cf..0000000 --- a/Admin/Install/payment.json +++ /dev/null @@ -1,60 +0,0 @@ - { - "name": "payment_model", - "l11n": { - "en": "Payment Model", - "de": "Zahlungsmittel" - }, - "value_type": "string", - "is_custom_allowed": false, - "validation_pattern": "", - "is_required": false, - "default_value": "", - "values": [ - { - "value": "subscription", - "is_default": true, - "l11n": { - "en": "Subscription", - "de": "Abo" - } - }, - { - "value": "pay-per-use", - "is_default": true, - "l11n": { - "en": "Pay-Per-Use", - "de": "Einmalzahlung" - } - } - ] - }, - { - "name": "payment_interval", - "l11n": { - "en": "Payment interval", - "de": "Zahlungsintervall" - }, - "value_type": "string", - "is_custom_allowed": false, - "validation_pattern": "", - "is_required": false, - "default_value": "", - "values": [ - { - "value": "daily", - "is_default": true, - "l11n": { - "en": "daily", - "de": "taeglich" - } - }, - { - "value": "monthly", - "is_default": true, - "l11n": { - "en": "monthly", - "de": "monatlich" - } - } - ] - } \ No newline at end of file diff --git a/Admin/Installer.php b/Admin/Installer.php index e749c47..480b0c9 100755 --- a/Admin/Installer.php +++ b/Admin/Installer.php @@ -50,6 +50,8 @@ final class Installer extends InstallerAbstract { parent::install($app, $info, $cfgHandler); + \Modules\Admin\Admin\Installer::installExternal($app, ['path' => __DIR__ . '/Install/Admin.install.json']); + /* Attributes */ $fileContent = \file_get_contents(__DIR__ . '/Install/attributes.json'); if ($fileContent === false) { @@ -90,6 +92,16 @@ final class Installer extends InstallerAbstract /** @var array $items */ $items = \json_decode($fileContent, true); $itemArray = self::createItems($app, $items); + + /* Material types */ + $fileContent = \file_get_contents(__DIR__ . '/Install/materialtypes.json'); + if ($fileContent === false) { + return; + } + + /** @var array $types */ + $types = \json_decode($fileContent, true); + $materialTypeArray = self::createMaterialTypes($app, $types); } /** @@ -430,4 +442,64 @@ final class Installer extends InstallerAbstract return $itemAttrValue; } + + /** + * Install default material types + * + * @param ApplicationAbstract $app Application + * @param array $types Material type definitions + * + * @return array + * + * @since 1.0.0 + */ + private static function createMaterialTypes(ApplicationAbstract $app, array $types) : array + { + /** @var array $itemMaterialType */ + $itemMaterialType = []; + + /** @var \Modules\ItemManagement\Controller\ApiController $module */ + $module = $app->moduleManager->getModuleInstance('ItemManagement', 'Api'); + + /** @var array $type */ + foreach ($types as $type) { + $response = new HttpResponse(); + $request = new HttpRequest(new HttpUri('')); + + $request->header->account = 1; + $request->setData('name', $type['name'] ?? ''); + $request->setData('title', \reset($type['l11n'])); + + $module->apiItemMaterialTypeCreate($request, $response); + + $responseData = $response->getData(''); + if (!\is_array($responseData)) { + continue; + } + + $itemMaterialType[$type['name']] = \is_array($responseData['response']) + ? $responseData['response'] + : $responseData['response']->toArray(); + + $isFirst = true; + foreach ($type['l11n'] as $language => $l11n) { + if ($isFirst) { + $isFirst = false; + continue; + } + + $response = new HttpResponse(); + $request = new HttpRequest(new HttpUri('')); + + $request->header->account = 1; + $request->setData('title', $l11n); + $request->setData('language', $language); + $request->setData('type', $itemMaterialType[$type['name']]['id']); + + $module->apiItemMaterialTypeL11nCreate($request, $response); + } + } + + return $itemMaterialType; + } } diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index d9f7f08..1e8d147 100755 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -197,4 +197,26 @@ return [ ], ], ], + '^.*/item/material/list\?.*$' => [ + [ + 'dest' => '\Modules\ItemManagement\Controller\BackendController:viewItemMaterialList', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::NAME, + 'type' => PermissionType::READ, + 'state' => PermissionCategory::MATERIAL, + ], + ], + ], + '^.*/item/material/view\?.*$' => [ + [ + 'dest' => '\Modules\ItemManagement\Controller\BackendController:viewItemMaterialView', + 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => BackendController::NAME, + 'type' => PermissionType::READ, + 'state' => PermissionCategory::MATERIAL, + ], + ], + ], ]; diff --git a/Controller/ApiAttributeController.php b/Controller/ApiAttributeController.php index 1e9dc98..4d46eba 100644 --- a/Controller/ApiAttributeController.php +++ b/Controller/ApiAttributeController.php @@ -61,7 +61,23 @@ final class ApiAttributeController extends Controller return; } - $type = ItemAttributeTypeMapper::get()->with('defaults')->where('id', (int) $request->getData('type'))->execute(); + $type = ItemAttributeTypeMapper::get()->with('defaults')->where('id', (int) $request->getData('type'))->execute(); + + if (!$type->repeatable) { + $attr = ItemAttributeMapper::count() + ->with('type') + ->where('type/id', (int) $request->getData('type')) + ->where('ref', (int) $request->getData('ref')) + ->execute(); + + if ($attr > 0) { + $response->header->status = RequestStatusCode::R_409; + $this->createInvalidCreateResponse($request, $response, $val); + + return; + } + } + $attribute = $this->createAttributeFromRequest($request, $type); $this->createModel($request->header->account, $attribute, ItemAttributeMapper::class, 'attribute', $request->getOrigin()); $this->createStandardCreateResponse($request, $response, $attribute); diff --git a/Controller/ApiController.php b/Controller/ApiController.php index 23d1d47..2549c78 100755 --- a/Controller/ApiController.php +++ b/Controller/ApiController.php @@ -25,8 +25,11 @@ use Modules\ItemManagement\Models\ItemPriceStatus; use Modules\ItemManagement\Models\ItemRelationType; use Modules\ItemManagement\Models\ItemRelationTypeMapper; use Modules\ItemManagement\Models\ItemStatus; +use Modules\ItemManagement\Models\MaterialTypeL11nMapper; +use Modules\ItemManagement\Models\MaterialTypeMapper; use Modules\ItemManagement\Models\PermissionCategory; use Modules\ItemManagement\Models\SettingsEnum as ItemSettingsEnum; +use Modules\ItemManagement\Models\StockIdentifierType; use Modules\Media\Models\Collection; use Modules\Media\Models\CollectionMapper; use Modules\Media\Models\MediaMapper; @@ -36,6 +39,7 @@ use phpOMS\Account\PermissionType; use phpOMS\Localization\BaseStringL11n; use phpOMS\Localization\BaseStringL11nType; use phpOMS\Localization\ISO4217CharEnum; +use phpOMS\Localization\ISO639x1Enum; use phpOMS\Localization\NullBaseStringL11nType; use phpOMS\Message\Http\HttpRequest; use phpOMS\Message\Http\HttpResponse; @@ -170,7 +174,7 @@ final class ApiController extends Controller $internalRequest->header->account = $request->header->account; $internalRequest->setData('name', 'base'); $internalRequest->setData('item', $item->id); - $internalRequest->setData('price', $request->getDataInt('salesprice') ?? 0); + $internalRequest->setData('price_new', $request->getDataInt('salesprice') ?? 0); $billing->apiPriceCreate($internalRequest, $internalResponse); } @@ -228,12 +232,10 @@ final class ApiController extends Controller private function createItemSegmentation(RequestAbstract $request, ResponseAbstract $response, Item $item) : void { /** @var \Model\Setting $settings */ - $settings = $this->app->appSettings->get(null, [ - ItemSettingsEnum::DEFAULT_SEGMENTATION, - ]); + $settings = $this->app->appSettings->get(null, ItemSettingsEnum::DEFAULT_SEGMENTATION); $segmentation = \json_decode($settings->content, true); - if ($segmentation === false) { + if ($segmentation === false || $segmentation === null) { return; } @@ -290,6 +292,7 @@ final class ApiController extends Controller { $item = new Item(); $item->number = $request->getDataString('number') ?? ''; + $item->stockIdentifier = $request->getDataInt('stockidentifier') ?? StockIdentifierType::NONE; $item->salesPrice = new FloatInt($request->getDataInt('salesprice') ?? 0); $item->purchasePrice = new FloatInt($request->getDataInt('purchaseprice') ?? 0); $item->info = $request->getDataString('info') ?? ''; @@ -385,7 +388,7 @@ final class ApiController extends Controller private function validateItemPriceCreate(RequestAbstract $request) : array { $val = []; - if (($val['price'] = !$request->hasData('price')) + if (($val['price_new'] = !$request->hasData('price_new')) || ($val['currency'] = !ISO4217CharEnum::isValidValue($request->getData('currency'))) ) { return $val; @@ -889,4 +892,138 @@ final class ApiController extends Controller $this->app->moduleManager->get('Editor', 'Api')->apiEditorDelete($request, $response, $data); } + + /** + * Api method to create item material type + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiItemMaterialTypeCreate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateMaterialTypeCreate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidCreateResponse($request, $response, $val); + + return; + } + + $materialType = $this->createMaterialTypeFromRequest($request); + $this->createModel($request->header->account, $materialType, MaterialTypeMapper::class, 'material_type', $request->getOrigin()); + $this->createStandardCreateResponse($request, $response, $materialType); + } + + /** + * Validate material create request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @since 1.0.0 + */ + private function validateMaterialTypeCreate(RequestAbstract $request) : array + { + $val = []; + if (($val['title'] = !$request->hasData('title')) + || ($val['name'] = !$request->hasData('name')) + ) { + return $val; + } + + return []; + } + + /** + * Method to create material from request. + * + * @param RequestAbstract $request Request + * + * @return BaseStringL11nType + * + * @since 1.0.0 + */ + private function createMaterialTypeFromRequest(RequestAbstract $request) : BaseStringL11nType + { + $materialType = new BaseStringL11nType($request->getDataString('name') ?? ''); + $materialType->setL11n($request->getDataString('title') ?? '', $request->getDataString('language') ?? ISO639x1Enum::_EN); + + return $materialType; + } + + /** + * Api method to create item material l11n + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return void + * + * @api + * + * @since 1.0.0 + */ + public function apiItemMaterialTypeL11nCreate(RequestAbstract $request, ResponseAbstract $response, array $data = []) : void + { + if (!empty($val = $this->validateMaterialTypeL11nCreate($request))) { + $response->header->status = RequestStatusCode::R_400; + $this->createInvalidCreateResponse($request, $response, $val); + + return; + } + + $materialL11n = $this->createMaterialTypeL11nFromRequest($request); + $this->createModel($request->header->account, $materialL11n, MaterialTypeL11nMapper::class, 'material_type_l11n', $request->getOrigin()); + $this->createStandardCreateResponse($request, $response, $materialL11n); + } + + /** + * Validate material l11n create request + * + * @param RequestAbstract $request Request + * + * @return array + * + * @since 1.0.0 + */ + private function validateMaterialTypeL11nCreate(RequestAbstract $request) : array + { + $val = []; + if (($val['title'] = !$request->hasData('title')) + || ($val['type'] = !$request->hasData('type')) + ) { + return $val; + } + + return []; + } + + /** + * Method to create material l11n from request. + * + * @param RequestAbstract $request Request + * + * @return BaseStringL11n + * + * @since 1.0.0 + */ + private function createMaterialTypeL11nFromRequest(RequestAbstract $request) : BaseStringL11n + { + $materialL11n = new BaseStringL11n(); + $materialL11n->ref = $request->getDataInt('type') ?? 0; + $materialL11n->setLanguage( + $request->getDataString('language') ?? $request->header->l11n->language + ); + $materialL11n->content = $request->getDataString('title') ?? ''; + + return $materialL11n; + } } diff --git a/Controller/BackendController.php b/Controller/BackendController.php index 3ee9594..6a69d0d 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -17,16 +17,19 @@ namespace Modules\ItemManagement\Controller; use Modules\Admin\Models\LocalizationMapper; use Modules\Admin\Models\SettingsEnum; use Modules\Auditor\Models\AuditMapper; -use Modules\Billing\Models\BillTransferType; use Modules\Billing\Models\Price\PriceMapper; use Modules\Billing\Models\Price\PriceType; -use Modules\Billing\Models\SalesBillMapper; +use Modules\ClientManagement\Models\Attribute\ClientAttributeTypeMapper; +use Modules\ClientManagement\Models\Attribute\ClientAttributeValueL11nMapper; use Modules\ItemManagement\Models\Attribute\ItemAttributeTypeL11nMapper; use Modules\ItemManagement\Models\Attribute\ItemAttributeTypeMapper; +use Modules\ItemManagement\Models\Attribute\ItemAttributeValueL11nMapper; use Modules\ItemManagement\Models\Attribute\ItemAttributeValueMapper; use Modules\ItemManagement\Models\ItemL11nMapper; use Modules\ItemManagement\Models\ItemL11nTypeMapper; use Modules\ItemManagement\Models\ItemMapper; +use Modules\ItemManagement\Models\MaterialTypeL11nMapper; +use Modules\ItemManagement\Models\MaterialTypeMapper; use Modules\Media\Models\MediaMapper; use Modules\Media\Models\MediaTypeMapper; use Modules\Organization\Models\Attribute\UnitAttributeMapper; @@ -35,12 +38,11 @@ use phpOMS\Asset\AssetType; use phpOMS\Contract\RenderableInterface; use phpOMS\DataStorage\Database\Query\Builder; use phpOMS\DataStorage\Database\Query\OrderType; +use phpOMS\DataStorage\Database\Query\Where; use phpOMS\Localization\ISO3166CharEnum; use phpOMS\Localization\ISO3166NameEnum; -use phpOMS\Localization\Money; use phpOMS\Message\RequestAbstract; use phpOMS\Message\ResponseAbstract; -use phpOMS\Stdlib\Base\SmartDateTime; use phpOMS\Utils\StringUtils; use phpOMS\Views\View; @@ -373,19 +375,17 @@ final class BackendController extends Controller $item = ItemMapper::get() ->with('l11n') ->with('l11n/type') - ->with('files') + ->with('files')->limit(5, 'files')->sort('files/id', OrderType::DESC) + ->with('notes')->limit(5, 'notes')->sort('notes/id', OrderType::DESC) ->with('files/types') ->with('attributes') ->with('attributes/type') ->with('attributes/type/l11n') ->with('attributes/value') - ->with('notes') ->where('id', (int) $request->getData('id')) ->where('l11n/language', $response->header->l11n->language) ->where('l11n/type/title', ['name1', 'name2', 'name3'], 'IN') ->where('attributes/type/l11n/language', $response->header->l11n->language) - ->limit(5, 'files')->sort('files/id', OrderType::DESC) - ->limit(5, 'notes')->sort('notes/id', OrderType::DESC) ->execute(); $view->data['item'] = $item; @@ -429,12 +429,12 @@ final class BackendController extends Controller // @todo this one should already be loaded in the backend application no????????? /** @var \Model\Setting $settings */ - $settings = $this->app->appSettings->get(null, [ - SettingsEnum::DEFAULT_LOCALIZATION, - ]); + $settings = $this->app->appSettings->get(null, SettingsEnum::DEFAULT_LOCALIZATION); + + $view->data['default_localization'] = LocalizationMapper::get()->where('id', (int) $settings->id)->execute(); $view->data['attributeView'] = new \Modules\Attribute\Theme\Backend\Components\AttributeView($this->app->l11nManager, $request, $response); - $view->data['attributeView']->data['defaultlocalization'] = LocalizationMapper::get()->where('id', (int) $settings->id)->execute(); + $view->data['attributeView']->data['default_localization'] = $view->data['default_localization']; $view->data['l11nView'] = new \Web\Backend\Views\L11nView($this->app->l11nManager, $request, $response); @@ -475,6 +475,50 @@ final class BackendController extends Controller $view->data['prices'] = $prices; + /** @var \Modules\Billing\Models\Price\Price[] $prices */ + $prices = PriceMapper::getAll() + ->where('item', $item->id) + ->where('type', PriceType::PURCHASE) + ->execute(); + + $view->data['purchase_prices'] = $prices; + + $tmp = ItemAttributeTypeMapper::getAll() + ->with('defaults') + ->with('defaults/l11n') + ->where('name', [ + 'segment', 'section', 'sales_group', 'product_group', 'product_type', + 'sales_tax_code', 'purchase_tax_code', + //'has_inventory', 'inventory_identifier', 'stocktaking_type', + ], 'IN') + ->where('defaults/l11n', (new Where($this->app->dbPool->get())) + ->where(ItemAttributeValueL11nMapper::getColumnByMember('ref'), '=', null) + ->orWhere(ItemAttributeValueL11nMapper::getColumnByMember('language'), '=', $response->header->l11n->language)) + ->execute(); + + $defaultAttributeTypes = []; + foreach ($tmp as $t) { + $defaultAttributeTypes[$t->name] = $t; + } + + $view->data['defaultAttributeTypes'] = $defaultAttributeTypes; + + $tmp = ClientAttributeTypeMapper::getAll() + ->with('defaults') + ->with('defaults/l11n') + ->where('name', ['segment', 'section', 'client_group', 'client_type'], 'IN') + ->where('defaults/l11n', (new Where($this->app->dbPool->get())) + ->where(ClientAttributeValueL11nMapper::getColumnByMember('ref'), '=', null) + ->orWhere(ClientAttributeValueL11nMapper::getColumnByMember('language'), '=', $response->header->l11n->language)) + ->execute(); + + $clientSegmentationTypes = []; + foreach ($tmp as $t) { + $clientSegmentationTypes[$t->name] = $t; + } + + $view->data['clientSegmentationTypes'] = $clientSegmentationTypes; + /** @var \Modules\Auditor\Models\Audit[] $audits */ $audits = AuditMapper::getAll() ->where('type', StringUtils::intHash(ItemMapper::class)) @@ -727,4 +771,66 @@ final class BackendController extends Controller return $view; } + + /** + * Routing end-point for application behavior. + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return RenderableInterface + * + * @since 1.0.0 + * @codeCoverageIgnore + */ + public function viewMaterialList(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface + { + $view = new View($this->app->l11nManager, $request, $response); + $view->setTemplate('/Modules/ItemManagement/Theme/Backend/material-type-list'); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1002901101, $request, $response); + + $view->data['types'] = MaterialTypeMapper::getAll() + ->with('l11n') + ->where('l11n/language', $response->header->l11n->language) + ->execute(); + + return $view; + } + + /** + * Routing end-point for application behavior. + * + * @param RequestAbstract $request Request + * @param ResponseAbstract $response Response + * @param array $data Generic data + * + * @return RenderableInterface + * + * @since 1.0.0 + * @codeCoverageIgnore + */ + public function viewMaterialView(RequestAbstract $request, ResponseAbstract $response, array $data = []) : RenderableInterface + { + $view = new View($this->app->l11nManager, $request, $response); + $view->setTemplate('/Modules/ItemManagement/Theme/Backend/material-view'); + $view->data['nav'] = $this->app->moduleManager->get('Navigation')->createNavigationMid(1002901101, $request, $response); + + $view->data['type'] = MaterialTypeMapper::get() + ->with('l11n') + ->where('id', (int) $request->getData('id')) + ->where('l11n/language', $response->header->l11n->language) + ->execute(); + + $view->data['l11nView'] = new \Web\Backend\Views\L11nView($this->app->l11nManager, $request, $response); + + /** @var \phpOMS\Localization\BaseStringL11n[] $l11nValues */ + $l11nValues = MaterialTypeL11nMapper::getAll() + ->where('ref', $view->data['type']->id) + ->execute(); + + $view->data['l11nValues'] = $l11nValues; + + return $view; + } } diff --git a/Models/Attribute/ItemAttributeTypeMapper.php b/Models/Attribute/ItemAttributeTypeMapper.php index 1c25bc4..fca1405 100644 --- a/Models/Attribute/ItemAttributeTypeMapper.php +++ b/Models/Attribute/ItemAttributeTypeMapper.php @@ -42,6 +42,7 @@ final class ItemAttributeTypeMapper extends DataMapperFactory 'itemmgmt_attr_type_datatype' => ['name' => 'itemmgmt_attr_type_datatype', 'type' => 'int', 'internal' => 'datatype'], 'itemmgmt_attr_type_fields' => ['name' => 'itemmgmt_attr_type_fields', 'type' => 'int', 'internal' => 'fields'], 'itemmgmt_attr_type_custom' => ['name' => 'itemmgmt_attr_type_custom', 'type' => 'bool', 'internal' => 'custom'], + 'itemmgmt_attr_type_repeatable' => ['name' => 'itemmgmt_attr_type_repeatable', 'type' => 'bool', 'internal' => 'repeatable'], 'itemmgmt_attr_type_pattern' => ['name' => 'itemmgmt_attr_type_pattern', 'type' => 'string', 'internal' => 'validationPattern'], 'itemmgmt_attr_type_required' => ['name' => 'itemmgmt_attr_type_required', 'type' => 'bool', 'internal' => 'isRequired'], ]; diff --git a/Models/Container.php b/Models/Container.php new file mode 100644 index 0000000..a82495c --- /dev/null +++ b/Models/Container.php @@ -0,0 +1,68 @@ + $this->id, + ]; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return $this->toArray(); + } +} diff --git a/Models/ContainerMapper.php b/Models/ContainerMapper.php new file mode 100644 index 0000000..1668281 --- /dev/null +++ b/Models/ContainerMapper.php @@ -0,0 +1,65 @@ + + */ +final class ContainerMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'itemmgmt_item_container_id' => ['name' => 'itemmgmt_item_container_id', 'type' => 'int', 'internal' => 'id'], + 'itemmgmt_item_container_name' => ['name' => 'itemmgmt_item_container_name', 'type' => 'string', 'internal' => 'name', 'autocomplete' => true], + 'itemmgmt_item_container_quantity' => ['name' => 'itemmgmt_item_container_quantity', 'type' => 'int', 'internal' => 'quantity'], + 'itemmgmt_item_container_weight' => ['name' => 'itemmgmt_item_container_weight', 'type' => 'int', 'internal' => 'weight'], + 'itemmgmt_item_container_width' => ['name' => 'itemmgmt_item_container_width', 'type' => 'int', 'internal' => 'width'], + 'itemmgmt_item_container_height' => ['name' => 'itemmgmt_item_container_height', 'type' => 'int', 'internal' => 'height'], + 'itemmgmt_item_container_length' => ['name' => 'itemmgmt_item_container_length', 'type' => 'int', 'internal' => 'length'], + 'itemmgmt_item_container_volume' => ['name' => 'itemmgmt_item_container_volume', 'type' => 'int', 'internal' => 'volume'], + 'itemmgmt_item_container_item' => ['name' => 'itemmgmt_item_container_item', 'type' => 'int', 'internal' => 'item'], + ]; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'itemmgmt_item_container'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'itemmgmt_item_container_id'; +} diff --git a/Models/InventoryType.php b/Models/InventoryType.php new file mode 100644 index 0000000..08d06b7 --- /dev/null +++ b/Models/InventoryType.php @@ -0,0 +1,38 @@ + ['name' => 'itemmgmt_item_id', 'type' => 'int', 'internal' => 'id'], 'itemmgmt_item_no' => ['name' => 'itemmgmt_item_no', 'type' => 'string', 'internal' => 'number', 'autocomplete' => true], 'itemmgmt_item_status' => ['name' => 'itemmgmt_item_status', 'type' => 'int', 'internal' => 'status'], + 'itemmgmt_item_stockidentifier' => ['name' => 'itemmgmt_item_stockidentifier', 'type' => 'int', 'internal' => 'stockIdentifier'], 'itemmgmt_item_info' => ['name' => 'itemmgmt_item_info', 'type' => 'string', 'internal' => 'info'], 'itemmgmt_item_salesprice' => ['name' => 'itemmgmt_item_salesprice', 'type' => 'Serializable', 'internal' => 'salesPrice'], 'itemmgmt_item_purchaseprice' => ['name' => 'itemmgmt_item_purchaseprice', 'type' => 'Serializable', 'internal' => 'purchasePrice'], @@ -102,6 +101,12 @@ final class ItemMapper extends DataMapperFactory 'self' => 'itemmgmt_item_attr_item', 'external' => null, ], + 'container' => [ + 'mapper' => ContainerMapper::class, + 'table' => 'itemmgmt_item_container', + 'self' => 'itemmgmt_item_container_item', + 'external' => null, + ], ]; /** diff --git a/Models/Material.php b/Models/Material.php new file mode 100644 index 0000000..a5753ab --- /dev/null +++ b/Models/Material.php @@ -0,0 +1,72 @@ +type = new NullBaseStringL11nType(); + } + + /** + * {@inheritdoc} + */ + public function toArray() : array + { + return [ + 'id' => $this->id, + ]; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return $this->toArray(); + } +} diff --git a/Models/MaterialCategory.php b/Models/MaterialCategory.php new file mode 100644 index 0000000..ab8035a --- /dev/null +++ b/Models/MaterialCategory.php @@ -0,0 +1,32 @@ + + */ +final class MaterialMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'itemmgmt_material_id' => ['name' => 'itemmgmt_material_id', 'type' => 'int', 'internal' => 'id'], + 'itemmgmt_material_category' => ['name' => 'itemmgmt_material_category', 'type' => 'int', 'internal' => 'category'], + 'itemmgmt_material_subcategory' => ['name' => 'itemmgmt_material_subcategory', 'type' => 'int', 'internal' => 'subcategory'], + 'itemmgmt_material_type' => ['name' => 'itemmgmt_material_type', 'type' => 'int', 'internal' => 'type'], + 'itemmgmt_material_unit' => ['name' => 'itemmgmt_material_unit', 'type' => 'int', 'internal' => 'unit'], + 'itemmgmt_material_item' => ['name' => 'itemmgmt_material_item', 'type' => 'int', 'internal' => 'item'], + ]; + + /** + * Has one relation. + * + * @var array + * @since 1.0.0 + */ + public const BELONGS_TO = [ + 'type' => [ + 'mapper' => MaterialTypeMapper::class, + 'external' => 'itemmgmt_material_type', + ], + 'item' => [ + 'mapper' => ItemMapper::class, + 'external' => 'itemmgmt_material_item', + ], + ]; + + /** + * Model to use by the mapper. + * + * @var class-string + * @since 1.0.0 + */ + public const MODEL = Material::class; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'itemmgmt_material'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'itemmgmt_material_id'; +} diff --git a/Models/MaterialSubcategory.php b/Models/MaterialSubcategory.php new file mode 100644 index 0000000..eafafd6 --- /dev/null +++ b/Models/MaterialSubcategory.php @@ -0,0 +1,46 @@ + + */ +final class MaterialTypeL11nMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'itemmgmt_material_type_l11n_id' => ['name' => 'itemmgmt_material_type_l11n_id', 'type' => 'int', 'internal' => 'id'], + 'itemmgmt_material_type_l11n_title' => ['name' => 'itemmgmt_material_type_l11n_title', 'type' => 'string', 'internal' => 'content', 'autocomplete' => true], + 'itemmgmt_material_type_l11n_type' => ['name' => 'itemmgmt_material_type_l11n_type', 'type' => 'int', 'internal' => 'ref'], + 'itemmgmt_material_type_l11n_language' => ['name' => 'itemmgmt_material_type_l11n_language', 'type' => 'string', 'internal' => 'language'], + ]; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'itemmgmt_material_type_l11n'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'itemmgmt_material_type_l11n_id'; + + /** + * Model to use by the mapper. + * + * @var class-string + * @since 1.0.0 + */ + public const MODEL = BaseStringL11n::class; +} diff --git a/Models/MaterialTypeMapper.php b/Models/MaterialTypeMapper.php new file mode 100644 index 0000000..cf7ccfc --- /dev/null +++ b/Models/MaterialTypeMapper.php @@ -0,0 +1,83 @@ + + */ +final class MaterialTypeMapper extends DataMapperFactory +{ + /** + * Columns. + * + * @var array + * @since 1.0.0 + */ + public const COLUMNS = [ + 'itemmgmt_material_type_id' => ['name' => 'itemmgmt_material_type_id', 'type' => 'int', 'internal' => 'id'], + 'itemmgmt_material_type_name' => ['name' => 'itemmgmt_material_type_name', 'type' => 'string', 'internal' => 'title', 'autocomplete' => true], + ]; + + /** + * Has many relation. + * + * @var array + * @since 1.0.0 + */ + public const HAS_MANY = [ + 'l11n' => [ + 'mapper' => MaterialTypeL11nMapper::class, + 'table' => 'itemmgmt_material_type_l11n', + 'self' => 'itemmgmt_material_type_l11n_type', + 'column' => 'content', + 'external' => null, + ] + ]; + + /** + * Model to use by the mapper. + * + * @var class-string + * @since 1.0.0 + */ + public const MODEL = BaseStringL11nType::class; + + /** + * Primary table. + * + * @var string + * @since 1.0.0 + */ + public const TABLE = 'itemmgmt_material_type'; + + /** + * Primary field name. + * + * @var string + * @since 1.0.0 + */ + public const PRIMARYFIELD = 'itemmgmt_material_type_id'; +} diff --git a/Models/NullMaterial.php b/Models/NullMaterial.php new file mode 100644 index 0000000..ce04471 --- /dev/null +++ b/Models/NullMaterial.php @@ -0,0 +1,46 @@ +id = $id; + } + + /** + * {@inheritdoc} + */ + public function jsonSerialize() : mixed + { + return ['id' => $this->id]; + } +} diff --git a/Models/PermissionCategory.php b/Models/PermissionCategory.php index 72c134f..96882bf 100755 --- a/Models/PermissionCategory.php +++ b/Models/PermissionCategory.php @@ -34,5 +34,7 @@ abstract class PermissionCategory extends Enum public const ATTRIBUTE = 4; - public const NOTE = 4; + public const NOTE = 5; + + public const MATERIAL = 6; } diff --git a/Models/StockIdentifierType.php b/Models/StockIdentifierType.php new file mode 100644 index 0000000..f3b4421 --- /dev/null +++ b/Models/StockIdentifierType.php @@ -0,0 +1,36 @@ + [ 'List' => 'Liste', 'Types' => 'Arten', 'Values' => 'Werte', + 'Materials' => 'Materialien', ]]; diff --git a/Theme/Backend/Lang/Navigation.en.lang.php b/Theme/Backend/Lang/Navigation.en.lang.php index 5e8f1d5..c821a62 100755 --- a/Theme/Backend/Lang/Navigation.en.lang.php +++ b/Theme/Backend/Lang/Navigation.en.lang.php @@ -23,4 +23,5 @@ return ['Navigation' => [ 'List' => 'List', 'Types' => 'Types', 'Values' => 'Values', + 'Materials' => 'Materials', ]]; diff --git a/Theme/Backend/Lang/ar.lang.php b/Theme/Backend/Lang/ar.lang.php index 10d5101..5fb2fc3 100755 --- a/Theme/Backend/Lang/ar.lang.php +++ b/Theme/Backend/Lang/ar.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'محاسبة', 'Address' => '', - 'All' => 'الجميع', - 'Article' => 'مقالة - سلعة', 'Articlegroup' => 'articlegroup.', 'Attribute' => 'يصف', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'دولة', 'Created' => 'خلقت', 'CreatedAt' => 'خلقت', - 'Customer' => 'عميل', 'CustomerGroup' => 'مجموعة العملاء', 'CustomsID' => 'المعرف الجمركي', 'Date' => 'تاريخ', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'بطاقة تعريف', 'ILV' => 'ilv.', 'Info' => 'معلومات', - 'IsActive' => 'نشيط؟', - 'Issues' => '', 'Item' => 'العنصر', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'كثيرا', 'MRR' => 'مرر', 'MTDSales' => 'مبيعات MTD', - 'Machines' => '', 'Makespan' => 'makespan.', 'Margin' => 'هامش', 'Master' => 'رئيس', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'اسم 1.', 'Name2' => 'اسم 2.', 'Name3' => 'اسم 3.', - 'Name4' => 'اسم 4.', - 'Name5' => 'اسم 5.', 'Net' => 'الوزن الصافي', 'NetWeight' => 'الوزن الصافي', 'None' => 'لا أحد', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'عدد', 'Ordered' => 'أمر', 'Packaging' => 'التعبئة والتغليف', - 'PartsList' => '', 'Price' => 'السعر', 'PriceChange' => 'تغيير الأسعار', 'PriceUnit' => 'وحدة السعر', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'productgroup.', 'Production' => 'إنتاج', - 'ProductionSteps' => '', 'Profile' => 'الملف الشخصي', 'Properties' => 'الخصائص', 'Property' => 'ملكية', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'قطعة', 'ShelfLife' => 'مدة الصلاحية', - 'Source' => 'مصدر', 'Start' => 'يبدأ', 'Status' => 'حالة', 'Stock' => 'المخزون', 'StockList' => 'قائمة الأسهم', 'Successor' => 'خليفة', 'Supplier' => 'المورد', - 'Tax' => 'ضريبة', 'Text' => 'نص', 'TimeUnit' => 'وحدة الوقت', 'Title' => 'عنوان', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'ترجمة', 'Type' => 'نوع', 'Unit' => 'وحدة', - 'UsedIn' => '', 'Value' => 'قيمة', - 'Variation' => 'تفاوت', - 'Variations' => 'الاختلافات', 'Volume' => 'الصوت', 'Warehouse' => 'مستودع', 'Width' => 'عرض', diff --git a/Theme/Backend/Lang/cs.lang.php b/Theme/Backend/Lang/cs.lang.php index 2185bc5..80f4b99 100755 --- a/Theme/Backend/Lang/cs.lang.php +++ b/Theme/Backend/Lang/cs.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Účetnictví', 'Address' => '', - 'All' => 'Všechno', - 'Article' => 'Článek', 'Articlegroup' => 'Článek', 'Attribute' => 'Atribut', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Země', 'Created' => 'Vytvořený', 'CreatedAt' => 'Vytvořený', - 'Customer' => 'Zákazník', 'CustomerGroup' => 'Zákaznická skupina', 'CustomsID' => 'Celní ID', 'Date' => 'datum', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID.', 'ILV' => 'Ilv.', 'Info' => 'Info.', - 'IsActive' => 'Aktivní?', - 'Issues' => '', 'Item' => 'Položka', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Šarže', 'MRR' => 'Mrr.', 'MTDSales' => 'Prodej MTD.', - 'Machines' => '', 'Makespan' => 'Makeespan.', 'Margin' => 'Okraj', 'Master' => 'Mistr', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Jméno1.', 'Name2' => 'Jméno2.', 'Name3' => 'Jméno3.', - 'Name4' => 'Jméno4.', - 'Name5' => 'Jméno5.', 'Net' => 'Čistá hmotnost', 'NetWeight' => 'Čistá hmotnost', 'None' => 'Žádný', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Číslo', 'Ordered' => 'Objednaný', 'Packaging' => 'Obal', - 'PartsList' => '', 'Price' => 'Cena', 'PriceChange' => 'Změna ceny', 'PriceUnit' => 'Jednotka ceny', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'ProductSgroup.', 'Production' => 'Výroba', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Vlastnosti', 'Property' => 'Vlastnictví', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segment', 'ShelfLife' => 'Skladovatelnost', - 'Source' => 'Zdroj', 'Start' => 'Start', 'Status' => 'Postavení', 'Stock' => 'Skladem', 'StockList' => 'Seznam zásob', 'Successor' => 'Nástupce', 'Supplier' => 'Dodavatel', - 'Tax' => 'Daň', 'Text' => 'Text', 'TimeUnit' => 'Čas', 'Title' => 'Titul', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Překlad', 'Type' => 'Typ', 'Unit' => 'Jednotka', - 'UsedIn' => '', 'Value' => 'Hodnota', - 'Variation' => 'Variace', - 'Variations' => 'Variace', 'Volume' => 'Objem', 'Warehouse' => 'Sklad', 'Width' => 'Šířka', diff --git a/Theme/Backend/Lang/da.lang.php b/Theme/Backend/Lang/da.lang.php index 8214b24..19231ac 100755 --- a/Theme/Backend/Lang/da.lang.php +++ b/Theme/Backend/Lang/da.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Regnskab', 'Address' => '', - 'All' => 'Alle', - 'Article' => 'Artikel', 'Articlegroup' => 'ArticleGroup.', 'Attribute' => 'Attribut.', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Land', 'Created' => 'Oprettet', 'CreatedAt' => 'Oprettet', - 'Customer' => 'Kunde', 'CustomerGroup' => 'KUNDER GROUP', 'CustomsID' => 'Told ID.', 'Date' => 'Dato', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID.', 'ILV' => 'ILV.', 'Info' => 'Info.', - 'IsActive' => 'Aktiv?', - 'Issues' => '', 'Item' => 'Vare', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Masse', 'MRR' => 'MRR.', 'MTDSales' => 'MTD Sales.', - 'Machines' => '', 'Makespan' => 'Makespan.', 'Margin' => 'Margin.', 'Master' => 'Mestre', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'NAME1.', 'Name2' => 'NAME2.', 'Name3' => 'NAME3.', - 'Name4' => 'NAME4.', - 'Name5' => 'NAME5.', 'Net' => 'Nettovægt', 'NetWeight' => 'Nettovægt', 'None' => 'Ingen', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Nummer', 'Ordered' => 'Bestilt.', 'Packaging' => 'Emballage', - 'PartsList' => '', 'Price' => 'Pris', 'PriceChange' => 'Pris forandring', 'PriceUnit' => 'Enhed af pris.', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Produktgruppe', 'Production' => 'Produktion', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Ejendomme', 'Property' => 'Ejendom', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segment', 'ShelfLife' => 'Holdbarhed', - 'Source' => 'Kilde', 'Start' => 'Start', 'Status' => 'Status.', 'Stock' => 'Lager', 'StockList' => 'Lagerliste', 'Successor' => 'Efterfølger', 'Supplier' => 'Leverandør', - 'Tax' => 'Skat', 'Text' => 'Tekst', 'TimeUnit' => 'Enhed af tid', 'Title' => 'Titel', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Oversættelse', 'Type' => 'Type', 'Unit' => 'Enhed', - 'UsedIn' => '', 'Value' => 'Værdi', - 'Variation' => 'Variation', - 'Variations' => 'Variationer', 'Volume' => 'Bind', 'Warehouse' => 'Lager', 'Width' => 'Bredde', diff --git a/Theme/Backend/Lang/de.lang.php b/Theme/Backend/Lang/de.lang.php index 7eed03c..4b4270f 100755 --- a/Theme/Backend/Lang/de.lang.php +++ b/Theme/Backend/Lang/de.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Buchhaltung', 'Address' => 'Adresse', - 'All' => 'Alle', - 'Article' => 'Artikel', 'Articlegroup' => 'ArtikelGroup.', 'Attribute' => 'Attribut', 'AttributeTypes' => 'Attributtypen', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Land', 'Created' => 'Erstellt', 'CreatedAt' => 'Erstellt', - 'Customer' => 'Kunde', 'CustomerGroup' => 'Kundengruppe', 'CustomsID' => 'Zoll-ID.', 'Date' => 'Datum', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'ILV', 'Info' => 'Die Info', - 'IsActive' => 'Aktiv?', - 'Issues' => 'Probleme', 'Item' => 'Artikel', - 'ItemGroup' => 'Artikelgruppe', 'ItemSection' => 'Artikelsparte', 'ItemSegment' => 'Artikelsegment', 'ItemType' => 'Artikeltyp', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Viel', 'MRR' => 'Mrr.', 'MTDSales' => 'MTD-Verkäufe.', - 'Machines' => 'Maschinen', 'Makespan' => 'Makespan', 'Margin' => 'Rand', 'Master' => 'Meister', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Name1.', 'Name2' => 'Name2.', 'Name3' => 'Name3.', - 'Name4' => 'Name4.', - 'Name5' => 'Name5.', 'Net' => 'Netto', 'NetWeight' => 'Reingewicht', 'None' => 'Keiner', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Nummer', 'Ordered' => 'Bestellt', 'Packaging' => 'Verpackung', - 'PartsList' => 'Stückliste', 'Price' => 'Preis', 'PriceChange' => 'Preisänderung', 'PriceUnit' => 'Preiseinheit.', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => 'Beschaffung', 'Productgroup' => 'Produktgruppe', 'Production' => 'Produktion', - 'ProductionSteps' => 'Produktionsschritte', 'Profile' => 'Profil', 'Properties' => 'Eigenschaften', 'Property' => 'Eigentum', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => 'Verkaufspreise', 'Segment' => 'Segment', 'ShelfLife' => 'Haltbarkeit.', - 'Source' => 'Quelle', 'Start' => 'Start', 'Status' => 'Status', 'Stock' => 'Aktie', 'StockList' => 'Lagerliste', 'Successor' => 'Nachfolger', 'Supplier' => 'Anbieter', - 'Tax' => 'Steuer', 'Text' => 'Text', 'TimeUnit' => 'Zeiteinheit', 'Title' => 'Titel', @@ -145,12 +132,31 @@ return ['ItemManagement' => [ 'Translation' => 'Übersetzung', 'Type' => 'Typ', 'Unit' => 'Einheit', - 'UsedIn' => 'Verwendet in', 'Value' => 'Wert', - 'Variation' => 'Variation', - 'Variations' => 'Variationen', 'Volume' => 'Volumen', 'Warehouse' => 'Lagerhaus', 'Width' => 'Breite', 'YTDSales' => 'Ytd Sales', + 'ItemProductGroup' => 'Artikel Produktgruppe', + 'ItemSalesGroup' => 'Artikel Umsatzgruppe', + 'Promocode' => 'Promocode', + 'Region' => 'Region', + 'Materials' => 'Materialien', + 'Weight' => 'Gewicht', + 'Depth' => 'Tiefe', + 'WidthLength' => 'Breite/Länge', + 'MaximumOrderInterval' => 'Maximales Bestellintervall', + 'MinimumOrderQuantity' => 'Mindestbestellmenge', + 'PrimarySupplier' => 'Hauptlieferant', + 'LeadTime' => 'Lieferzeit', + 'UnitQuantity' => 'Einheitsmenge', + 'UnitPrice' => 'Einheitspreis', + 'Lieferanten' => 'Lieferanten', + 'CostCenter' => 'Kostenstelle', + 'CostObject' => 'Kostenträger', + 'DefaultStock' => 'Standard Lager', + 'DefaultStockLocation' => 'Standard Lagerplatz', + 'Inventory' => 'Bestandsführung', + 'Identifier' => 'Identifizierung', + 'Stocktaking' => 'Inventur', ]]; diff --git a/Theme/Backend/Lang/el.lang.php b/Theme/Backend/Lang/el.lang.php index 9303dcf..c67e4d8 100755 --- a/Theme/Backend/Lang/el.lang.php +++ b/Theme/Backend/Lang/el.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Λογιστική', 'Address' => '', - 'All' => 'Ολα', - 'Article' => 'Αρθρο', 'Articlegroup' => 'Ομιλία', 'Attribute' => 'Χαρακτηριστικό', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Χώρα', 'Created' => 'Δημιουργήθηκε', 'CreatedAt' => 'Δημιουργήθηκε', - 'Customer' => 'Πελάτης', 'CustomerGroup' => 'Ομάδα πελατών', 'CustomsID' => 'Τελωνειακό αναγνωριστικό', 'Date' => 'Ημερομηνία', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ταυτότητα', 'ILV' => 'Ιλ', 'Info' => 'Πληροφορία', - 'IsActive' => 'Ενεργός?', - 'Issues' => '', 'Item' => 'Είδος', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Παρτίδα', 'MRR' => 'MRR', 'MTDSales' => 'Πωλήσεις MTD', - 'Machines' => '', 'Makespan' => 'Makespan', 'Margin' => 'Περιθώριο', 'Master' => 'Κύριος', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Όνομα1', 'Name2' => 'Όνομα2', 'Name3' => 'Όνομα', - 'Name4' => 'Όνομα4', - 'Name5' => 'Όνομα5', 'Net' => 'Καθαρό βάρος', 'NetWeight' => 'Καθαρό βάρος', 'None' => 'Κανένας', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Αριθμός', 'Ordered' => 'Διέταξε', 'Packaging' => 'Συσκευασία', - 'PartsList' => '', 'Price' => 'Τιμή', 'PriceChange' => 'Αλλαγή τιμών', 'PriceUnit' => 'Μονάδα τιμής', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Ομοιόμορφη ομάδα', 'Production' => 'Παραγωγή', - 'ProductionSteps' => '', 'Profile' => 'Προφίλ', 'Properties' => 'Ιδιότητες', 'Property' => 'Ιδιοκτησία', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Τμήμα', 'ShelfLife' => 'Διάρκεια ζωής', - 'Source' => 'Πηγή', 'Start' => 'Αρχή', 'Status' => 'Κατάσταση', 'Stock' => 'Στοκ', 'StockList' => 'Λίστα αποθέματος', 'Successor' => 'Διάδοχος', 'Supplier' => 'Προμηθευτής', - 'Tax' => 'Φόρος', 'Text' => 'Κείμενο', 'TimeUnit' => 'Μονάδα χρόνου', 'Title' => 'Τίτλος', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Μετάφραση', 'Type' => 'Τύπος', 'Unit' => 'Μονάδα', - 'UsedIn' => '', 'Value' => 'αξία', - 'Variation' => 'Παραλλαγή', - 'Variations' => 'Παραλλαγές', 'Volume' => 'Ενταση ΗΧΟΥ', 'Warehouse' => 'Αποθήκη', 'Width' => 'Πλάτος', diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php index 4233239..b12c519 100755 --- a/Theme/Backend/Lang/en.lang.php +++ b/Theme/Backend/Lang/en.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Accounting', 'Address' => 'Address', - 'All' => 'All', - 'Article' => 'Article', 'Articlegroup' => 'Articlegroup', 'Attribute' => 'Attribute', 'AttributeTypes' => 'Attribute types', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Country', 'Created' => 'Created', 'CreatedAt' => 'Created', - 'Customer' => 'Customer', 'CustomerGroup' => 'Customer Group', 'CustomsID' => 'Customs ID', 'Date' => 'Date', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'ILV', 'Info' => 'Info', - 'IsActive' => 'Active?', - 'Issues' => '', 'Item' => 'Item', - 'ItemGroup' => 'Item Group', 'ItemSection' => 'Item Section', 'ItemSegment' => 'Item Segment', 'ItemType' => 'Item Type', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Lot', 'MRR' => 'MRR', 'MTDSales' => 'MTD Sales', - 'Machines' => '', 'Makespan' => 'Makespan', 'Margin' => 'Margin', 'Master' => 'Master', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Name1', 'Name2' => 'Name2', 'Name3' => 'Name3', - 'Name4' => 'Name4', - 'Name5' => 'Name5', 'Net' => 'Net', 'NetWeight' => 'Net Weight', 'None' => 'None', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Number', 'Ordered' => 'Ordered', 'Packaging' => 'Packaging', - 'PartsList' => '', 'Price' => 'Price', 'PriceChange' => 'Price Change', 'PriceUnit' => 'Unit of price', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => 'Procurement', 'Productgroup' => 'Productgroup', 'Production' => 'Production', - 'ProductionSteps' => '', 'Profile' => 'Profile', 'Properties' => 'Properties', 'Property' => 'Property', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => 'Sales Pricing', 'Segment' => 'Segment', 'ShelfLife' => 'Shelf life', - 'Source' => 'Source', 'Start' => 'Start', 'Status' => 'Status', 'Stock' => 'Stock', 'StockList' => 'Stock list', 'Successor' => 'Successor', 'Supplier' => 'Supplier', - 'Tax' => 'Tax', 'Text' => 'Text', 'TimeUnit' => 'Unit of time', 'Title' => 'Title', @@ -145,12 +132,31 @@ return ['ItemManagement' => [ 'Translation' => 'Translation', 'Type' => 'Type', 'Unit' => 'Unit', - 'UsedIn' => '', 'Value' => 'Value', - 'Variation' => 'Variation', - 'Variations' => 'Variations', 'Volume' => 'Volume', 'Warehouse' => 'Warehouse', 'Width' => 'Width', 'YTDSales' => 'YTD Sales', + 'ItemProductGroup' => 'Item Product Group', + 'ItemSalesGroup' => 'Item Sales Group', + 'Promocode' => 'Promocode', + 'Region' => 'Region', + 'Materials' => 'Materials', + 'Weight' => 'Weight', + 'Depth' => 'Depth', + 'WidthLength' => 'Width/Length', + 'MaximumOrderInterval' => 'Maximum Order Interval', + 'MinimumOrderQuantity' => 'Minimum Order Quantity', + 'PrimarySupplier' => 'Primary Supplier', + 'LeadTime' => 'Lead Time', + 'UnitQuantity' => 'Unit Quantity', + 'UnitPrice' => 'Unit Price', + 'Suppliers' => 'Suppliers', + 'CostCenter' => 'Cost Center', + 'CostObject' => 'Cost Object', + 'DefaultStock' => 'Default stock', + 'DefaultStockLocation' => 'Default stock location', + 'Inventory' => 'Inventory', + 'Identifier' => 'Identifier', + 'Stocktaking' => 'Stocktaking', ]]; diff --git a/Theme/Backend/Lang/es.lang.php b/Theme/Backend/Lang/es.lang.php index 119c3c7..e93cb7e 100755 --- a/Theme/Backend/Lang/es.lang.php +++ b/Theme/Backend/Lang/es.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Contabilidad', 'Address' => '', - 'All' => 'Todo', - 'Article' => 'Artículo', 'Articlegroup' => 'Grupo articulo', 'Attribute' => 'Atributo', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'País', 'Created' => 'Creado', 'CreatedAt' => 'Creado', - 'Customer' => 'Cliente', 'CustomerGroup' => 'grupo de clientes', 'CustomsID' => 'Identificación de aduanas', 'Date' => 'Fecha', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'IDENTIFICACIÓN', 'ILV' => 'I LV', 'Info' => 'Información', - 'IsActive' => '¿Activo?', - 'Issues' => '', 'Item' => 'Articulo', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Lote', 'MRR' => 'Mrr', 'MTDSales' => 'Ventas MTD', - 'Machines' => '', 'Makespan' => 'Maquinista', 'Margin' => 'Margen', 'Master' => 'Maestría', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nombre1', 'Name2' => 'Nombre2', 'Name3' => 'Nombre3', - 'Name4' => 'Nombre4', - 'Name5' => 'Nombre5', 'Net' => 'Peso neto', 'NetWeight' => 'Peso neto', 'None' => 'Ninguna', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Número', 'Ordered' => 'Ordenado', 'Packaging' => 'embalaje', - 'PartsList' => '', 'Price' => 'Precio', 'PriceChange' => 'Cambio de precio', 'PriceUnit' => 'Unidad de precio', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Grupo de productos', 'Production' => 'Producción', - 'ProductionSteps' => '', 'Profile' => 'Perfil', 'Properties' => 'Propiedades', 'Property' => 'Propiedad', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmento', 'ShelfLife' => 'Duracion', - 'Source' => 'Fuente', 'Start' => 'Comienzo', 'Status' => 'Estado', 'Stock' => 'Valores', 'StockList' => 'Lista común', 'Successor' => 'Sucesor', 'Supplier' => 'Proveedor', - 'Tax' => 'Impuesto', 'Text' => 'Texto', 'TimeUnit' => 'Unidad de tiempo', 'Title' => 'Título', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Traducción', 'Type' => 'Escribe', 'Unit' => 'Unidad', - 'UsedIn' => '', 'Value' => 'Valor', - 'Variation' => 'Variación', - 'Variations' => 'Variaciones', 'Volume' => 'Volumen', 'Warehouse' => 'Depósito', 'Width' => 'Ancho', diff --git a/Theme/Backend/Lang/fi.lang.php b/Theme/Backend/Lang/fi.lang.php index c8016d3..7613a21 100755 --- a/Theme/Backend/Lang/fi.lang.php +++ b/Theme/Backend/Lang/fi.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Kirjanpito', 'Address' => '', - 'All' => 'Kaikki', - 'Article' => 'Artikla', 'Articlegroup' => 'ArticleGroup', 'Attribute' => 'Attribuutti', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Maa', 'Created' => 'Luotu', 'CreatedAt' => 'Luotu', - 'Customer' => 'Asiakas', 'CustomerGroup' => 'Asiakasryhmä', 'CustomsID' => 'Tullitunnus', 'Date' => 'Päivämäärä', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Id', 'ILV' => 'Ilv', 'Info' => 'Tiedot', - 'IsActive' => 'Aktiivinen?', - 'Issues' => '', 'Item' => 'Kohde', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Paljon', 'MRR' => 'Mrr', 'MTDSales' => 'MTD-myynti', - 'Machines' => '', 'Makespan' => 'Makepan', 'Margin' => 'Marginaali', 'Master' => 'Hallita', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nimi1', 'Name2' => 'Nimi2', 'Name3' => 'Nimi33', - 'Name4' => 'Nimi4', - 'Name5' => 'Nimi5', 'Net' => 'Nettopaino', 'NetWeight' => 'Nettopaino', 'None' => 'Ei mitään', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Määrä', 'Ordered' => 'Tilattu', 'Packaging' => 'Pakkaus', - 'PartsList' => '', 'Price' => 'Hinta', 'PriceChange' => 'Hintamuutos', 'PriceUnit' => 'Hintayksikkö', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Tuoteryhmä', 'Production' => 'Tuotanto', - 'ProductionSteps' => '', 'Profile' => 'Profiili', 'Properties' => 'Kiinteistöt', 'Property' => 'Kiinteistö', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmentti', 'ShelfLife' => 'Säilyvyys', - 'Source' => 'Lähde', 'Start' => 'alkaa', 'Status' => 'Tila', 'Stock' => 'Varasto', 'StockList' => 'Osakeluettelo', 'Successor' => 'Seuraaja', 'Supplier' => 'Toimittaja', - 'Tax' => 'Verottaa', 'Text' => 'Teksti', 'TimeUnit' => 'Ajan yksikkö', 'Title' => 'Otsikko', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Käännös', 'Type' => 'Tyyppi', 'Unit' => 'Yksikkö', - 'UsedIn' => '', 'Value' => 'Arvo', - 'Variation' => 'Vaihtelu', - 'Variations' => 'Muunnelmat', 'Volume' => 'Määrä', 'Warehouse' => 'Varasto', 'Width' => 'Leveys', diff --git a/Theme/Backend/Lang/fr.lang.php b/Theme/Backend/Lang/fr.lang.php index dbdaa69..434cd21 100755 --- a/Theme/Backend/Lang/fr.lang.php +++ b/Theme/Backend/Lang/fr.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Comptabilité', 'Address' => '', - 'All' => 'Tout', - 'Article' => 'Article', 'Articlegroup' => 'Articlegroup', 'Attribute' => 'Attribut', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Pays', 'Created' => 'Établi', 'CreatedAt' => 'Établi', - 'Customer' => 'Client', 'CustomerGroup' => 'Groupe de clients', 'CustomsID' => 'Identifiant de douane', 'Date' => 'Date', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'identifiant', 'ILV' => 'Ilv', 'Info' => 'Info', - 'IsActive' => 'Actif?', - 'Issues' => '', 'Item' => 'Article', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Parcelle', 'MRR' => 'Mrr', 'MTDSales' => 'Ventes MTD', - 'Machines' => '', 'Makespan' => 'Gibier', 'Margin' => 'Marge', 'Master' => 'Maître', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nom1', 'Name2' => 'Nom2', 'Name3' => 'Nom3', - 'Name4' => 'Nom4', - 'Name5' => 'Nom5', 'Net' => 'Poids net', 'NetWeight' => 'Poids net', 'None' => 'Rien', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Nombre', 'Ordered' => 'Commandé', 'Packaging' => 'Emballage', - 'PartsList' => '', 'Price' => 'Prix', 'PriceChange' => 'Changement de prix', 'PriceUnit' => 'Unité de prix', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Groupe de produits', 'Production' => 'Production', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Propriétés', 'Property' => 'Propriété', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segment', 'ShelfLife' => 'Durée de vie', - 'Source' => 'La source', 'Start' => 'Démarrer', 'Status' => 'Statut', 'Stock' => 'Stocker', 'StockList' => 'Liste des stocks', 'Successor' => 'Successeur', 'Supplier' => 'Fournisseur', - 'Tax' => 'Impôt', 'Text' => 'Texte', 'TimeUnit' => 'Unité de temps', 'Title' => 'Titre', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Traduction', 'Type' => 'Taper', 'Unit' => 'Unité', - 'UsedIn' => '', 'Value' => 'Valeur', - 'Variation' => 'Variation', - 'Variations' => 'Variations', 'Volume' => 'Le volume', 'Warehouse' => 'Entrepôt', 'Width' => 'Largeur', diff --git a/Theme/Backend/Lang/hu.lang.php b/Theme/Backend/Lang/hu.lang.php index a6c94d8..66aa765 100755 --- a/Theme/Backend/Lang/hu.lang.php +++ b/Theme/Backend/Lang/hu.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Könyvelés', 'Address' => '', - 'All' => 'Minden', - 'Article' => 'Cikk', 'Articlegroup' => 'Gyerekcsoport', 'Attribute' => 'Tulajdonság', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Ország', 'Created' => 'Létrehozott', 'CreatedAt' => 'Létrehozott', - 'Customer' => 'Vevő', 'CustomerGroup' => 'Ügyfélcsoport', 'CustomsID' => 'Vámazonosító', 'Date' => 'Dátum', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Idézés', 'ILV' => 'ILV', 'Info' => 'Információ', - 'IsActive' => 'Aktív?', - 'Issues' => '', 'Item' => 'Tétel', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Sok', 'MRR' => 'Mrr', 'MTDSales' => 'MTD értékesítés', - 'Machines' => '', 'Makespan' => 'Makespan', 'Margin' => 'Árrés', 'Master' => 'Fő', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Név1', 'Name2' => 'NAME2', 'Name3' => 'Név3', - 'Name4' => 'Név4', - 'Name5' => 'Név5', 'Net' => 'Nettó tömeg', 'NetWeight' => 'Nettó tömeg', 'None' => 'Egyik sem', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Szám', 'Ordered' => 'Elrendelt', 'Packaging' => 'Csomagolás', - 'PartsList' => '', 'Price' => 'Ár', 'PriceChange' => 'Árváltozás', 'PriceUnit' => 'Áregység', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Termékcsoport', 'Production' => 'Termelés', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Tulajdonságok', 'Property' => 'Ingatlan', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Szegmens', 'ShelfLife' => 'Szavatossági idő', - 'Source' => 'Forrás', 'Start' => 'Rajt', 'Status' => 'Állapot', 'Stock' => 'Készlet', 'StockList' => 'Állománylista', 'Successor' => 'Utód', 'Supplier' => 'Támogató', - 'Tax' => 'Adó', 'Text' => 'Szöveg', 'TimeUnit' => 'Időegység', 'Title' => 'Cím', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Fordítás', 'Type' => 'típus', 'Unit' => 'Mértékegység', - 'UsedIn' => '', 'Value' => 'Érték', - 'Variation' => 'Variáció', - 'Variations' => 'Változatok', 'Volume' => 'Hangerő', 'Warehouse' => 'Raktár', 'Width' => 'Szélesség', diff --git a/Theme/Backend/Lang/it.lang.php b/Theme/Backend/Lang/it.lang.php index 94986be..8406203 100755 --- a/Theme/Backend/Lang/it.lang.php +++ b/Theme/Backend/Lang/it.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Contabilità', 'Address' => '', - 'All' => 'Tutto', - 'Article' => 'Articolo', 'Articlegroup' => 'Art.group.', 'Attribute' => 'Attributo', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Nazione', 'Created' => 'Creato', 'CreatedAt' => 'Creato', - 'Customer' => 'Cliente', 'CustomerGroup' => 'Gruppo di clienti', 'CustomsID' => 'ID doganali', 'Date' => 'Data', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'Ilv.', 'Info' => 'Informazioni', - 'IsActive' => 'Attivo?', - 'Issues' => '', 'Item' => 'Elemento', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Quantità', 'MRR' => 'Mrr.', 'MTDSales' => 'Vendite di mtd.', - 'Machines' => '', 'Makespan' => 'Makespan.', 'Margin' => 'Margine', 'Master' => 'Maestro', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nome1.', 'Name2' => 'Nome2.', 'Name3' => 'Nome3.', - 'Name4' => 'Nome4.', - 'Name5' => 'Nome5.', 'Net' => 'Peso netto', 'NetWeight' => 'Peso netto', 'None' => 'Nessuno', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Numero', 'Ordered' => 'Ordinato', 'Packaging' => 'Confezione', - 'PartsList' => '', 'Price' => 'Prezzo', 'PriceChange' => 'Cambio di prezzo', 'PriceUnit' => 'Unità di prezzo.', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Gruppo di prodotti', 'Production' => 'Produzione', - 'ProductionSteps' => '', 'Profile' => 'Profilo', 'Properties' => 'Proprietà', 'Property' => 'Proprietà', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmento', 'ShelfLife' => 'Data di scadenza', - 'Source' => 'Fonte', 'Start' => 'Inizio', 'Status' => 'Stato', 'Stock' => 'Azione', 'StockList' => 'Listino', 'Successor' => 'Successore', 'Supplier' => 'Fornitore', - 'Tax' => 'Imposta', 'Text' => 'Testo', 'TimeUnit' => 'Unità di tempo', 'Title' => 'Titolo', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Traduzione', 'Type' => 'Tipo', 'Unit' => 'Unità', - 'UsedIn' => '', 'Value' => 'Valore', - 'Variation' => 'Variazione', - 'Variations' => 'Variazioni', 'Volume' => 'Volume', 'Warehouse' => 'Magazzino', 'Width' => 'Larghezza', diff --git a/Theme/Backend/Lang/ja.lang.php b/Theme/Backend/Lang/ja.lang.php index e8fa0fd..d048377 100755 --- a/Theme/Backend/Lang/ja.lang.php +++ b/Theme/Backend/Lang/ja.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => '会計', 'Address' => '', - 'All' => '全て', - 'Article' => '記事', 'Articlegroup' => '記事グループ', 'Attribute' => '属性', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => '国', 'Created' => '作成した', 'CreatedAt' => '作成した', - 'Customer' => 'お客様', 'CustomerGroup' => '顧客グループ', 'CustomsID' => '税関ID', 'Date' => '日にち', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'id', 'ILV' => 'il', 'Info' => '情報', - 'IsActive' => 'アクティブ?', - 'Issues' => '', 'Item' => 'アイテム', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => '多く', 'MRR' => 'MRR.', 'MTDSales' => 'MTDセールス', - 'Machines' => '', 'Makespan' => 'マークスパン', 'Margin' => 'マージン', 'Master' => 'マスター', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => '名前1', 'Name2' => '名前2', 'Name3' => '名前3', - 'Name4' => '名前4', - 'Name5' => '名前5', 'Net' => '正味重量', 'NetWeight' => '正味重量', 'None' => 'なし', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => '番号', 'Ordered' => '順序付けられました', 'Packaging' => '包装', - 'PartsList' => '', 'Price' => '価格', 'PriceChange' => '価格変更', 'PriceUnit' => '価格の単位', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => '製品グループ', 'Production' => '製造', - 'ProductionSteps' => '', 'Profile' => 'プロフィール', 'Properties' => 'プロパティ', 'Property' => '財産', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'セグメント', 'ShelfLife' => '貯蔵寿命', - 'Source' => 'ソース', 'Start' => '始める', 'Status' => '状態', 'Stock' => 'ストック', 'StockList' => '在庫リスト', 'Successor' => '後継', 'Supplier' => 'サプライヤー', - 'Tax' => '税', 'Text' => '文章', 'TimeUnit' => '時間単位', 'Title' => 'タイトル', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => '翻訳', 'Type' => 'タイプ', 'Unit' => '単位', - 'UsedIn' => '', 'Value' => '価値', - 'Variation' => '変化', - 'Variations' => '変種', 'Volume' => '音量', 'Warehouse' => '倉庫', 'Width' => '幅', diff --git a/Theme/Backend/Lang/ko.lang.php b/Theme/Backend/Lang/ko.lang.php index fde717d..7e4c982 100755 --- a/Theme/Backend/Lang/ko.lang.php +++ b/Theme/Backend/Lang/ko.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => '회계', 'Address' => '', - 'All' => '모두', - 'Article' => '기사', 'Articlegroup' => '기사 그룹', 'Attribute' => '기인하다', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => '국가', 'Created' => '만들어진', 'CreatedAt' => '만들어진', - 'Customer' => '고객', 'CustomerGroup' => '고객 그룹', 'CustomsID' => '세관 ID.', 'Date' => '날짜', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'ilv.', 'Info' => '정보', - 'IsActive' => '활동적인?', - 'Issues' => '', 'Item' => '안건', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => '많은', 'MRR' => '부서', 'MTDSales' => 'MTD 판매', - 'Machines' => '', 'Makespan' => '총 소요 시간', 'Margin' => '여유', 'Master' => '주인', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'name1.', 'Name2' => 'name2.', 'Name3' => 'Name3.', - 'Name4' => '이름 4', - 'Name5' => 'Name5.', 'Net' => '순중량', 'NetWeight' => '순중량', 'None' => '없음', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => '숫자', 'Ordered' => '주문했다', 'Packaging' => '포장', - 'PartsList' => '', 'Price' => '가격', 'PriceChange' => '가격 변경', 'PriceUnit' => '가격 단위', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => '제품 그룹', 'Production' => '생산', - 'ProductionSteps' => '', 'Profile' => '프로필', 'Properties' => '속성', 'Property' => '재산', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => '분절', 'ShelfLife' => '유통 기한', - 'Source' => '원천', 'Start' => '시작', 'Status' => '상태', 'Stock' => '재고', 'StockList' => '재고 목록', 'Successor' => '후임', 'Supplier' => '공급자', - 'Tax' => '세', 'Text' => '텍스트', 'TimeUnit' => '시간 단위', 'Title' => '제목', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => '번역', 'Type' => '유형', 'Unit' => '단위', - 'UsedIn' => '', 'Value' => '값', - 'Variation' => '변화', - 'Variations' => '변형', 'Volume' => '용량', 'Warehouse' => '창고', 'Width' => '너비', diff --git a/Theme/Backend/Lang/no.lang.php b/Theme/Backend/Lang/no.lang.php index a32c4cb..1a40b6c 100755 --- a/Theme/Backend/Lang/no.lang.php +++ b/Theme/Backend/Lang/no.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Regnskap', 'Address' => '', - 'All' => 'Alle', - 'Article' => 'Artikkel', 'Articlegroup' => 'Articregroup.', 'Attribute' => 'Egenskap', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Land', 'Created' => 'Opprettet', 'CreatedAt' => 'Opprettet', - 'Customer' => 'Kunde', 'CustomerGroup' => 'Kunde Group.', 'CustomsID' => 'Toll-ID.', 'Date' => 'Dato', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Id.', 'ILV' => 'ILV.', 'Info' => 'Info.', - 'IsActive' => 'Aktiv?', - 'Issues' => '', 'Item' => 'Punkt', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Lot', 'MRR' => 'MRR.', 'MTDSales' => 'MTD-salg', - 'Machines' => '', 'Makespan' => 'Makepan.', 'Margin' => 'Margin', 'Master' => 'Herre', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Navn1.', 'Name2' => 'NAME2.', 'Name3' => 'Navn3.', - 'Name4' => 'Navn4.', - 'Name5' => 'Navn5.', 'Net' => 'Netto vekt', 'NetWeight' => 'Netto vekt', 'None' => 'Ingen', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Nummer', 'Ordered' => 'Bestilt', 'Packaging' => 'Emballasje', - 'PartsList' => '', 'Price' => 'Pris', 'PriceChange' => 'Prisendring', 'PriceUnit' => 'Enheten av pris', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Produktgruppe', 'Production' => 'Produksjon', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Egenskaper', 'Property' => 'Eiendom', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmentet', 'ShelfLife' => 'Holdbarhet', - 'Source' => 'Kilde', 'Start' => 'Start', 'Status' => 'Status', 'Stock' => 'Lager', 'StockList' => 'Lagerliste', 'Successor' => 'Etterfølger', 'Supplier' => 'Leverandør', - 'Tax' => 'Avgift', 'Text' => 'Tekst', 'TimeUnit' => 'Tidsenhet', 'Title' => 'Tittel', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Oversettelse', 'Type' => 'Type', 'Unit' => 'Enhet', - 'UsedIn' => '', 'Value' => 'Verdi', - 'Variation' => 'Variasjon', - 'Variations' => 'Variasjoner', 'Volume' => 'Volum', 'Warehouse' => 'Lager', 'Width' => 'Bredde', diff --git a/Theme/Backend/Lang/pl.lang.php b/Theme/Backend/Lang/pl.lang.php index 8a81654..314a5e0 100755 --- a/Theme/Backend/Lang/pl.lang.php +++ b/Theme/Backend/Lang/pl.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Rachunkowość', 'Address' => '', - 'All' => 'Wszystkie', - 'Article' => 'Artykuł', 'Articlegroup' => 'Artykuł', 'Attribute' => 'Atrybut', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Kraj', 'Created' => 'Utworzony', 'CreatedAt' => 'Utworzony', - 'Customer' => 'Klient', 'CustomerGroup' => 'Grupa klientów', 'CustomsID' => 'Identyfikator celny', 'Date' => 'Data', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'ILV.', 'Info' => 'Info', - 'IsActive' => 'Aktywny?', - 'Issues' => '', 'Item' => 'Przedmiot', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Działka', 'MRR' => 'MRR.', 'MTDSales' => 'Sprzedaż MTD.', - 'Machines' => '', 'Makespan' => 'Makespan', 'Margin' => 'Margines', 'Master' => 'Gospodarz', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nazwa1.', 'Name2' => 'Nazwa2.', 'Name3' => 'Nazwa3.', - 'Name4' => 'Nazwa4.', - 'Name5' => 'Nazwa5.', 'Net' => 'Waga netto', 'NetWeight' => 'Waga netto', 'None' => 'Nic', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Numer', 'Ordered' => 'Uporządkowany', 'Packaging' => 'Opakowanie', - 'PartsList' => '', 'Price' => 'Cena £', 'PriceChange' => 'Zmiana ceny', 'PriceUnit' => 'Jednostka ceny', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Grupa produktów', 'Production' => 'Produkcja', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Nieruchomości', 'Property' => 'Nieruchomość', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Człon', 'ShelfLife' => 'Trwałość', - 'Source' => 'Źródło', 'Start' => 'Początek', 'Status' => 'Status', 'Stock' => 'Magazyn', 'StockList' => 'Lista zapasów', 'Successor' => 'Następca', 'Supplier' => 'Dostawca', - 'Tax' => 'Podatek', 'Text' => 'Tekst', 'TimeUnit' => 'Jednostka czasu', 'Title' => 'Tytuł', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Tłumaczenie', 'Type' => 'Rodzaj', 'Unit' => 'Jednostka', - 'UsedIn' => '', 'Value' => 'Wartość', - 'Variation' => 'Zmiana', - 'Variations' => 'Wariacje', 'Volume' => 'Tom', 'Warehouse' => 'Magazyn', 'Width' => 'Szerokość', diff --git a/Theme/Backend/Lang/pt.lang.php b/Theme/Backend/Lang/pt.lang.php index 24783d0..2c6d78e 100755 --- a/Theme/Backend/Lang/pt.lang.php +++ b/Theme/Backend/Lang/pt.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Contabilidade', 'Address' => '', - 'All' => 'Tudo', - 'Article' => 'Artigo', 'Articlegroup' => 'ArticleGroup', 'Attribute' => 'Atributo', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'País', 'Created' => 'Criado', 'CreatedAt' => 'Criado', - 'Customer' => 'Cliente', 'CustomerGroup' => 'Grupo de clientes', 'CustomsID' => 'ID da alfândega', 'Date' => 'Encontro', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'identificação', 'ILV' => 'Ilv.', 'Info' => 'Info', - 'IsActive' => 'Ativo?', - 'Issues' => '', 'Item' => 'Item', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Muitos', 'MRR' => 'MRR.', 'MTDSales' => 'Sales Mtd.', - 'Machines' => '', 'Makespan' => 'Makespan.', 'Margin' => 'Margem', 'Master' => 'Mestre', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Nome1.', 'Name2' => 'Nome2.', 'Name3' => 'Nome3.', - 'Name4' => 'Nome4.', - 'Name5' => 'Nome5.', 'Net' => 'Peso líquido', 'NetWeight' => 'Peso líquido', 'None' => 'Nenhum', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Número', 'Ordered' => 'Encomendado', 'Packaging' => 'Embalagem', - 'PartsList' => '', 'Price' => 'Preço', 'PriceChange' => 'Mudança de preço', 'PriceUnit' => 'Unidade de preço', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Grupo de produtos', 'Production' => 'Produção', - 'ProductionSteps' => '', 'Profile' => 'Perfil', 'Properties' => 'Propriedades.', 'Property' => 'Propriedade', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmento', 'ShelfLife' => 'Validade', - 'Source' => 'Fonte', 'Start' => 'Começar', 'Status' => 'Status', 'Stock' => 'Estoque', 'StockList' => 'Lista de ações', 'Successor' => 'Sucessor', 'Supplier' => 'Fornecedor', - 'Tax' => 'Imposto', 'Text' => 'Texto', 'TimeUnit' => 'Unidade de tempo', 'Title' => 'Título', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Tradução', 'Type' => 'Modelo', 'Unit' => 'Unidade', - 'UsedIn' => '', 'Value' => 'Valor', - 'Variation' => 'Variação', - 'Variations' => 'Variações.', 'Volume' => 'Volume', 'Warehouse' => 'Armazém', 'Width' => 'Largura', diff --git a/Theme/Backend/Lang/ru.lang.php b/Theme/Backend/Lang/ru.lang.php index e112916..907d494 100755 --- a/Theme/Backend/Lang/ru.lang.php +++ b/Theme/Backend/Lang/ru.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Учет', 'Address' => '', - 'All' => 'Все', - 'Article' => 'Статья', 'Articlegroup' => 'Staregroup.', 'Attribute' => 'Атрибут', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Страна', 'Created' => 'Созданный', 'CreatedAt' => 'Созданный', - 'Customer' => 'Клиент', 'CustomerGroup' => 'Группа клиентов', 'CustomsID' => 'Таможенный ID.', 'Date' => 'Дата', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Я БЫ', 'ILV' => 'Ilv.', 'Info' => 'Информация', - 'IsActive' => 'Активен?', - 'Issues' => '', 'Item' => 'Пункт', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Много', 'MRR' => 'MRR', 'MTDSales' => 'MTD Sales.', - 'Machines' => '', 'Makespan' => 'Пары', 'Margin' => 'Допуск', 'Master' => 'Владелец', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Имя1.', 'Name2' => 'Имя2.', 'Name3' => 'Имя3.', - 'Name4' => 'Имя4.', - 'Name5' => 'Имя5.', 'Net' => 'Нетто', 'NetWeight' => 'Нетто', 'None' => 'Никто', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Число', 'Ordered' => 'Заказал', 'Packaging' => 'Упаковка', - 'PartsList' => '', 'Price' => 'Цена', 'PriceChange' => 'Смена цены', 'PriceUnit' => 'Единица цены', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Группа товаров', 'Production' => 'Производство', - 'ProductionSteps' => '', 'Profile' => 'Профиль', 'Properties' => 'Характеристики', 'Property' => 'Имущество', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Сегмент', 'ShelfLife' => 'Срок годности', - 'Source' => 'Источник', 'Start' => 'Начинать', 'Status' => 'Статус', 'Stock' => 'Склад', 'StockList' => 'Список акций', 'Successor' => 'Преемник', 'Supplier' => 'Поставщик', - 'Tax' => 'Налог', 'Text' => 'Текст', 'TimeUnit' => 'Единица времени', 'Title' => 'Заголовок', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Перевод', 'Type' => 'Тип', 'Unit' => 'Единица измерения', - 'UsedIn' => '', 'Value' => 'Ценность', - 'Variation' => 'Вариация', - 'Variations' => 'Вариации', 'Volume' => 'Объем', 'Warehouse' => 'Склад', 'Width' => 'Ширина', diff --git a/Theme/Backend/Lang/sv.lang.php b/Theme/Backend/Lang/sv.lang.php index b95d749..2d784dd 100755 --- a/Theme/Backend/Lang/sv.lang.php +++ b/Theme/Backend/Lang/sv.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Bokföring', 'Address' => '', - 'All' => 'Allt', - 'Article' => 'Artikel', 'Articlegroup' => 'Artikelgrupp', 'Attribute' => 'Attribut', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Land', 'Created' => 'Skapad', 'CreatedAt' => 'Skapad', - 'Customer' => 'Kund', 'CustomerGroup' => 'kundgrupp', 'CustomsID' => 'Tull ID', 'Date' => 'Datum', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Id', 'ILV' => 'Ilv', 'Info' => 'Info', - 'IsActive' => 'Aktiva?', - 'Issues' => '', 'Item' => 'Artikel', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Massa', 'MRR' => 'Mrr', 'MTDSales' => 'MTD-försäljning', - 'Machines' => '', 'Makespan' => 'Makpanel', 'Margin' => 'Marginal', 'Master' => 'Bemästra', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Namn1', 'Name2' => 'Namn2', 'Name3' => 'Namn3', - 'Name4' => 'Namn4', - 'Name5' => 'Namn5', 'Net' => 'Nettovikt', 'NetWeight' => 'Nettovikt', 'None' => 'Ingen', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'siffra', 'Ordered' => 'Beställde', 'Packaging' => 'Förpackning', - 'PartsList' => '', 'Price' => 'Pris', 'PriceChange' => 'Prisförändring', 'PriceUnit' => 'Prisenhet', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Produktgrupp', 'Production' => 'Produktion', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Egenskaper', 'Property' => 'Fast egendom', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segmentet', 'ShelfLife' => 'Hållbarhetstid', - 'Source' => 'Källa', 'Start' => 'Start', 'Status' => 'Status', 'Stock' => 'Stock', 'StockList' => 'Lagerlista', 'Successor' => 'Efterträdare', 'Supplier' => 'Leverantör', - 'Tax' => 'Beskatta', 'Text' => 'Text', 'TimeUnit' => 'Tidpunkt', 'Title' => 'Titel', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Översättning', 'Type' => 'Typ', 'Unit' => 'Enhet', - 'UsedIn' => '', 'Value' => 'Värde', - 'Variation' => 'Variation', - 'Variations' => 'Variationer', 'Volume' => 'Volym', 'Warehouse' => 'lager', 'Width' => 'Bredd', diff --git a/Theme/Backend/Lang/th.lang.php b/Theme/Backend/Lang/th.lang.php index fc9f70b..8687a29 100755 --- a/Theme/Backend/Lang/th.lang.php +++ b/Theme/Backend/Lang/th.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'การบัญชี', 'Address' => '', - 'All' => 'ทั้งหมด', - 'Article' => 'บทความ', 'Articlegroup' => 'ArticleGroup', 'Attribute' => 'คุณลักษณะ', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'ประเทศ', 'Created' => 'สร้าง', 'CreatedAt' => 'สร้าง', - 'Customer' => 'ลูกค้า', 'CustomerGroup' => 'กลุ่มลูกค้า', 'CustomsID' => 'รหัสศุลกากร', 'Date' => 'วันที่', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'id', 'ILV' => 'ilv', 'Info' => 'ข้อมูล', - 'IsActive' => 'คล่องแคล่ว?', - 'Issues' => '', 'Item' => 'สิ่งของ', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'มาก', 'MRR' => 'MRR', 'MTDSales' => 'ขาย MTD', - 'Machines' => '', 'Makespan' => 'แต่งหน้า', 'Margin' => 'ระยะขอบ', 'Master' => 'ผู้เชี่ยวชาญ', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'ชื่อ 1', 'Name2' => 'ชื่อ 2', 'Name3' => 'ชื่อ 3', - 'Name4' => 'ชื่อ 4', - 'Name5' => 'ชื่อ 5', 'Net' => 'น้ำหนักสุทธิ', 'NetWeight' => 'น้ำหนักสุทธิ', 'None' => 'ไม่มี', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'ตัวเลข', 'Ordered' => 'ที่ได้รับคำสั่ง', 'Packaging' => 'บรรจุภัณฑ์', - 'PartsList' => '', 'Price' => 'ราคา', 'PriceChange' => 'การเปลี่ยนแปลงราคา', 'PriceUnit' => 'หน่วยของราคา', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'กลุ่มผลิตภัณฑ์', 'Production' => 'การผลิต', - 'ProductionSteps' => '', 'Profile' => 'ประวัติโดยย่อ', 'Properties' => 'คุณสมบัติ', 'Property' => 'คุณสมบัติ', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'ส่วน', 'ShelfLife' => 'อายุการเก็บรักษา', - 'Source' => 'แหล่งที่มา', 'Start' => 'เริ่ม', 'Status' => 'สถานะ', 'Stock' => 'คลังสินค้า', 'StockList' => 'รายการสต็อก', 'Successor' => 'ผู้สืบทอด', 'Supplier' => 'ผู้ผลิต', - 'Tax' => 'ภาษี', 'Text' => 'ข้อความ', 'TimeUnit' => 'หน่วยของเวลา', 'Title' => 'ชื่อ', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'การแปล', 'Type' => 'พิมพ์', 'Unit' => 'หน่วย', - 'UsedIn' => '', 'Value' => 'ค่า', - 'Variation' => 'การเปลี่ยนแปลง', - 'Variations' => 'การเปลี่ยนแปลง', 'Volume' => 'ปริมาณ', 'Warehouse' => 'คลังสินค้า', 'Width' => 'ความกว้าง', diff --git a/Theme/Backend/Lang/tr.lang.php b/Theme/Backend/Lang/tr.lang.php index 81321aa..4ef5be7 100755 --- a/Theme/Backend/Lang/tr.lang.php +++ b/Theme/Backend/Lang/tr.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Muhasebe', 'Address' => '', - 'All' => 'Herşey', - 'Article' => 'Madde', 'Articlegroup' => 'Makale grubu', 'Attribute' => 'Bağlanmak', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Ülke', 'Created' => 'Yaratılmış', 'CreatedAt' => 'Yaratılmış', - 'Customer' => 'Müşteri', 'CustomerGroup' => 'müşteri grubu', 'CustomsID' => 'Gümrük kimliği', 'Date' => 'Tarih', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'İD', 'ILV' => 'İlve', 'Info' => 'Bilgi', - 'IsActive' => 'Aktif?', - 'Issues' => '', 'Item' => 'Kalem', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Çok güzelsin', 'MRR' => 'Mrr', 'MTDSales' => 'Mtd satışları', - 'Machines' => '', 'Makespan' => 'Makespan', 'Margin' => 'Marj', 'Master' => 'Usta', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'İsim1', 'Name2' => 'İsim2', 'Name3' => 'İsim3', - 'Name4' => 'İsim4', - 'Name5' => 'İsim5', 'Net' => 'Net ağırlığı', 'NetWeight' => 'Net ağırlığı', 'None' => 'Hiçbiri', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Numara', 'Ordered' => 'Emir', 'Packaging' => 'Ambalajlama', - 'PartsList' => '', 'Price' => 'Fiyat', 'PriceChange' => 'Fiyat değişikliği', 'PriceUnit' => 'Fiyat birimi', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Ürün grubu', 'Production' => 'Üretme', - 'ProductionSteps' => '', 'Profile' => 'Profil', 'Properties' => 'Özellikler', 'Property' => 'Mülk', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Segment', 'ShelfLife' => 'Raf ömrü', - 'Source' => 'Kaynak', 'Start' => 'Başlangıç', 'Status' => 'Durum', 'Stock' => 'Stoklamak', 'StockList' => 'Stok listesi', 'Successor' => 'Varis', 'Supplier' => 'Tedarikçi', - 'Tax' => 'Vergi', 'Text' => 'Metin', 'TimeUnit' => 'Zaman birimi', 'Title' => 'Başlık', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Tercüme', 'Type' => 'Tip', 'Unit' => 'Birim', - 'UsedIn' => '', 'Value' => 'Değer', - 'Variation' => 'varyasyon', - 'Variations' => 'Varyasyonlar', 'Volume' => 'Ses', 'Warehouse' => 'Depo', 'Width' => 'Genişlik', diff --git a/Theme/Backend/Lang/uk.lang.php b/Theme/Backend/Lang/uk.lang.php index bff35a4..c70f0e8 100755 --- a/Theme/Backend/Lang/uk.lang.php +++ b/Theme/Backend/Lang/uk.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => 'Бухгалтерський облік', 'Address' => '', - 'All' => 'Все', - 'Article' => 'Стаття', 'Articlegroup' => 'Статтюгрупи', 'Attribute' => 'Атрибут', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => 'Країна', 'Created' => 'Створений', 'CreatedAt' => 'Створений', - 'Customer' => 'Клієнт', 'CustomerGroup' => 'Група клієнтів', 'CustomsID' => 'Митний ідентифікатор', 'Date' => 'Дата', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'Ідентифікатор', 'ILV' => 'Ільв', 'Info' => 'Інформація', - 'IsActive' => 'Активний?', - 'Issues' => '', 'Item' => 'Елемент', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => 'Лот', 'MRR' => 'Пан', 'MTDSales' => 'Продажі MTD', - 'Machines' => '', 'Makespan' => 'Макіяж', 'Margin' => 'Маржа', 'Master' => 'Майстер', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => 'Name1', 'Name2' => 'Name2', 'Name3' => 'Name3', - 'Name4' => 'Name4', - 'Name5' => 'Назва5', 'Net' => 'Вага чистого', 'NetWeight' => 'Вага чистого', 'None' => 'Ніякий', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => 'Число', 'Ordered' => 'Упорядкований', 'Packaging' => 'Упаковка', - 'PartsList' => '', 'Price' => 'Ціна', 'PriceChange' => 'Зміна ціни', 'PriceUnit' => 'Одиниця ціни', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => 'Група продуктів', 'Production' => 'Виробництво', - 'ProductionSteps' => '', 'Profile' => 'Профіль', 'Properties' => 'Властивості', 'Property' => 'Майно', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => 'Сегмент', 'ShelfLife' => 'Термін придатності', - 'Source' => 'Джерело', 'Start' => 'Почати', 'Status' => 'Статус', 'Stock' => 'Запас', 'StockList' => 'Запасний список', 'Successor' => 'Наступник', 'Supplier' => 'Постачальник', - 'Tax' => 'Оподаткування', 'Text' => 'Текст', 'TimeUnit' => 'Підрозділ часу', 'Title' => 'Заголовок', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => 'Переклад', 'Type' => 'Тип', 'Unit' => 'Підрозділ', - 'UsedIn' => '', 'Value' => 'Вартість', - 'Variation' => 'Зміна', - 'Variations' => 'Варіації', 'Volume' => 'Обсяг', 'Warehouse' => 'Склад', 'Width' => 'Ширина', diff --git a/Theme/Backend/Lang/zh.lang.php b/Theme/Backend/Lang/zh.lang.php index 6e8b62d..1a71bef 100755 --- a/Theme/Backend/Lang/zh.lang.php +++ b/Theme/Backend/Lang/zh.lang.php @@ -15,8 +15,6 @@ declare(strict_types=1); return ['ItemManagement' => [ 'Accounting' => '会计', 'Address' => '', - 'All' => '全部', - 'Article' => '文章', 'Articlegroup' => '商品组', 'Attribute' => '属性', 'AttributeTypes' => '', @@ -38,7 +36,6 @@ return ['ItemManagement' => [ 'Country' => '国家', 'Created' => '创造了', 'CreatedAt' => '创造了', - 'Customer' => '顾客', 'CustomerGroup' => '客户组', 'CustomsID' => '海关ID', 'Date' => '日期', @@ -58,10 +55,7 @@ return ['ItemManagement' => [ 'ID' => 'ID', 'ILV' => 'ilv.', 'Info' => '信息', - 'IsActive' => '积极的?', - 'Issues' => '', 'Item' => '物品', - 'ItemGroup' => '', 'ItemSection' => '', 'ItemSegment' => '', 'ItemType' => '', @@ -78,7 +72,6 @@ return ['ItemManagement' => [ 'Lot' => '很多', 'MRR' => 'MRR.', 'MTDSales' => 'MTD销售', - 'Machines' => '', 'Makespan' => 'MEPESPAN.', 'Margin' => '利润', 'Master' => '掌握', @@ -90,8 +83,6 @@ return ['ItemManagement' => [ 'Name1' => '名称1', 'Name2' => '名称2.', 'Name3' => '名称3.', - 'Name4' => '名称4.', - 'Name5' => '姓名5.', 'Net' => '净重', 'NetWeight' => '净重', 'None' => '没有任何', @@ -99,7 +90,6 @@ return ['ItemManagement' => [ 'Number' => '数字', 'Ordered' => '订购', 'Packaging' => '打包', - 'PartsList' => '', 'Price' => '价格', 'PriceChange' => '价格变动', 'PriceUnit' => '价格单位', @@ -108,7 +98,6 @@ return ['ItemManagement' => [ 'Procurement' => '', 'Productgroup' => '产品组', 'Production' => '生产', - 'ProductionSteps' => '', 'Profile' => '轮廓', 'Properties' => '特性', 'Property' => '财产', @@ -128,14 +117,12 @@ return ['ItemManagement' => [ 'SalesPricing' => '', 'Segment' => '分割', 'ShelfLife' => '保质期', - 'Source' => '来源', 'Start' => '开始', 'Status' => '地位', 'Stock' => '库存', 'StockList' => '股票名单', 'Successor' => '接班人', 'Supplier' => '供应商', - 'Tax' => '税', 'Text' => '文本', 'TimeUnit' => '单位的时间', 'Title' => '标题', @@ -145,10 +132,7 @@ return ['ItemManagement' => [ 'Translation' => '翻译', 'Type' => '类型', 'Unit' => '单元', - 'UsedIn' => '', 'Value' => '价值', - 'Variation' => '变化', - 'Variations' => '变化', 'Volume' => '体积', 'Warehouse' => '仓库', 'Width' => '宽度', diff --git a/Theme/Backend/item-profile.tpl.php b/Theme/Backend/item-profile.tpl.php index c2f6dfe..31680ed 100755 --- a/Theme/Backend/item-profile.tpl.php +++ b/Theme/Backend/item-profile.tpl.php @@ -13,12 +13,19 @@ declare(strict_types=1); use Modules\Billing\Models\BillTransferType; +use Modules\Billing\Models\Price\PriceType; use Modules\Billing\Models\SalesBillMapper; use Modules\Media\Models\NullMedia; +use Modules\WarehouseManagement\Models\StockLocationMapper; +use Modules\WarehouseManagement\Models\StockMapper; use phpOMS\DataStorage\Database\Query\OrderType; +use phpOMS\Localization\ISO3166CharEnum; +use phpOMS\Localization\ISO3166NameEnum; +use phpOMS\Localization\ISO4217CharEnum; use phpOMS\Localization\ISO639Enum; use phpOMS\Localization\Money; use phpOMS\Localization\NullLocalization; +use phpOMS\Localization\RegionEnum; use phpOMS\Message\Http\HttpHeader; use phpOMS\Stdlib\Base\SmartDateTime; use phpOMS\Uri\UriFactory; @@ -38,7 +45,11 @@ $l11nView = $this->data['l11nView']; $languages = ISO639Enum::getConstants(); /** @var \phpOMS\Localization\Localization $l11n */ -$l11n = $this->getData('defaultlocalization') ?? new NullLocalization(); +$l11n = $this->getData('default_localization') ?? new NullLocalization(); + +$regions = RegionEnum::getConstants(); +$countries = ISO3166CharEnum::getConstants(); +$currencies = ISO4217CharEnum::getConstants(); echo $this->data['nav']->render(); ?> @@ -49,16 +60,15 @@ echo $this->data['nav']->render();
  • +
  • -
  • -
  • -
  • + +
  • -
  • -
  • +
  • @@ -162,8 +172,6 @@ echo $this->data['nav']->render(); ? 0 : ($item->salesPrice->getInt() - $item->purchasePrice->getInt()) / $item->salesPrice->getInt() * 100 , 'short'); ?> % - getHtml('AvgPrice'); ?>: - getCurrency(SalesBillMapper::getItemAvgSalesPrice($item->id, (new SmartDateTime('now'))->smartModify(-1), new SmartDateTime('now')), format: 'medium'); ?> @@ -503,122 +511,134 @@ echo $this->data['nav']->render(); - +
    -
    -
    getHtml('Pricing'); ?>download
    + +
    getHtml('Container'); ?>
    + + + +
    - - + +
    - - + +
    - - + +
    - - + +
    - - - + +
    - - + +
    - - -
    - -
    - - + +
    - + + +
    -
    +
    -
    getHtml('Prices'); ?>download
    +
    getHtml('Container'); ?>download
    - +
    + data['prices']; - foreach ($prices as $key => $value) : ++$c; - $url = UriFactory::build('{/base}/admin/group/settings?{?}&id=' . $value->id); ?> - - + -
    getHtml('ID', '0', '0'); ?>expand_lessexpand_more getHtml('Name'); ?>expand_lessexpand_more - getHtml('Price'); ?> getHtml('Quantity'); ?> - getHtml('Discount'); ?> - getHtml('DiscountP'); ?> - getHtml('Bonus'); ?> - getHtml('ItemGroup'); ?> - getHtml('ItemSegment'); ?> - getHtml('ItemSection'); ?> - getHtml('ItemType'); ?> - getHtml('ClientGroup'); ?> - getHtml('ClientSegment'); ?> - getHtml('ClientSection'); ?> - getHtml('ClientType'); ?> - getHtml('Country'); ?> - getHtml('Start'); ?> - getHtml('End'); ?> + getHtml('Weight'); ?> + getHtml('WidthLength'); ?> + getHtml('Height'); ?> + getHtml('Depth'); ?> + getHtml('Volume'); ?>
    close - id; ?> - printHtml($value->name); ?> - printHtml($value->price->getAmount()); ?> - printHtml((string) $value->quantity); ?> - printHtml((string) $value->discount); ?> - printHtml((string) $value->discountPercentage); ?> - printHtml((string) $value->bonus); ?> - printHtml((string) $value->itemgroup->getL11n()); ?> - printHtml((string) $value->itemsegment->getL11n()); ?> - printHtml((string) $value->itemsection->getL11n()); ?> - printHtml((string) $value->itemtype->getL11n()); ?> - printHtml((string) $value->clientgroup->getL11n()); ?> - printHtml((string) $value->clientsegment->getL11n()); ?> - printHtml((string) $value->clientsection->getL11n()); ?> - printHtml((string) $value->clienttype->getL11n()); ?> - printHtml((string) $value->clientcountry); ?> - printHtml((string) $value->start?->format('Y-m-d')); ?> - printHtml((string) $value->end?->format('Y-m-d')); ?> + $containers = $this->data['containers'] ?? []; + foreach ($containers as $key => $value) : ++$c; + ?> +
    + settings + name !== 'base') : ?> + + + + + + + + id; ?> + printHtml($value->name); ?> + printHtml($value->promocode); ?> + printHtml($value->price->getAmount()); ?> + printHtml($value->currency); ?> + printHtml((string) $value->quantity); ?> + printHtml((string) $value->discount); ?> + printHtml((string) $value->discountPercentage); ?>
    getHtml('Empty', '0', '0'); ?> + getHtml('Empty', '0', '0'); ?>
    @@ -626,41 +646,404 @@ echo $this->data['nav']->render();
    + + +
    +
    +
    +
    +
    +
    getHtml('Pricing'); ?>
    +
    + + + + +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    + +
    + + +
    +
    +
    +
    +
    +
    +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    +
    + +
    +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    +
    +
    + + + +
    +
    +
    +
    + +
    +
    +
    getHtml('Prices'); ?>download
    +
    + + + + + + data['prices']; + foreach ($prices as $key => $value) : ++$c; + ?> + + +
    + getHtml('ID', '0', '0'); ?>expand_lessexpand_more + getHtml('Name'); ?>expand_lessexpand_more + getHtml('Promocode'); ?> + getHtml('Price'); ?> + + getHtml('Quantity'); ?> + getHtml('Discount'); ?> + getHtml('DiscountP'); ?> + getHtml('Bonus'); ?> + getHtml('ItemSegment'); ?> + getHtml('ItemSection'); ?> + getHtml('ItemSalesGroup'); ?> + getHtml('ItemProductGroup'); ?> + getHtml('ItemType'); ?> + getHtml('ClientSegment'); ?> + getHtml('ClientSection'); ?> + getHtml('ClientGroup'); ?> + getHtml('ClientType'); ?> + getHtml('Region'); ?> + getHtml('Start'); ?> + getHtml('End'); ?> +
    + settings + name !== 'base') : ?> + + + + + + + + id; ?> + printHtml($value->name); ?> + printHtml($value->promocode); ?> + printHtml($value->price->getAmount()); ?> + printHtml($value->currency); ?> + printHtml((string) $value->quantity); ?> + printHtml((string) $value->discount); ?> + printHtml((string) $value->discountPercentage); ?> + printHtml((string) $value->bonus); ?> + printHtml((string) $value->itemsegment->getL11n()); ?> + printHtml((string) $value->itemsection->getL11n()); ?> + printHtml((string) $value->itemsalesgroup->getL11n()); ?> + printHtml((string) $value->itemproductgroup->getL11n()); ?> + printHtml((string) $value->itemtype->getL11n()); ?> + printHtml((string) $value->clientsegment->getL11n()); ?> + printHtml((string) $value->clientsection->getL11n()); ?> + printHtml((string) $value->clientgroup->getL11n()); ?> + printHtml((string) $value->clienttype->getL11n()); ?> + printHtml((string) $value->clientcountry); ?> + start?->format('Y-m-d'); ?> + end?->format('Y-m-d'); ?> + + +
    getHtml('Empty', '0', '0'); ?> + +
    +
    +
    +
    +
    +
    +
    -
    -
    getHtml('Purchase'); ?>
    + +
    getHtml('Procurement'); ?>
    - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    +
    + + +
    + +
    + + +
    + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    @@ -671,52 +1054,91 @@ echo $this->data['nav']->render();
    - +
    getHtml('Pricing'); ?>download
    + + + +
    - - + +
    - - + + +
    +
    +
    +
    +
    +
    +
    + +
    +
    + +
    +
    + +
    +
    +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    - - + +
    +
    +
    +
    +
    +
    +
    + + +
    +
    -
    - - -
    - -
    - - - -
    - -
    - - -
    - -
    - - -
    - -
    - - +
    +
    + + +
    +
    @@ -728,198 +1150,170 @@ echo $this->data['nav']->render();
    -
    getHtml('Prices'); ?>download
    - +
    getHtml('Suppliers'); ?>download
    +
    +
    - $value) : ++$c; - $url = UriFactory::build('{/base}/admin/group/settings?{?}&id=' . $value->id); ?> - - + -
    getHtml('ID', '0', '0'); ?>expand_lessexpand_more - getHtml('Name'); ?>expand_lessexpand_more + getHtml('Name'); ?>expand_lessexpand_more + getHtml('Supplier'); ?> + getHtml('Price'); ?> + + getHtml('Quantity'); ?> + getHtml('Discount'); ?> + getHtml('DiscountP'); ?> + getHtml('Bonus'); ?> + getHtml('Start'); ?> + getHtml('End'); ?>
    close - id; ?> - printHtml($value->name); ?> + + data['purchase_prices']; + foreach ($prices as $key => $value) : ++$c; + ?> +
    + settings + name !== 'base') : ?> + + + + + + + + id; ?> + printHtml($value->name); ?> + printHtml($value->promocode); ?> + printHtml($value->price->getAmount()); ?> + printHtml($value->currency); ?> + printHtml((string) $value->quantity); ?> + printHtml((string) $value->discount); ?> + printHtml((string) $value->discountPercentage); ?> + printHtml((string) $value->bonus); ?> + printHtml((string) $value->itemsegment->getL11n()); ?> + printHtml((string) $value->itemsection->getL11n()); ?> + printHtml((string) $value->itemsalesgroup->getL11n()); ?> + printHtml((string) $value->itemproductgroup->getL11n()); ?> + printHtml((string) $value->itemtype->getL11n()); ?> + printHtml((string) $value->clientsegment->getL11n()); ?> + printHtml((string) $value->clientsection->getL11n()); ?> + printHtml((string) $value->clientgroup->getL11n()); ?> + printHtml((string) $value->clienttype->getL11n()); ?> + printHtml((string) $value->clientcountry); ?> + start?->format('Y-m-d'); ?> + end?->format('Y-m-d'); ?>
    getHtml('Empty', '0', '0'); ?> + getHtml('Empty', '0', '0'); ?>
    +
    - -
    -
    -
    -
    -
    getHtml('PartsList'); ?>
    -
    -
    -
    -
    -
    -
    getHtml('UsedIn'); ?>
    -
    -
    -
    -
    - -
    -
    -
    -
    getHtml('ProductionSteps'); ?>
    -
    -
    -
    - -
    -
    -
    getHtml('Machines'); ?>
    -
    -
    -
    -
    - -
    -
    -
    -
    getHtml('Documents'); ?>
    -
    -
    -
    -
    -
    - -
    -
    -
    -
    -
    getHtml('Issues'); ?>
    -
    -
    -
    - -
    -
    -
    getHtml('UsedIn'); ?>
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    getHtml('General'); ?>
    -
    - - - - - - - - - - - - - - - - - - -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    -
    -
    +
    -
    -
    -

    getHtml('General'); ?>

    -
    -
    -
    - - - - - - - - - - -
    -
    - -
    -
    - -
    -
    - -
    -
    - -
    -
    -
    +
    +
    +
    getHtml('Accounting'); ?>
    +
    +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    +
    +
    + +
    +
    @@ -927,13 +1321,78 @@ echo $this->data['nav']->render();
    -
    -
    -
    +
    +
    +
    +
    +
    getHtml('Stock'); ?>
    +
    + + +
    + + +
    + +
    + + +
    + +
    + + +
    +
    +
    + +
    +
    +
    +
    @@ -953,6 +1412,7 @@ echo $this->data['nav']->render();
    getHtml('RecentInvoices'); ?>
    +
    @@ -977,6 +1437,7 @@ echo $this->data['nav']->render();
    createdAt->format('Y-m-d'); ?>
    +
    diff --git a/Theme/Backend/material-type-list.tpl.php b/Theme/Backend/material-type-list.tpl.php new file mode 100644 index 0000000..cf0d2f8 --- /dev/null +++ b/Theme/Backend/material-type-list.tpl.php @@ -0,0 +1,71 @@ +data['types']; + +echo $this->data['nav']->render(); ?> + +
    +
    +
    +
    getHtml('Materials'); ?>download
    +
    + + + + + $value) : ++$count; + $url = UriFactory::build('{/base}/bill/payment/view?{?}&id=' . $value->id); + ?> + +
    getHtml('ID', '0', '0'); ?> + + + + getHtml('Name'); ?> + + + +
    id; ?> + printHtml($value->getL11n()); ?> + + +
    getHtml('Empty', '0', '0'); ?> + +
    +
    +
    +
    +
    diff --git a/Theme/Backend/material-view.tpl.php b/Theme/Backend/material-view.tpl.php new file mode 100644 index 0000000..48a577d --- /dev/null +++ b/Theme/Backend/material-view.tpl.php @@ -0,0 +1,53 @@ +data['type']; + +/** @var \phpOMS\Views\View $this */ +echo $this->data['nav']->render(); ?> +
    +
    +
    +
    +
    getHtml('Material'); ?>
    +
    +
    + + +
    +
    + +
    + + +
    +
    +
    +
    +
    + +
    + data['l11nView']->render( + $this->data['l11nValues'], + [], + '{/api}item/material/l11n' + ); + ?> +
    \ No newline at end of file diff --git a/Theme/Backend/sales-item-profile.tpl.php b/Theme/Backend/sales-item-profile.tpl.php index 3de7418..686f8dd 100755 --- a/Theme/Backend/sales-item-profile.tpl.php +++ b/Theme/Backend/sales-item-profile.tpl.php @@ -36,7 +36,7 @@ $monthlySalesCosts = $this->data['monthlySalesCosts'] ?? []; $languages = ISO639Enum::getConstants(); /** @var \phpOMS\Localization\Localization $l11n */ -$l11n = $this->getData('defaultlocalization') ?? new NullLocalization(); +$l11n = $this->getData('default_localization') ?? new NullLocalization(); echo $this->data['nav']->render(); ?>