ValidationBase.php 701 B

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