| 12345678910111213141516171819202122232425262728293031323334353637383940 |
- <?php
- declare(strict_types=1);
- namespace App\Http\Requests;
- use App\Models\StockOrder;
- use Illuminate\Foundation\Http\FormRequest;
- use Illuminate\Validation\Rule;
- class StoreStockOrderRequest extends FormRequest
- {
- public function authorize(): bool
- {
- return true;
- }
- /** @return array<string, mixed> */
- public function rules(): array
- {
- /** @var StockOrder|null $stockOrder */
- $stockOrder = $this->route('stockOrder');
- return [
- 'common_catalog_item_id' => ['required', 'integer', 'exists:common_catalog_items,id'],
- 'order_number' => [
- 'required',
- 'string',
- 'max:255',
- Rule::unique('stock_orders', 'order_number')
- ->where('common_catalog_item_id', $this->integer('common_catalog_item_id'))
- ->withoutTrashed()
- ->ignore($stockOrder),
- ],
- 'status' => ['required', Rule::in(array_keys(StockOrder::STATUS_NAMES))],
- 'ordered_quantity' => ['required', 'integer', 'min:1'],
- 'note' => ['nullable', 'string', 'max:2000'],
- ];
- }
- }
|