fix bug 4
This commit is contained in:
@@ -492,10 +492,23 @@ class Controller extends BaseController
|
||||
return false;
|
||||
}
|
||||
|
||||
// معامله مقداری → نه تعدادی
|
||||
if (self::usesQuantityTrade($product)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// آبشده/کاتد همیشه وزنی است
|
||||
if (self::isMeltedTradeGroup($product['group_type'] ?? null)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
// trade_by_quantity صراحتاً false/0 → تعدادی
|
||||
// (حتی اگر unit=گرم فقط وزن هر عدد باشد)
|
||||
if (array_key_exists('trade_by_quantity', $product) && $product['trade_by_quantity'] !== null) {
|
||||
return true;
|
||||
}
|
||||
|
||||
// محصولات قدیمی بدون فلگ: واحد وزنی → مقداری
|
||||
if (self::isWeightBasedProductUnit($product['unit'] ?? null)) {
|
||||
return false;
|
||||
}
|
||||
@@ -594,15 +607,15 @@ class Controller extends BaseController
|
||||
|
||||
public static function productQuantityUnit(?array $product): string
|
||||
{
|
||||
if (self::isCountBasedProduct($product)) {
|
||||
return 'عدد';
|
||||
}
|
||||
|
||||
$unit = trim((string) ($product['unit'] ?? ''));
|
||||
if ($unit !== '') {
|
||||
return $unit;
|
||||
}
|
||||
|
||||
if (self::isCountBasedProduct($product)) {
|
||||
return 'عدد';
|
||||
}
|
||||
|
||||
return self::tradeWeightUnit();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user