| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- <?php
- namespace App\Module\Game\Validation;
- use App\Module\Game\Validator\SkinIdValidator;
- use App\Module\Game\Validator\UserHasSkinValidator;
- use UCore\ValidationCore;
- /**
- * 皮肤验证类
- *
- * 用于验证皮肤切换操作的输入数据,包括用户ID和皮肤ID
- */
- class SkinValidation extends ValidationCore
- {
- /**
- * 验证规则
- *
- * @param array $rules 自定义规则
- * @return array
- */
- public function rules($rules = []): array
- {
- return [
- [
- 'user_id,skin_id', 'required'
- ],
- [
- 'user_id,skin_id', 'integer', 'min' => 1,
- 'msg' => '{attr}必须是大于0的整数'
- ],
- // 验证皮肤ID是否有效
- [
- 'skin_id', new SkinIdValidator($this),
- 'msg' => '皮肤ID无效'
- ],
- // 验证用户是否拥有该皮肤
- [
- 'skin_id', new UserHasSkinValidator($this, ['user_id']),
- 'msg' => '用户未拥有该皮肤'
- ]
- ];
- }
- /**
- * 设置默认值
- *
- * @return array
- */
- public function default(): array
- {
- return [];
- }
- }
|