isUpdate()) { return [ 'refund_no' => 'required|string|max:32|unique:order_refunds,refund_no', 'order_id' => 'required|integer', 'order_item_id' => 'nullable|integer', 'user_id' => 'required|integer', 'merchant_id' => 'required|integer', 'amount' => 'required|numeric', 'reason' => 'required|string', 'images' => 'nullable|array', 'status' => 'required|integer|in:0,1,2,3', 'reply' => 'nullable|string', 'processed_at' => 'nullable|date', ]; } $id = $this->route('id'); return [ 'refund_no' => ['required', 'string', 'max:32', Rule::unique('order_refunds', 'refund_no')->ignore($id)], 'order_id' => 'required|integer', 'order_item_id' => 'nullable|integer', 'user_id' => 'required|integer', 'merchant_id' => 'required|integer', 'amount' => 'required|numeric', 'reason' => 'required|string', 'images' => 'nullable|array', 'status' => 'required|integer|in:0,1,2,3', 'reply' => 'nullable|string', 'processed_at' => 'nullable|date', ]; } public function messages(): array { return [ 'refund_no.required' => '退款单号不能为空', 'refund_no.unique' => '退款单号已存在', 'order_id.required' => '订单ID不能为空', 'user_id.required' => '用户ID不能为空', 'merchant_id.required' => '商户ID不能为空', 'amount.required' => '退款金额不能为空', 'reason.required' => '退款原因不能为空', 'status.required' => '退款状态不能为空', ]; } }