CreateTransferValidation.php 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. namespace App\Module\Transaction\Validations;
  3. use App\Module\Fund\Validators\CheckUserFund;
  4. use UCore\ValidationCore;
  5. use UCore\Validator\Address;
  6. use UCore\Validator\CheckPassword;
  7. use UCore\Validator\IsUrausAddress;
  8. use UCore\Validator\IsUserAddress;
  9. class CreateTransferValidation extends ValidationCore
  10. {
  11. /**
  12. * @param array $rules
  13. * @param $data
  14. * @return array
  15. * 创建转赠订单验证
  16. * fromUserId账户内资金,是否是网内地址,网内地址是否存在
  17. */
  18. public function rules(array $rules = [], $data = []): array
  19. {
  20. $rules = [
  21. [
  22. 'coinType,amount,userId,to_address,password', 'required'
  23. ],
  24. [
  25. // 验证fromUserId账户内资金
  26. 'userId,amount',
  27. new CheckUserFund($this),
  28. 'msg' => '用户余额不足'
  29. ],
  30. [
  31. 'to_address',
  32. new IsUrausAddress($this),
  33. 'msg' => '地址错误'
  34. ],
  35. [
  36. 'user_id,password',
  37. new CheckPassword($this),
  38. 'msg' => '交易密码错误'
  39. ]
  40. ];
  41. return parent::rules($rules);
  42. }
  43. }