Files
xin-procurement/app/Http/Requests/Product/BatchPriceRequest.php
T
2026-08-17 16:27:15 +08:00

39 lines
1.2 KiB
PHP

<?php
namespace App\Http\Requests\Product;
use Modules\Common\Http\Requests\BaseFormRequest;
/**
* 批量调价 验证(A2 价格矩阵编辑提交)
*
* 等级售价 = 成本价 × (100 + 等级上浮比例) / 100,矩阵仅支持批量调整成本价:
* 成本行 {product_id, cost_price}
*/
class BatchPriceRequest extends BaseFormRequest
{
protected $stopOnFirstFailure = true;
public function rules(): array
{
return [
'updates' => 'required|array|min:1',
'updates.*.product_id' => 'required|integer|exists:product,id',
'updates.*.cost_price' => 'required|numeric|min:0|max:99999999',
];
}
public function messages(): array
{
return [
'updates.required' => '请至少提交一条价格调整',
'updates.min' => '请至少提交一条价格调整',
'updates.*.product_id.required' => '调价行缺少商品',
'updates.*.product_id.exists' => '商品不存在',
'updates.*.cost_price.required' => '调价行缺少成本价',
'updates.*.cost_price.numeric' => '成本价必须为数字',
'updates.*.cost_price.min' => '成本价不能小于 0',
];
}
}