code fixes

This commit is contained in:
Dennis Eichhorn 2024-03-15 20:24:39 +00:00
parent e9ee5ec255
commit ae033cb03e
3 changed files with 14 additions and 4 deletions

View File

@ -165,6 +165,7 @@ final class Installer extends InstallerAbstract
? \Modules\ClientManagement\Models\ClientMapper::class
: \Modules\SupplierManagement\Models\SupplierMapper::class;
/** @var \Modules\ClientManagement\Models\Client|\Modules\SupplierManagement\Models\Supplier $person */
foreach ($mapper::yield()->execute() as $person) {
$response = new HttpResponse();
$request = new HttpRequest();

View File

@ -117,8 +117,8 @@ final class ApiController extends Controller
$stock->unit = $request->getDataInt('unit') ?? 1;
$stock->inventory = $request->getDataBool('inventory') ?? false;
$stock->client = $request->hasData('client') ? new NullClient($request->getDataInt('client')) : null;
$stock->supplier = $request->hasData('supplier') ? new NullSupplier($request->getDataInt('supplier')) : null;
$stock->client = $request->hasData('client') ? new NullClient((int) $request->getData('client')) : null;
$stock->supplier = $request->hasData('supplier') ? new NullSupplier((int) $request->getData('supplier')) : null;
return $stock;
}

View File

@ -16,7 +16,6 @@ namespace Modules\WarehouseManagement\Models;
use Modules\Admin\Models\AddressMapper;
use Modules\ClientManagement\Models\ClientMapper;
use Modules\ItemManagement\Models\Item;
use Modules\ItemManagement\Models\StockIdentifierType;
use Modules\SupplierManagement\Models\SupplierMapper;
use phpOMS\DataStorage\Database\Mapper\DataMapperFactory;
@ -97,6 +96,15 @@ final class StockMapper extends DataMapperFactory
*/
public const PRIMARYFIELD = 'warehousemgmt_stock_id';
/**
* Get stock distributions
*
* @param int[] $items Items
*
* @return array{dists:array, reserved:array, ordered:array}
*
* @since 1.0.0
*/
public static function getStockDistribution(array $items) : array
{
$dists = [];
@ -114,6 +122,7 @@ final class StockMapper extends DataMapperFactory
$itemIdsString = \implode(',', $items);
// @todo only select sales stock. Therefore we need a place to define the sales stock(s)
/** @var \Modules\WarehouseManagement\Models\StockDistribution[] $temp */
$temp = StockDistributionMapper::getAll()
->where('item', $items, 'IN')
->execute();
@ -151,7 +160,7 @@ final class StockMapper extends DataMapperFactory
SQL;
$query = new Builder(self::$db);
$results = $query->raw($sql)->execute()->fetchAll(\PDO::FETCH_ASSOC);
$results = $query->raw($sql)->execute()?->fetchAll(\PDO::FETCH_ASSOC) ?? [];
foreach ($results as $result) {
if (!isset($reserved[(int) $result['billing_bill_element_item']])) {