*/ 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'], ]; } }