Bike.php 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116
  1. <?php
  2. namespace App\Models;
  3. use App\Traits\ModelHelpers;
  4. use Illuminate\Database\Eloquent\Model;
  5. class Bike extends Model
  6. {
  7. //
  8. use ModelHelpers;
  9. const REDIS_BOX_NO_AND_BIKE_NO_TAG = 'box_no_and_bike_no';
  10. const REDIS_BIKE_LOCATION_TAG = 'bike_locations';
  11. protected $guarded = [];
  12. const LINK_ONLINE = 1;
  13. const LINK_OFFLINE = 0;
  14. public static $linkMaps = [
  15. self::LINK_ONLINE => '在线',
  16. self::LINK_OFFLINE => '离线'
  17. ];
  18. const TROUBLE_YES = 1;
  19. const TROUBLE_NO = 0;
  20. public static $troubleMaps = [
  21. self::TROUBLE_NO => '无故障',
  22. self::TROUBLE_YES => '有故障'
  23. ];
  24. const LOCK_YES = 1;
  25. const LOCK_NO = 0;
  26. public static $lockMaps = [
  27. self::LOCK_YES => '已锁',
  28. self::LOCK_NO => '未锁',
  29. ];
  30. const IN_PARKING_YES = 1;
  31. const IN_PARKING_NO = 0;
  32. public static $inParkingMaps = [
  33. self::IN_PARKING_NO => '不在停车区',
  34. self::IN_PARKING_YES => '在停车区'
  35. ];
  36. const PUT_STATUS_YES = 1;
  37. const PUT_STATUS_NO = 0;
  38. public static $putStatusMaps = [
  39. self::PUT_STATUS_YES => '已投放',
  40. self::PUT_STATUS_NO => '未投放'
  41. ];
  42. const RIDING_YES = 1;
  43. const RIDING_NO = 0;
  44. public static $ridingMaps = [
  45. self::RIDING_YES => '骑行中',
  46. self::RIDING_NO => '未骑行'
  47. ];
  48. const RENT_YES = 1;
  49. const RENT_NO = 0;
  50. public static $rentMaps = [
  51. self::RENT_YES => '租用中',
  52. self::RENT_NO => '未租用'
  53. ];
  54. const BATTERY_POWER_OK = 1;
  55. const BATTERY_POWER_LOW = 0;
  56. public static $batteryPowerMaps = [
  57. self::BATTERY_POWER_OK => '电量正常',
  58. self::BATTERY_POWER_LOW => '低电量'
  59. ];
  60. const BIKE_STATES_RIDING = 1;
  61. const BIKE_STATES_NOT_RIDING = 2;
  62. const BIKE_STATES_TROUBLE = 3;
  63. const BIKE_STATES_LOW_POWER = 4;
  64. const BIKE_STATES_NOT_PARKING = 5;
  65. const BIKE_STATES_NOT_LINK = 6;
  66. const BIKE_STATES_OFF_LINE = 7;
  67. const BIKE_STATES_TROUBLE_OFF_LINE = 8;
  68. public static $bikeStatesMaps = [
  69. self::BIKE_STATES_RIDING => '骑行中',
  70. self::BIKE_STATES_NOT_RIDING => '未骑行',
  71. self::BIKE_STATES_TROUBLE => '有故障',
  72. self::BIKE_STATES_LOW_POWER => '电量低',
  73. self::BIKE_STATES_NOT_PARKING => '未在停车区',
  74. self::BIKE_STATES_NOT_LINK => '中控离线',
  75. self::BIKE_STATES_OFF_LINE => '下线',
  76. self::BIKE_STATES_TROUBLE_OFF_LINE => '故障下线',
  77. ];
  78. public function areas()
  79. {
  80. return $this->belongsTo(Area::class, 'put_area_id', 'id');
  81. }
  82. public function orders(){
  83. return $this->hasMany(Order::class,'bike_id','id');
  84. }
  85. // const POWER_ALL = 'all';
  86. // const POWER_FIFTY = '50';
  87. // const POWER_FORTY = '40';
  88. // const POWER_THIRTY = '30';
  89. // const POWER_TWENTY = '20';
  90. // const POWER_TEN = '10';
  91. // public $powerMaps = [
  92. // // self::POWER_ALL => '全部电量',
  93. // self::POWER_FIFTY => '50%以下',
  94. // self::POWER_FORTY => '40%以下',
  95. // self::POWER_THIRTY => '30%以下',
  96. // self::POWER_TWENTY => '20%以下',
  97. // self::POWER_TEN => '10%以下',
  98. // ];
  99. }