IPolicy.php 1.3 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace refill;
  3. interface IPolicy
  4. {
  5. //[orgian_quality,current_quality]
  6. public function find_quality(order $order, bool $skip_pre = false): array;
  7. //return [是否必须, 等待时间(如果必须,等待时间为0,如果不必是延迟秒数)]
  8. public function must_changeto_quality(order $order, $quality);
  9. public function find_providers(order $order): array;
  10. public function allow($mchid, $card_type, $amount, $quality): bool;
  11. public function notify($order_info, $refill_info): bool;
  12. public function price($mchid, $spec, $card_type, $quality, $pcode);
  13. public function max_inprice($mchid, $spec, $card_type, $quality, $pcode);
  14. public function need_intercept($mchid,$card_type,$card_state,$is_transfer,$card_no) : bool;
  15. public function region_intercept($quality,$card_type,$region_no) : bool;
  16. public function third_retry(order $order): array;
  17. public function third_mixed($mchid,$pcode): bool;
  18. public function update_mchratios($all,$detail,$types);
  19. public function merchant_ratio($mchid);
  20. public function update_chctl($speeds);
  21. public function update_chspeeds($speeds);
  22. public function update_maxspeeds($speeds);
  23. public function get_times();
  24. public function is_over_chspeed($chname);
  25. }