Status.php 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. <?php
  2. namespace App\Models\Traits\Amount;
  3. /**
  4. * 订单状态
  5. *
  6. */
  7. trait Status
  8. {
  9. // 交易类型 与 支付方式
  10. private $statusList = ['1'=>[
  11. 'id' =>1,
  12. 'name' =>'申请提现',
  13. 'state' =>'提现中',
  14. ],'2'=>[
  15. 'id' =>2,
  16. 'name' =>'提现成功',
  17. 'state' =>'提现成功',
  18. ],'3'=>[
  19. 'id' =>3,
  20. 'name' =>'提现失败',// 已发货未收货
  21. 'state' =>'提现失败',
  22. ]];
  23. /**
  24. * 交易类型列表
  25. *
  26. */
  27. public function getStatusList(){
  28. // 返回数据
  29. return $this->statusList;
  30. }
  31. /**
  32. * 获取交易类型
  33. *
  34. * @param int $status 交易状态
  35. * @param string $field 字段
  36. *
  37. */
  38. public function getState($status,$field=''){
  39. // 获取交易类型
  40. $status = isset($this->statusList[$status]) ? $this->statusList[$status] : [];
  41. // 如果存在需要的字段
  42. if( $field ) return isset($status[$field]) ? $status[$field] : null;
  43. // 返回结果
  44. return $status;
  45. }
  46. /**
  47. * 获取交易类型
  48. *
  49. * @param string $state 交易状态
  50. *
  51. */
  52. public function getStateToStatus($state){
  53. // 状态列表
  54. $list = $this->getStatusList();
  55. // 状态
  56. foreach ($list as $value) {
  57. if($value['state'] == $state ) return $value['id'];
  58. }
  59. // 返回结果
  60. return -1;
  61. }
  62. /**
  63. * 获取交易类型
  64. *
  65. * @param string getWeibanStatus 交易状态
  66. *
  67. */
  68. public function getWeibanStatus($weibanStatus){
  69. // 状态列表
  70. $list = ['待付款'=>0,'待发货'=>2,'待收货'=>3,'已完成'=>8,'已退款'=>6,'取消交易'=>4];
  71. // 返回结果
  72. return isset($list[$weibanStatus]) ? $list[$weibanStatus] : 0;
  73. }
  74. }