| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- <?php
- namespace App\Module\AppGame\Validations;
- use App\Module\Mex\Validators\MexOrderExistsValidator;
- /**
- * 农贸市场取消挂单验证类
- *
- * 用于验证取消挂单请求的参数,包括订单ID验证、订单所有权验证等
- */
- class MatchexchangeCancelValidation extends ValidationBase
- {
- /**
- * 验证规则
- *
- * @param array $rules 自定义规则
- * @return array
- */
- public function rules($rules = []): array
- {
- return [
- // 基础参数验证
- [
- 'user_id,id', 'required'
- ],
- [
- 'id', 'integer', 'min' => 1,
- 'msg' => '订单ID必须是大于0的整数'
- ],
- [
- 'user_id', 'integer', 'min' => 1,
- 'msg' => '用户ID必须是大于0的整数'
- ],
- // 验证订单是否存在且属于当前用户
- [
- 'id', new MexOrderExistsValidator($this),
- 'msg' => '订单不存在或不属于当前用户'
- ]
- ];
- }
- /**
- * 设置默认值
- *
- * @return array
- */
- public function default(): array
- {
- return [];
- }
- /**
- * 数据预处理
- *
- * @return bool
- */
- public function beforeValidate(): bool
- {
- return true;
- }
- /**
- * 获取订单ID
- *
- * @return int
- */
- public function getOrderId(): int
- {
- return $this->getSafe('id');
- }
- /**
- * 获取用户ID
- *
- * @return int
- */
- public function getUserId(): int
- {
- return $this->getSafe('user_id');
- }
- }
|