stan fixes

This commit is contained in:
bs
2026-08-22 02:47:36 -07:00
parent 8e142f56ab
commit 134e23bf98
33 changed files with 179 additions and 218 deletions
+2 -2
View File
@@ -12,7 +12,7 @@
"bentools/cartesian-product": "^2.0" "bentools/cartesian-product": "^2.0"
}, },
"require-dev": { "require-dev": {
"phpunit/phpunit": "^10.1", "phpunit/phpunit": "^10.3",
"cakephp/migrations": "^4.0.0", "cakephp/migrations": "^4.0.0",
"cakedc/cakephp-phpstan": "^4.1", "cakedc/cakephp-phpstan": "^4.1",
"dereuromark/composer-prefer-lowest": "^0.1.10", "dereuromark/composer-prefer-lowest": "^0.1.10",
@@ -47,7 +47,7 @@
}, },
"config": { "config": {
"allow-plugins": { "allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true "dealerdirect/phpcodesniffer-composer-installer": false
} }
} }
} }
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProductCatalogs extends AbstractMigration { class CreateProductCatalogs extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProductCategories extends AbstractMigration { class CreateProductCategories extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProducts extends AbstractMigration { class CreateProducts extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProductCategoryAttributes extends AbstractMigration { class CreateProductCategoryAttributes extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProductCategoryAttributeOptions extends AbstractMigration { class CreateProductCategoryAttributeOptions extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateExternalProductCatalogs extends AbstractMigration { class CreateExternalProductCatalogs extends BaseMigration {
/** /**
* Change Method. * Change Method.
@@ -1,9 +1,9 @@
<?php <?php
declare(strict_types=1); declare(strict_types=1);
use Migrations\AbstractMigration; use Migrations\BaseMigration;
class CreateProductCategoryVariants extends AbstractMigration { class CreateProductCategoryVariants extends BaseMigration {
/** /**
* Change Method. * Change Method.
+10
View File
@@ -0,0 +1,10 @@
includes:
- vendor/cakedc/cakephp-phpstan/extension.neon
parameters:
level: 4
paths:
- src
bootstrapFiles:
- tests/bootstrap.php
treatPhpDocTypesAsCertain: false
@@ -19,8 +19,6 @@ class ExternalProductCatalogsController extends AppController {
*/ */
public function initialize(): void { public function initialize(): void {
parent::initialize(); // TODO: Change the autogenerated stub parent::initialize(); // TODO: Change the autogenerated stub
// $this->_defaultTable = 'CakeProducts.ExternalProductCatalogs';
// $this->_tableConfigKey = 'CakeProducts.ExternalProductCatalogs.table';
} }
/** /**
@@ -29,7 +27,7 @@ class ExternalProductCatalogsController extends AppController {
* @return \Cake\Http\Response|null|void Renders view * @return \Cake\Http\Response|null|void Renders view
*/ */
public function index() { public function index() {
$query = $this->ExternalProductCatalogs->find() $query = $this->fetchTable()->find()
->contain(['ProductCatalogs']); ->contain(['ProductCatalogs']);
$externalProductCatalogs = $this->paginate($query); $externalProductCatalogs = $this->paginate($query);
@@ -44,7 +42,7 @@ class ExternalProductCatalogsController extends AppController {
* @return \Cake\Http\Response|null|void Renders view * @return \Cake\Http\Response|null|void Renders view
*/ */
public function view($id = null) { public function view($id = null) {
$externalProductCatalog = $this->ExternalProductCatalogs->get($id, contain: ['ProductCatalogs']); $externalProductCatalog = $this->fetchTable()->get($id, contain: ['ProductCatalogs']);
$this->set(compact('externalProductCatalog')); $this->set(compact('externalProductCatalog'));
} }
@@ -54,7 +52,7 @@ class ExternalProductCatalogsController extends AppController {
* @return \Cake\Http\Response|null|void Redirects on successful add, renders view otherwise. * @return \Cake\Http\Response|null|void Redirects on successful add, renders view otherwise.
*/ */
public function add() { public function add() {
$externalProductCatalog = $this->ExternalProductCatalogs->newEmptyEntity(); $externalProductCatalog = $this->fetchTable()->newEmptyEntity();
if ($this->request->is('post')) { if ($this->request->is('post')) {
$saveOptions = [ $saveOptions = [
'associated' => [ 'associated' => [
@@ -64,8 +62,8 @@ class ExternalProductCatalogsController extends AppController {
$postData = $this->request->getData(); $postData = $this->request->getData();
Log::debug(print_r('$postData', true)); Log::debug(print_r('$postData', true));
Log::debug(print_r($postData, true)); Log::debug(print_r($postData, true));
$externalProductCatalog = $this->ExternalProductCatalogs->patchEntity($externalProductCatalog, $postData, $saveOptions); $externalProductCatalog = $this->fetchTable()->patchEntity($externalProductCatalog, $postData, $saveOptions);
if ($this->ExternalProductCatalogs->save($externalProductCatalog, $saveOptions)) { if ($this->fetchTable()->save($externalProductCatalog, $saveOptions)) {
$this->Flash->success(__('The external product catalog has been saved.')); $this->Flash->success(__('The external product catalog has been saved.'));
return $this->redirect(['action' => 'index']); return $this->redirect(['action' => 'index']);
@@ -74,7 +72,7 @@ class ExternalProductCatalogsController extends AppController {
Log::debug(print_r($externalProductCatalog->getErrors(), true)); Log::debug(print_r($externalProductCatalog->getErrors(), true));
$this->Flash->error(__('The external product catalog could not be saved. Please, try again.')); $this->Flash->error(__('The external product catalog could not be saved. Please, try again.'));
} }
$productCatalogs = $this->ExternalProductCatalogs->ProductCatalogs->find('list', limit: 200)->all(); $productCatalogs = $this->fetchTable()->ProductCatalogs->find('list', limit: 200)->all();
$this->set(compact('externalProductCatalog', 'productCatalogs')); $this->set(compact('externalProductCatalog', 'productCatalogs'));
} }
@@ -86,10 +84,10 @@ class ExternalProductCatalogsController extends AppController {
* @return \Cake\Http\Response|null|void Redirects on successful edit, renders view otherwise. * @return \Cake\Http\Response|null|void Redirects on successful edit, renders view otherwise.
*/ */
public function edit($id = null) { public function edit($id = null) {
$externalProductCatalog = $this->ExternalProductCatalogs->get($id, contain: []); $externalProductCatalog = $this->fetchTable()->get($id, contain: []);
if ($this->request->is(['patch', 'post', 'put'])) { if ($this->request->is(['patch', 'post', 'put'])) {
$externalProductCatalog = $this->ExternalProductCatalogs->patchEntity($externalProductCatalog, $this->request->getData()); $externalProductCatalog = $this->fetchTable()->patchEntity($externalProductCatalog, $this->request->getData());
if ($this->ExternalProductCatalogs->save($externalProductCatalog)) { if ($this->fetchTable()->save($externalProductCatalog)) {
$this->Flash->success(__('The external product catalog has been saved.')); $this->Flash->success(__('The external product catalog has been saved.'));
return $this->redirect(['action' => 'index']); return $this->redirect(['action' => 'index']);
@@ -98,7 +96,7 @@ class ExternalProductCatalogsController extends AppController {
Log::debug(print_r($externalProductCatalog->getErrors(), true)); Log::debug(print_r($externalProductCatalog->getErrors(), true));
$this->Flash->error(__('The external product catalog could not be saved. Please, try again.')); $this->Flash->error(__('The external product catalog could not be saved. Please, try again.'));
} }
$productCatalogs = $this->ExternalProductCatalogs->ProductCatalogs->find('list', limit: 200)->all(); $productCatalogs = $this->fetchTable()->ProductCatalogs->find('list', limit: 200)->all();
$this->set(compact('externalProductCatalog', 'productCatalogs')); $this->set(compact('externalProductCatalog', 'productCatalogs'));
} }
@@ -111,8 +109,8 @@ class ExternalProductCatalogsController extends AppController {
*/ */
public function delete($id = null) { public function delete($id = null) {
$this->request->allowMethod(['post', 'delete']); $this->request->allowMethod(['post', 'delete']);
$externalProductCatalog = $this->ExternalProductCatalogs->get($id); $externalProductCatalog = $this->fetchTable()->get($id);
if ($this->ExternalProductCatalogs->delete($externalProductCatalog)) { if ($this->fetchTable()->delete($externalProductCatalog)) {
$this->Flash->success(__('The external product catalog has been deleted.')); $this->Flash->success(__('The external product catalog has been deleted.'));
} else { } else {
$this->Flash->error(__('The external product catalog could not be deleted. Please, try again.')); $this->Flash->error(__('The external product catalog could not be deleted. Please, try again.'));
@@ -24,7 +24,7 @@ class ProductCategoryAttributesController extends AppController {
/** /**
* Index method * Index method
* *
* @return \Cake\Http\Response|voidRenders|null view * @return \Cake\Http\Response|null|void Renders view
*/ */
public function index() { public function index() {
$query = $this->ProductCategoryAttributes->find() $query = $this->ProductCategoryAttributes->find()
@@ -53,7 +53,7 @@ class ProductCategoryAttributesController extends AppController {
/** /**
* Add method * Add method
* *
* @return \Cake\Http\Response|voidRedirects|null on successful add, renders view otherwise. * @return \Cake\Http\Response|null|void Redirects on successful add, renders view otherwise.
*/ */
public function add() { public function add() {
$productCategoryAttributesTable = $this->ProductCategoryAttributes; $productCategoryAttributesTable = $this->ProductCategoryAttributes;
@@ -8,7 +8,7 @@ use Cake\Log\Log;
/** /**
* ProductCategoryVariants Controller * ProductCategoryVariants Controller
* *
* @property \App\Model\Table\ProductCategoryVariantsTable $ProductCategoryVariants * @property CakeProducts\Model\Table\ProductCategoryVariantsTable $ProductCategoryVariants
*/ */
class ProductCategoryVariantsController extends AppController { class ProductCategoryVariantsController extends AppController {
+5 -6
View File
@@ -4,7 +4,6 @@ declare(strict_types=1);
namespace CakeProducts\Controller; namespace CakeProducts\Controller;
use Cake\Core\Configure; use Cake\Core\Configure;
use Cake\Datasource\Exception\RecordNotFoundException;
use Cake\Http\Exception\ForbiddenException; use Cake\Http\Exception\ForbiddenException;
use Cake\Utility\Text; use Cake\Utility\Text;
@@ -32,7 +31,7 @@ class ProductPhotosController extends AppController {
* View method * View method
* *
* @param string|null $id Product Photo id. * @param string|null $id Product Photo id.
* @throws RecordNotFoundException When record not found. * @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return \Cake\Http\Response|null|void Renders view * @return \Cake\Http\Response|null|void Renders view
*/ */
public function view($id = null) { public function view($id = null) {
@@ -146,7 +145,7 @@ class ProductPhotosController extends AppController {
* Edit method * Edit method
* *
* @param string|null $id Product Photo id. * @param string|null $id Product Photo id.
* @throws RecordNotFoundException When record not found. * @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return Response|null|void Redirects on successful edit, renders view otherwise. * @return Response|null|void Redirects on successful edit, renders view otherwise.
*/ */
public function edit($id = null) { public function edit($id = null) {
@@ -172,7 +171,7 @@ class ProductPhotosController extends AppController {
* Delete method * Delete method
* *
* @param string|null $id Product Photo id. * @param string|null $id Product Photo id.
* @throws RecordNotFoundException When record not found. * @throws \Cake\Datasource\Exception\RecordNotFoundException When record not found.
* @return Response|null Redirects to index. * @return Response|null Redirects to index.
*/ */
public function delete($id = null) { public function delete($id = null) {
@@ -190,8 +189,8 @@ class ProductPhotosController extends AppController {
} }
/** /**
* @param $id * @param string|null $id
* @return Response * @return \Cake\Http\Response
*/ */
public function image($id = null) { public function image($id = null) {
$productPhoto = $this->ProductPhotos->get($id); $productPhoto = $this->ProductPhotos->get($id);
+1 -1
View File
@@ -8,7 +8,7 @@ use Cake\Log\Log;
/** /**
* ProductVariants Controller * ProductVariants Controller
* *
* @property \App\Model\Table\ProductVariantsTable $ProductVariants * @property CakeProducts\Model\Table\ProductVariantsTable $ProductVariants
*/ */
class ProductVariantsController extends AppController { class ProductVariantsController extends AppController {
-2
View File
@@ -17,8 +17,6 @@ class ProductsController extends AppController {
*/ */
public function initialize(): void { public function initialize(): void {
parent::initialize(); // TODO: Change the autogenerated stub parent::initialize(); // TODO: Change the autogenerated stub
// $this->_defaultTable = 'CakeProducts.Products';
// $this->_tableConfigKey = 'CakeProducts.Products.table';
} }
/** /**
@@ -15,7 +15,7 @@ use Cake\ORM\Entity;
* @property \Cake\I18n\DateTime $modified * @property \Cake\I18n\DateTime $modified
* @property \Cake\I18n\DateTime|null $deleted * @property \Cake\I18n\DateTime|null $deleted
* *
* @property \App\Model\Entity\ProductCategoryVariant $product_category_variant * @property CakeProducts\Model\Entity\ProductCategoryVariant $product_category_variant
*/ */
class ProductCategoryVariantOption extends Entity { class ProductCategoryVariantOption extends Entity {
+2 -2
View File
@@ -14,8 +14,8 @@ use Cake\ORM\Entity;
* @property string $product_id * @property string $product_id
* @property bool $enabled * @property bool $enabled
* *
* @property \App\Model\Entity\ProductCategoryVariant $product_category_variant * @property CakeProducts\Model\Entity\ProductCategoryVariant $product_category_variant
* @property \App\Model\Entity\Product $product * @property CakeProducts\Model\Entity\Product $product
*/ */
class ProductVariant extends Entity { class ProductVariant extends Entity {
@@ -1,23 +1,25 @@
<?php <?php
namespace CakeProducts\Model\Enum; namespace CakeProducts\Model\Enum;
use Cake\Database\Type\EnumLabelInterface; use Cake\Database\Type\EnumLabelInterface;
use Tools\Model\Enum\EnumOptionsTrait; use Tools\Model\Enum\EnumOptionsTrait;
enum ProductCategoryAttributeTypeId: int implements EnumLabelInterface enum ProductCategoryAttributeTypeId: int implements EnumLabelInterface {
{ use EnumOptionsTrait;
use EnumOptionsTrait;
case Constrained = 1; case Constrained = 1;
case Text = 2; case Text = 2;
case Integer = 3; case Integer = 3;
public function label(): string /**
{ * @return string
return match($this) { */
self::Constrained => 'Constrained', public function label(): string {
self::Text => 'Text', return match ($this) {
self::Integer => 'Integer' ProductCategoryAttributeTypeId::Constrained => 'Constrained',
}; ProductCategoryAttributeTypeId::Text => 'Text',
} ProductCategoryAttributeTypeId::Integer => 'Integer'
};
}
} }
+20 -17
View File
@@ -1,4 +1,5 @@
<?php <?php
namespace CakeProducts\Model\Enum; namespace CakeProducts\Model\Enum;
use Cake\Database\Type\EnumLabelInterface; use Cake\Database\Type\EnumLabelInterface;
@@ -6,24 +7,26 @@ use Tools\Model\Enum\EnumOptionsTrait;
enum ProductProductTypeId: int implements EnumLabelInterface enum ProductProductTypeId: int implements EnumLabelInterface
{ {
use EnumOptionsTrait; use EnumOptionsTrait;
case Service = 1; case Service = 1;
case Product = 2; case Product = 2;
case Consumable = 3; case Consumable = 3;
case DigitalGood = 4; case DigitalGood = 4;
case Subscription = 5; case Subscription = 5;
// case Event = 5; // case Event = 5;
public function label(): string /**
{ * @return string
return match($this) { */
self::Service => 'Service', public function label(): string {
self::Product => 'Product', return match ($this) {
self::Consumable => 'Consumable', ProductProductTypeId::Service => 'Service',
self::DigitalGood => 'Digital Good', ProductProductTypeId::Product => 'Product',
self::Subscription => 'Subscription', ProductProductTypeId::Consumable => 'Consumable',
// self::Event => 'Event', ProductProductTypeId::DigitalGood => 'Digital Good',
}; ProductProductTypeId::Subscription => 'Subscription',
} // ProductProductTypeId::Event => 'Event',
};
}
} }
@@ -6,6 +6,7 @@ namespace CakeProducts\Model\Table;
use ArrayObject; use ArrayObject;
use Cake\Core\Configure; use Cake\Core\Configure;
use Cake\Event\EventInterface; use Cake\Event\EventInterface;
use Cake\ORM\Behavior\TimestampBehavior;
use Cake\ORM\RulesChecker; use Cake\ORM\RulesChecker;
use Cake\ORM\Table; use Cake\ORM\Table;
use Cake\Validation\Validator; use Cake\Validation\Validator;
@@ -13,22 +14,18 @@ use Cake\Validation\Validator;
/** /**
* ExternalProductCatalogsProductCatalogs Model * ExternalProductCatalogsProductCatalogs Model
* *
* @property ExternalProductCatalogsTable&BelongsTo $ExternalProductCatalogs * @property ExternalProductCatalogsTable&\Cake\ORM\Association\BelongsTo $ExternalProductCatalogs
* @property ProductCatalogsTable&BelongsTo $ProductCatalogs * @property ProductCatalogsTable&\Cake\ORM\Association\BelongsTo $ProductCatalogs
* *
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog newEmptyEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog newEmptyEntity()
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog newEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog newEntity()
* @method array<ExternalProductCatalogsProductCatalog> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog get() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog get()
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog findOrCreate() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog findOrCreate()
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog patchEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog patchEntity()
* @method array<ExternalProductCatalogsProductCatalog> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog> patchEntities(iterable $entities, array $data, array $options = [])
* @method ExternalProductCatalogsProductCatalog|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog|false save(\CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog saveOrFail() * @method \CakeProducts\Model\Entity\ExternalProductCatalogsProductCatalog saveOrFail()
* @method iterable<ExternalProductCatalogsProductCatalog>|ResultSetInterface<ExternalProductCatalogsProductCatalog>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalogsProductCatalog>|ResultSetInterface<ExternalProductCatalogsProductCatalog> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalogsProductCatalog>|ResultSetInterface<ExternalProductCatalogsProductCatalog>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalogsProductCatalog>|ResultSetInterface<ExternalProductCatalogsProductCatalog> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TimestampBehavior * @mixin TimestampBehavior
*/ */
@@ -11,23 +11,19 @@ use Cake\Validation\Validator;
/** /**
* ExternalProductCatalogs Model * ExternalProductCatalogs Model
* *
* @property ProductCatalogsTable&BelongsTo $ProductCatalogs * @property ProductCatalogsTable&\Cake\ORM\Association\BelongsTo $ProductCatalogs
* *
* @method \CakeProducts\Model\Entity\ExternalProductCatalog newEmptyEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalog newEmptyEntity()
* @method \CakeProducts\Model\Entity\ExternalProductCatalog newEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalog newEntity()
* @method array<ExternalProductCatalog> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ExternalProductCatalog> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ExternalProductCatalog get() * @method \CakeProducts\Model\Entity\ExternalProductCatalog get()
* @method \CakeProducts\Model\Entity\ExternalProductCatalog findOrCreate() * @method \CakeProducts\Model\Entity\ExternalProductCatalog findOrCreate()
* @method \CakeProducts\Model\Entity\ExternalProductCatalog patchEntity() * @method \CakeProducts\Model\Entity\ExternalProductCatalog patchEntity()
* @method array<ExternalProductCatalog> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ExternalProductCatalog> patchEntities(iterable $entities, array $data, array $options = [])
* @method ExternalProductCatalog|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ExternalProductCatalog|false save(\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ExternalProductCatalog saveOrFail() * @method \CakeProducts\Model\Entity\ExternalProductCatalog saveOrFail()
* @method iterable<ExternalProductCatalog>|ResultSetInterface<ExternalProductCatalog>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalog>|ResultSetInterface<ExternalProductCatalog> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalog>|ResultSetInterface<ExternalProductCatalog>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ExternalProductCatalog>|ResultSetInterface<ExternalProductCatalog> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TimestampBehavior * @mixin \Cake\ORM\Behavior\TimestampBehavior
*/ */
class ExternalProductCatalogsTable extends Table { class ExternalProductCatalogsTable extends Table {
+16 -16
View File
@@ -11,23 +11,23 @@ use Cake\Validation\Validator;
/** /**
* ProductAttributes Model * ProductAttributes Model
* *
* @property \App\Model\Table\ProductsTable&\Cake\ORM\Association\BelongsTo $Products * @property ProductsTable&\Cake\ORM\Association\BelongsTo $Products
* @property \App\Model\Table\ProductCategoryAttributesTable&\Cake\ORM\Association\BelongsTo $ProductCategoryAttributes * @property ProductCategoryAttributesTable&\Cake\ORM\Association\BelongsTo $ProductCategoryAttributes
* @property \App\Model\Table\ProductCategoryAttributeOptionsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryAttributeOptions * @property ProductCategoryAttributeOptionsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryAttributeOptions
* *
* @method \App\Model\Entity\ProductAttribute newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductAttribute newEmptyEntity()
* @method \App\Model\Entity\ProductAttribute newEntity(array $data, array $options = []) * @method \CakeProducts\Model\Entity\ProductAttribute newEntity(array $data, array $options = [])
* @method array<\App\Model\Entity\ProductAttribute> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductAttribute> newEntities(array $data, array $options = [])
* @method \App\Model\Entity\ProductAttribute get(mixed $primaryKey, array|string $finder = 'all', \Psr\SimpleCache\CacheInterface|string|null $cache = null, \Closure|string|null $cacheKey = null, mixed ...$args) * @method \CakeProducts\Model\Entity\ProductAttribute get(mixed $primaryKey, array|string $finder = 'all', \Psr\SimpleCache\CacheInterface|string|null $cache = null, \Closure|string|null $cacheKey = null, mixed ...$args)
* @method \App\Model\Entity\ProductAttribute findOrCreate($search, ?callable $callback = null, array $options = []) * @method \CakeProducts\Model\Entity\ProductAttribute findOrCreate($search, ?callable $callback = null, array $options = [])
* @method \App\Model\Entity\ProductAttribute patchEntity(\Cake\Datasource\EntityInterface $entity, array $data, array $options = []) * @method \CakeProducts\Model\Entity\ProductAttribute patchEntity(\Cake\Datasource\EntityInterface $entity, array $data, array $options = [])
* @method array<\App\Model\Entity\ProductAttribute> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductAttribute> patchEntities(iterable $entities, array $data, array $options = [])
* @method \App\Model\Entity\ProductAttribute|false save(\Cake\Datasource\EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductAttribute|false save(\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \App\Model\Entity\ProductAttribute saveOrFail(\Cake\Datasource\EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductAttribute saveOrFail(\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method iterable<\App\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\App\Model\Entity\ProductAttribute>|false saveMany(iterable $entities, array $options = []) * @method iterable<\CakeProducts\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\CakeProducts\Model\Entity\ProductAttribute>|false saveMany(iterable $entities, array $options = [])
* @method iterable<\App\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\App\Model\Entity\ProductAttribute> saveManyOrFail(iterable $entities, array $options = []) * @method iterable<\CakeProducts\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\CakeProducts\Model\Entity\ProductAttribute> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<\App\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\App\Model\Entity\ProductAttribute>|false deleteMany(iterable $entities, array $options = []) * @method iterable<\CakeProducts\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\CakeProducts\Model\Entity\ProductAttribute>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<\App\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\App\Model\Entity\ProductAttribute> deleteManyOrFail(iterable $entities, array $options = []) * @method iterable<\CakeProducts\Model\Entity\ProductAttribute>|\Cake\Datasource\ResultSetInterface<\CakeProducts\Model\Entity\ProductAttribute> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductAttributesTable extends Table { class ProductAttributesTable extends Table {
+3 -7
View File
@@ -13,17 +13,13 @@ use Cake\Validation\Validator;
* *
* @method \CakeProducts\Model\Entity\ProductCatalog newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCatalog newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCatalog newEntity() * @method \CakeProducts\Model\Entity\ProductCatalog newEntity()
* @method array<ProductCatalog> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCatalog> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCatalog get() * @method \CakeProducts\Model\Entity\ProductCatalog get()
* @method \CakeProducts\Model\Entity\ProductCatalog findOrCreate() * @method \CakeProducts\Model\Entity\ProductCatalog findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCatalog patchEntity() * @method \CakeProducts\Model\Entity\ProductCatalog patchEntity()
* @method array<ProductCatalog> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCatalog> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductCatalog|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductCatalog|false save(\CakeProducts\Model\Entity\ProductCatalog|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCatalog saveOrFail() * @method \CakeProducts\Model\Entity\ProductCatalog saveOrFail()
* @method iterable<ProductCatalog>|ResultSetInterface<ProductCatalog>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCatalog>|ResultSetInterface<ProductCatalog> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCatalog>|ResultSetInterface<ProductCatalog>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCatalog>|ResultSetInterface<ProductCatalog> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductCatalogsTable extends Table { class ProductCatalogsTable extends Table {
+10 -14
View File
@@ -14,31 +14,27 @@ use CakeProducts\Model\Enum\ProductProductTypeId;
/** /**
* ProductCategories Model * ProductCategories Model
* *
* @property ProductCatalogsTable&BelongsTo $ProductCatalogs * @property ProductCatalogsTable&\Cake\ORM\Association\BelongsTo $ProductCatalogs
* @property ProductCategoriesTable&BelongsTo $ParentProductCategories * @property ProductCategoriesTable&\Cake\ORM\Association\BelongsTo $ParentProductCategories
* @property ProductCategoriesTable&HasMany $ChildProductCategories * @property ProductCategoriesTable&\Cake\ORM\Association\HasMany $ChildProductCategories
* *
* @method \CakeProducts\Model\Entity\ProductCategory newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCategory newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCategory newEntity() * @method \CakeProducts\Model\Entity\ProductCategory newEntity()
* @method array<ProductCategory> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategory> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategory get() * @method \CakeProducts\Model\Entity\ProductCategory get()
* @method \CakeProducts\Model\Entity\ProductCategory findOrCreate() * @method \CakeProducts\Model\Entity\ProductCategory findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCategory patchEntity() * @method \CakeProducts\Model\Entity\ProductCategory patchEntity()
* @method array<ProductCategory> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategory> patchEntities(iterable $entities, array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategory saveOrFail() * @method \CakeProducts\Model\Entity\ProductCategory saveOrFail()
* @method iterable<ProductCategory>|ResultSetInterface<ProductCategory>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCategory>|ResultSetInterface<ProductCategory> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCategory>|ResultSetInterface<ProductCategory>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCategory>|ResultSetInterface<ProductCategory> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TreeBehavior * @mixin \Cake\ORM\Behavior\TreeBehavior
*/ */
class ProductCategoriesTable extends Table { class ProductCategoriesTable extends Table {
/** /**
* Current scope for Tree behavior - per catalog * Current scope for Tree behavior - per catalog
* *
* @var string * @var string|int
*/ */
protected $treeCatalogId; protected $treeCatalogId;
@@ -115,7 +111,7 @@ class ProductCategoriesTable extends Table {
$this->getSchema()->setColumnType('default_product_type_id', EnumType::from(ProductProductTypeId::class)); $this->getSchema()->setColumnType('default_product_type_id', EnumType::from(ProductProductTypeId::class));
$this->behaviors()->Tree->setConfig('scope', ['product_catalog_id' => $this->treeCatalogId]); $this->getBehavior('Tree')->setConfig('scope', ['product_catalog_id' => $this->treeCatalogId]);
$this->addBehavior('Muffin/Trash.Trash'); $this->addBehavior('Muffin/Trash.Trash');
} }
@@ -181,7 +177,7 @@ class ProductCategoriesTable extends Table {
*/ */
public function setConfigureCatalogId(string $catalogId) { public function setConfigureCatalogId(string $catalogId) {
$this->treeCatalogId = $catalogId; $this->treeCatalogId = $catalogId;
$this->behaviors()->Tree->setConfig('scope', ['product_catalog_id' => $this->treeCatalogId]); $this->getBehavior('Tree')->setConfig('scope', ['product_catalog_id' => $this->treeCatalogId]);
} }
/** /**
@@ -193,7 +189,7 @@ class ProductCategoriesTable extends Table {
public function save(EntityInterface $entity, array $options = []): EntityInterface|false { public function save(EntityInterface $entity, array $options = []): EntityInterface|false {
$this->behaviors()->get('Tree')->setConfig([ $this->behaviors()->get('Tree')->setConfig([
'scope' => [ 'scope' => [
'product_catalog_id' => $entity->product_catalog_id, 'product_catalog_id' => $entity->product_catalog_id ?? null,
], ],
]); ]);
@@ -11,21 +11,17 @@ use Cake\Validation\Validator;
/** /**
* ProductCategoryAttributeOptions Model * ProductCategoryAttributeOptions Model
* *
* @property ProductCategoryAttributesTable&BelongsTo $ProductCategoryAttributes * @property ProductCategoryAttributesTable&\Cake\ORM\Association\BelongsTo $ProductCategoryAttributes
* *
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption newEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption newEntity()
* @method array<ProductCategoryAttributeOption> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryAttributeOption> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption get() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption get()
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption findOrCreate() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption patchEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption patchEntity()
* @method array<ProductCategoryAttributeOption> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryAttributeOption> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductCategoryAttributeOption|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption|false save(\CakeProducts\Model\Entity\ProductCategoryAttributeOption|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption saveOrFail() * @method \CakeProducts\Model\Entity\ProductCategoryAttributeOption saveOrFail()
* @method iterable<ProductCategoryAttributeOption>|ResultSetInterface<ProductCategoryAttributeOption>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttributeOption>|ResultSetInterface<ProductCategoryAttributeOption> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttributeOption>|ResultSetInterface<ProductCategoryAttributeOption>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttributeOption>|ResultSetInterface<ProductCategoryAttributeOption> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductCategoryAttributeOptionsTable extends Table { class ProductCategoryAttributeOptionsTable extends Table {
@@ -14,21 +14,17 @@ use CakeProducts\Model\Enum\ProductCategoryAttributeTypeId;
/** /**
* ProductCategoryAttributes Model * ProductCategoryAttributes Model
* *
* @property ProductCategoriesTable&BelongsTo $ProductCategories * @property ProductCategoriesTable&\Cake\ORM\Association\BelongsTo $ProductCategories
* *
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute newEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute newEntity()
* @method array<ProductCategoryAttribute> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryAttribute> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute get() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute get()
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute findOrCreate() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute patchEntity() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute patchEntity()
* @method array<ProductCategoryAttribute> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryAttribute> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductCategoryAttribute|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductCategoryAttribute|false save(\CakeProducts\Model\Entity\ProductCategoryAttribute|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryAttribute saveOrFail() * @method \CakeProducts\Model\Entity\ProductCategoryAttribute saveOrFail()
* @method iterable<ProductCategoryAttribute>|ResultSetInterface<ProductCategoryAttribute>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttribute>|ResultSetInterface<ProductCategoryAttribute> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttribute>|ResultSetInterface<ProductCategoryAttribute>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryAttribute>|ResultSetInterface<ProductCategoryAttribute> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductCategoryAttributesTable extends Table { class ProductCategoryAttributesTable extends Table {
@@ -134,12 +130,12 @@ class ProductCategoryAttributesTable extends Table {
->contain(['ProductCategoryAttributes', 'ProductCategoryAttributes.ProductCategoryAttributeOptions']); ->contain(['ProductCategoryAttributes', 'ProductCategoryAttributes.ProductCategoryAttributeOptions']);
} }
/** /**
* @param string $internalCategoryId * @param string $internalCategoryId
* @return array|array[]|\Cake\Datasource\EntityInterface[] * @return \Cake\Datasource\EntityInterface[]|array[]
*/ */
public function getAllCategoryAttributesForCategoryId(string $internalCategoryId) { public function getAllCategoryAttributesForCategoryId(string $internalCategoryId) {
return $this->find('allCategoryAttributesForCategoryId', $internalCategoryId)->toArray(); return $this->find('allCategoryAttributesForCategoryId', internalCategoryId: $internalCategoryId)->toArray();
} }
} }
@@ -11,23 +11,19 @@ use Cake\Validation\Validator;
/** /**
* ProductCategoryVariantOptions Model * ProductCategoryVariantOptions Model
* *
* @property ProductCategoryVariantsTable&BelongsTo $ProductCategoryVariants * @property ProductCategoryVariantsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryVariants
* *
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption newEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption newEntity()
* @method array<ProductCategoryVariantOption> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryVariantOption> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption get() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption get()
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption findOrCreate() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption patchEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption patchEntity()
* @method array<ProductCategoryVariantOption> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryVariantOption> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductCategoryVariantOption|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption|false save(\CakeProducts\Model\Entity\ProductCategoryVariantOption|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryVariantOption saveOrFail() * @method \CakeProducts\Model\Entity\ProductCategoryVariantOption saveOrFail()
* @method iterable<ProductCategoryVariantOption>|ResultSetInterface<ProductCategoryVariantOption>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariantOption>|ResultSetInterface<ProductCategoryVariantOption> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariantOption>|ResultSetInterface<ProductCategoryVariantOption>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariantOption>|ResultSetInterface<ProductCategoryVariantOption> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TimestampBehavior * @mixin \Cake\ORM\Behavior\TimestampBehavior
*/ */
class ProductCategoryVariantOptionsTable extends Table { class ProductCategoryVariantOptionsTable extends Table {
@@ -50,6 +46,7 @@ class ProductCategoryVariantOptionsTable extends Table {
$this->addBehavior('Timestamp'); $this->addBehavior('Timestamp');
$this->belongsTo('ProductCategoryVariants', [ $this->belongsTo('ProductCategoryVariants', [
'className' => 'CakeProducts.ProductCategoryVariants',
'foreignKey' => 'product_category_variant_id', 'foreignKey' => 'product_category_variant_id',
'joinType' => 'INNER', 'joinType' => 'INNER',
]); ]);
@@ -12,22 +12,18 @@ use Cake\Validation\Validator;
/** /**
* ProductCategoryVariants Model * ProductCategoryVariants Model
* *
* @property ProductCategoriesTable&BelongsTo $ProductCategories * @property ProductCategoriesTable&\Cake\ORM\Association\BelongsTo $ProductCategories
* @property ProductsTable&BelongsTo $Products * @property ProductsTable&\Cake\ORM\Association\BelongsTo $Products
* *
* @method \CakeProducts\Model\Entity\ProductCategoryVariant newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariant newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductCategoryVariant newEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariant newEntity()
* @method array<ProductCategoryVariant> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryVariant> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryVariant get() * @method \CakeProducts\Model\Entity\ProductCategoryVariant get()
* @method \CakeProducts\Model\Entity\ProductCategoryVariant findOrCreate() * @method \CakeProducts\Model\Entity\ProductCategoryVariant findOrCreate()
* @method \CakeProducts\Model\Entity\ProductCategoryVariant patchEntity() * @method \CakeProducts\Model\Entity\ProductCategoryVariant patchEntity()
* @method array<ProductCategoryVariant> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductCategoryVariant> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductCategoryVariant|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductCategoryVariant|false save(\CakeProducts\Model\Entity\ProductCategoryVariant|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductCategoryVariant saveOrFail() * @method \CakeProducts\Model\Entity\ProductCategoryVariant saveOrFail()
* @method iterable<ProductCategoryVariant>|ResultSetInterface<ProductCategoryVariant>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariant>|ResultSetInterface<ProductCategoryVariant> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariant>|ResultSetInterface<ProductCategoryVariant>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductCategoryVariant>|ResultSetInterface<ProductCategoryVariant> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductCategoryVariantsTable extends Table { class ProductCategoryVariantsTable extends Table {
@@ -126,9 +122,9 @@ class ProductCategoryVariantsTable extends Table {
* @param \Cake\ORM\Query\SelectQuery $query * @param \Cake\ORM\Query\SelectQuery $query
* @param string $internalCategoryId * @param string $internalCategoryId
* *
* @return Query|\Cake\ORM\Query\SelectQuery|array * @return \Cake\ORM\Query\SelectQuery
*/ */
public function findAllCategoryVariantsForCategoryId(SelectQuery $query, string $internalCategoryId) { public function findAllCategoryVariantsForCategoryId(SelectQuery $query, string $internalCategoryId): SelectQuery {
$category = $this->ProductCategories->find()->where(['internal_id' => $internalCategoryId])->firstOrFail(); $category = $this->ProductCategories->find()->where(['internal_id' => $internalCategoryId])->firstOrFail();
$this->ProductCategories->behaviors()->get('Tree')->setConfig([ $this->ProductCategories->behaviors()->get('Tree')->setConfig([
@@ -144,10 +140,11 @@ class ProductCategoryVariantsTable extends Table {
/** /**
* @param string $internalCategoryId * @param string $internalCategoryId
*
* @return array * @return array
*/ */
public function getAllCategoryVariantsForCategoryId(string $internalCategoryId) { public function getAllCategoryVariantsForCategoryId(string $internalCategoryId): array {
return $this->find('allCategoryVariantsForCategoryId', $internalCategoryId)->toArray(); return $this->find('allCategoryVariantsForCategoryId', internalCategoryId: $internalCategoryId)->toArray();
} }
} }
+6 -10
View File
@@ -11,24 +11,20 @@ use Cake\Validation\Validator;
/** /**
* ProductPhotos Model * ProductPhotos Model
* *
* @property ProductsTable&BelongsTo $Products * @property ProductsTable&\Cake\ORM\Association\BelongsTo $Products
* @property ProductSkusTable&BelongsTo $ProductSkus * @property ProductSkusTable&\Cake\ORM\Association\BelongsTo $ProductSkus
* *
* @method \CakeProducts\Model\Entity\ProductPhoto newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductPhoto newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductPhoto newEntity() * @method \CakeProducts\Model\Entity\ProductPhoto newEntity()
* @method array<ProductPhoto> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductPhoto> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductPhoto get() * @method \CakeProducts\Model\Entity\ProductPhoto get()
* @method \CakeProducts\Model\Entity\ProductPhoto findOrCreate() * @method \CakeProducts\Model\Entity\ProductPhoto findOrCreate()
* @method \CakeProducts\Model\Entity\ProductPhoto patchEntity() * @method \CakeProducts\Model\Entity\ProductPhoto patchEntity()
* @method array<ProductPhoto> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductPhoto> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductPhoto|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductPhoto|false save(\CakeProducts\Model\Entity\ProductPhoto|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductPhoto saveOrFail() * @method \CakeProducts\Model\Entity\ProductPhoto saveOrFail()
* @method iterable<ProductPhoto>|ResultSetInterface<ProductPhoto>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductPhoto>|ResultSetInterface<ProductPhoto> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductPhoto>|ResultSetInterface<ProductPhoto>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductPhoto>|ResultSetInterface<ProductPhoto> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TimestampBehavior * @mixin \Cake\ORM\Behavior\TimestampBehavior
*/ */
class ProductPhotosTable extends Table { class ProductPhotosTable extends Table {
@@ -10,23 +10,19 @@ use Cake\Validation\Validator;
/** /**
* ProductSkuVariantValues Model * ProductSkuVariantValues Model
* *
* @property ProductSkusTable&BelongsTo $ProductSkus * @property ProductSkusTable&\Cake\ORM\Association\BelongsTo $ProductSkus
* @property ProductCategoryVariantsTable&BelongsTo $ProductCategoryVariants * @property ProductCategoryVariantsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryVariants
* @property ProductCategoryVariantOptionsTable&BelongsTo $ProductCategoryVariantOptions * @property ProductCategoryVariantOptionsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryVariantOptions
* *
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue newEntity() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue newEntity()
* @method array<ProductSkuVariantValue> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductSkuVariantValue> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue get() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue get()
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue findOrCreate() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue findOrCreate()
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue patchEntity() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue patchEntity()
* @method array<ProductSkuVariantValue> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductSkuVariantValue> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductSkuVariantValue|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductSkuVariantValue|false save(\CakeProducts\Model\Entity\ProductSkuVariantValue|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductSkuVariantValue saveOrFail() * @method \CakeProducts\Model\Entity\ProductSkuVariantValue saveOrFail()
* @method iterable<ProductSkuVariantValue>|ResultSetInterface<ProductSkuVariantValue>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductSkuVariantValue>|ResultSetInterface<ProductSkuVariantValue> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductSkuVariantValue>|ResultSetInterface<ProductSkuVariantValue>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductSkuVariantValue>|ResultSetInterface<ProductSkuVariantValue> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductSkuVariantValuesTable extends Table { class ProductSkuVariantValuesTable extends Table {
+5 -9
View File
@@ -11,23 +11,19 @@ use Cake\Validation\Validator;
/** /**
* ProductSkus Model * ProductSkus Model
* *
* @property ProductsTable&BelongsTo $Products * @property ProductsTable&\Cake\ORM\Association\BelongsTo $Products
* *
* @method \CakeProducts\Model\Entity\ProductSku newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductSku newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductSku newEntity() * @method \CakeProducts\Model\Entity\ProductSku newEntity()
* @method array<ProductSku> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductSku> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductSku get() * @method \CakeProducts\Model\Entity\ProductSku get()
* @method \CakeProducts\Model\Entity\ProductSku findOrCreate() * @method \CakeProducts\Model\Entity\ProductSku findOrCreate()
* @method \CakeProducts\Model\Entity\ProductSku patchEntity() * @method \CakeProducts\Model\Entity\ProductSku patchEntity()
* @method array<ProductSku> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductSku> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductSku|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductSku|false save(\CakeProducts\Model\Entity\ProductSku|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductSku saveOrFail() * @method \CakeProducts\Model\Entity\ProductSku saveOrFail()
* @method iterable<ProductSku>|ResultSetInterface<ProductSku>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductSku>|ResultSetInterface<ProductSku> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductSku>|ResultSetInterface<ProductSku>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductSku>|ResultSetInterface<ProductSku> deleteManyOrFail(iterable $entities, array $options = [])
* *
* @mixin TimestampBehavior * @mixin \Cake\ORM\Behavior\TimestampBehavior
*/ */
class ProductSkusTable extends Table { class ProductSkusTable extends Table {
+5 -9
View File
@@ -10,22 +10,18 @@ use Cake\Validation\Validator;
/** /**
* ProductVariants Model * ProductVariants Model
* *
* @property ProductCategoryVariantsTable&BelongsTo $ProductCategoryVariants * @property ProductCategoryVariantsTable&\Cake\ORM\Association\BelongsTo $ProductCategoryVariants
* @property ProductsTable&BelongsTo $Products * @property ProductsTable&\Cake\ORM\Association\BelongsTo $Products
* *
* @method \CakeProducts\Model\Entity\ProductVariant newEmptyEntity() * @method \CakeProducts\Model\Entity\ProductVariant newEmptyEntity()
* @method \CakeProducts\Model\Entity\ProductVariant newEntity() * @method \CakeProducts\Model\Entity\ProductVariant newEntity()
* @method array<ProductVariant> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductVariant> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\ProductVariant get() * @method \CakeProducts\Model\Entity\ProductVariant get()
* @method \CakeProducts\Model\Entity\ProductVariant findOrCreate() * @method \CakeProducts\Model\Entity\ProductVariant findOrCreate()
* @method \CakeProducts\Model\Entity\ProductVariant patchEntity() * @method \CakeProducts\Model\Entity\ProductVariant patchEntity()
* @method array<ProductVariant> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\ProductVariant> patchEntities(iterable $entities, array $data, array $options = [])
* @method ProductVariant|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\ProductVariant|false save(\CakeProducts\Model\Entity\ProductVariant|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\ProductVariant saveOrFail() * @method \CakeProducts\Model\Entity\ProductVariant saveOrFail()
* @method iterable<ProductVariant>|ResultSetInterface<ProductVariant>|false saveMany(iterable $entities, array $options = [])
* @method iterable<ProductVariant>|ResultSetInterface<ProductVariant> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<ProductVariant>|ResultSetInterface<ProductVariant>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<ProductVariant>|ResultSetInterface<ProductVariant> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductVariantsTable extends Table { class ProductVariantsTable extends Table {
+4 -8
View File
@@ -13,21 +13,17 @@ use CakeProducts\Model\Enum\ProductProductTypeId;
/** /**
* Products Model * Products Model
* *
* @property ProductCategoriesTable&BelongsTo $ProductCategories * @property ProductCategoriesTable&\Cake\ORM\Association\BelongsTo $ProductCategories
* *
* @method \CakeProducts\Model\Entity\Product newEmptyEntity() * @method \CakeProducts\Model\Entity\Product newEmptyEntity()
* @method \CakeProducts\Model\Entity\Product newEntity() * @method \CakeProducts\Model\Entity\Product newEntity()
* @method array<Product> newEntities(array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\Product> newEntities(array $data, array $options = [])
* @method \CakeProducts\Model\Entity\Product get() * @method \CakeProducts\Model\Entity\Product get()
* @method \CakeProducts\Model\Entity\Product findOrCreate() * @method \CakeProducts\Model\Entity\Product findOrCreate()
* @method \CakeProducts\Model\Entity\Product patchEntity() * @method \CakeProducts\Model\Entity\Product patchEntity()
* @method array<Product> patchEntities(iterable $entities, array $data, array $options = []) * @method array<\CakeProducts\Model\Entity\Product> patchEntities(iterable $entities, array $data, array $options = [])
* @method Product|false save(EntityInterface $entity, array $options = []) * @method \CakeProducts\Model\Entity\Product|false save(\CakeProducts\Model\Entity\Product|\Cake\Datasource\EntityInterface $entity, array $options = [])
* @method \CakeProducts\Model\Entity\Product saveOrFail() * @method \CakeProducts\Model\Entity\Product saveOrFail()
* @method iterable<Product>|ResultSetInterface<Product>|false saveMany(iterable $entities, array $options = [])
* @method iterable<Product>|ResultSetInterface<Product> saveManyOrFail(iterable $entities, array $options = [])
* @method iterable<Product>|ResultSetInterface<Product>|false deleteMany(iterable $entities, array $options = [])
* @method iterable<Product>|ResultSetInterface<Product> deleteManyOrFail(iterable $entities, array $options = [])
*/ */
class ProductsTable extends Table { class ProductsTable extends Table {