Merge pull request #1009 from openclassify/muammertop

fixed configured ads
This commit is contained in:
spektra2147 2021-03-26 18:02:09 +03:00 committed by GitHub
commit 4c8f92e2e5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 6 deletions

View File

@ -21,6 +21,7 @@ use Visiosoft\AdvsModule\Adv\Event\viewAd;
use Visiosoft\AdvsModule\Adv\Form\AdvFormBuilder;
use Visiosoft\AdvsModule\Option\Contract\OptionRepositoryInterface;
use Visiosoft\AdvsModule\OptionConfiguration\Contract\OptionConfigurationRepositoryInterface;
use Visiosoft\AdvsModule\OptionConfiguration\OptionConfigurationModel;
use Visiosoft\AdvsModule\Productoption\Contract\ProductoptionRepositoryInterface;
use Visiosoft\AdvsModule\ProductoptionsValue\Contract\ProductoptionsValueRepositoryInterface;
use Visiosoft\AlgoliaModule\Search\SearchModel;
@ -1241,10 +1242,15 @@ class AdvsController extends PublicController
$quantity = $request->quantity;
$id = $request->id;
$type = $request->type;
$advmodel = new AdvModel();
$adv = $advmodel->getAdv($id);
$status = $advmodel->stockControl($id, $quantity);
if ($request->dataType === 'ad-configuration') {
$optionConf = new OptionConfigurationModel();
$adv = $optionConf->newQuery()->find($id);
$status = $adv->stockControl($id, $quantity);
} else {
$advmodel = new AdvModel();
$adv = $advmodel->getAdv($id);
$status = $advmodel->stockControl($id, $quantity);
}
$response = array();
if ($status == 1) {

View File

@ -1,10 +1,8 @@
<?php namespace Visiosoft\AdvsModule\OptionConfiguration;
use Visiosoft\AdvsModule\Adv\AdvModel;
use Visiosoft\AdvsModule\Adv\Contract\AdvRepositoryInterface;
use Visiosoft\AdvsModule\OptionConfiguration\Contract\OptionConfigurationInterface;
use Anomaly\Streams\Platform\Model\Advs\AdvsOptionConfigurationEntryModel;
use Visiosoft\AdvsModule\Productoption\Contract\ProductoptionRepositoryInterface;
use Visiosoft\AdvsModule\ProductoptionsValue\Contract\ProductoptionsValueRepositoryInterface;
class OptionConfigurationModel extends AdvsOptionConfigurationEntryModel implements OptionConfigurationInterface
@ -24,4 +22,20 @@ class OptionConfigurationModel extends AdvsOptionConfigurationEntryModel impleme
return $adv->name . ' | ' . trim($option_group_value, ' ');
}
}
public function stockControl($id, $quantity)
{
$conf = $this->newQuery()->find($id);
$stock = $conf->stock;
if ($stock === NULL || $stock === 0) {
return 0;
}
if ($stock < $quantity) {
return 0;
}
return 1;
}
}