ValidationBase.php 777 B

1234567891011121314151617181920212223242526272829303132
  1. <?php
  2. namespace App\Module\AppGame\Validations;
  3. use App\Module\AppGame\SessionApp;
  4. use UCore\Helper\Logger;
  5. use UCore\ValidationCore;
  6. /**
  7. * Validation验证基类
  8. */
  9. abstract class ValidationBase extends ValidationCore
  10. {
  11. /**
  12. * 使用Protobuf-Message创建验证器,并注入user_id
  13. *
  14. * @param \Google\Protobuf\Internal\Message $message
  15. * @param $scene
  16. * @return static
  17. */
  18. public static function makeByProrobufUser(\Google\Protobuf\Internal\Message $message, $scene = ''): static
  19. {
  20. $data = json_decode($message->serializeToJsonString(), true);
  21. Logger::debug('makeByProrobufUser',$data);
  22. $data['user_id'] = SessionApp::getSessionId();
  23. return new static($data, [], [], $scene);
  24. }
  25. }