1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Mead
- * Date: 2019/9/9
- * Time: 2:49 PM
- */
- namespace App\Models;
- trait BatteryTraitModel
- {
- protected static $max_ride_v = 15;
- protected static $fangans = [
- [
- 'min' => 0,
- 'max' => 43,
- 'electric' => 0,
- 'mileage' => 0
- ],
- [
- 'min' => 43,
- 'max' => 44,
- 'electric' => 10,
- 'mileage' => 5
- ],
- [
- 'min' => 44,
- 'max' => 46,
- 'electric' => 20,
- 'mileage' => 10
- ],
- [
- 'min' => 46,
- 'max' => 47,
- 'electric' => 30,
- 'mileage' => 15
- ],
- [
- 'min' => 47,
- 'max' => 48,
- 'electric' => 40,
- 'mileage' => 20
- ],
- [
- 'min' => 48,
- 'max' => 49,
- 'electric' => 50,
- 'mileage' => 25
- ],
- [
- 'min' => 49,
- 'max' => 50,
- 'electric' => 60,
- 'mileage' => 30
- ],
- [
- 'min' => 50,
- 'max' => 51,
- 'electric' => 70,
- 'mileage' => 35
- ],
- [
- 'min' => 51,
- 'max' => 52,
- 'electric' => 80,
- 'mileage' => 40
- ],
- [
- 'min' => 52,
- 'max' => 53,
- 'electric' => 90,
- 'mileage' => 45
- ],
- [
- 'min' => 53,
- 'max' => false,
- 'electric' => 100,
- 'mileage' => 50
- ],
- ];
- public function byVoltageGetElectric($v)
- {
- foreach (self::$fangans as $fangan) {
- if ($fangan['min'] === false && $fangan['max'] > $v) {
- return $fangan['electric'];
- }
- if ($fangan['max'] === false && $v['max'] <= $v) {
- return $fangan['electric'];
- }
- if ($fangan['min'] <= $v && $fangan['max'] > $v) {
- return $fangan['electric'] + round(($v - $fangan['min']) / ($fangan['max'] - $fangan['min']) * 10);
- }
- }
- }
- }
|