Browse Source

停车行为优化4

master
wanghongjun 3 weeks ago
parent
commit
3dd5b5ce19
  1. 2
      app/Exports/ParkingBehaviorExport.php
  2. 2
      app/Http/Controllers/Admin/ParkingBehaviorController.php
  3. 30
      app/common.php

2
app/Exports/ParkingBehaviorExport.php

@ -32,7 +32,7 @@ class ParkingBehaviorExport implements FromArray, WithHeadings
'time_period' => $item->time_period, 'time_period' => $item->time_period,
'license_plate' => $license_plate, 'license_plate' => $license_plate,
'parking_frequency' => $item->parking_frequency, 'parking_frequency' => $item->parking_frequency,
'parking_duration' => $item->parking_duration 'parking_duration' => get_minutes($item->parking_duration)
]; ];
$index += 1; $index += 1;
} }

2
app/Http/Controllers/Admin/ParkingBehaviorController.php

@ -103,7 +103,7 @@ class ParkingBehaviorController extends BaseController
$item->license_plate_id $item->license_plate_id
); );
$item->license_plate = $license_plate; $item->license_plate = $license_plate;
$item->parking_duration = ceil($item->parking_duration / 60); $item->parking_duration = get_minutes($item->parking_duration);
unset($item->license_plate_id); unset($item->license_plate_id);
} }
return $this->responseService->success([ return $this->responseService->success([

30
app/common.php

@ -183,23 +183,33 @@ if (!function_exists('get_diff_in_minutes')) {
// 1. 计算总秒数差 // 1. 计算总秒数差
$totalSeconds = $start->diffInSeconds($end); $totalSeconds = $start->diffInSeconds($end);
return get_minutes($totalSeconds);
}
}
if (!function_exists('get_minutes')) {
function get_minutes($totalSeconds): string
{
// 2. 根据规则计算分钟数:超过1秒按1分钟算,即向上取整 // 2. 根据规则计算分钟数:超过1秒按1分钟算,即向上取整
$minutes = (int) ceil($totalSeconds / 60); $minutes = (int)ceil($totalSeconds / 60);
// 3. 判断并格式化输出 // 3. 判断并格式化输出
if (!$minutes) { if (!$minutes) {
return 0; return 0;
} else if ($minutes < 60) {
// 不足一小时,只显示分钟
return $minutes;
} else { } else {
// 超过一小时,显示X小时X分钟 if ($minutes < 60) {
$hours = intdiv($minutes, 60); // 不足一小时,只显示分钟
$remainingMinutes = $minutes % 60; return $minutes;
$minutesStr = $remainingMinutes . __('controller.parking_space.minutes'); } else {
$hoursStr = $hours . __('controller.parking_space.hours'); // 超过一小时,显示X小时X分钟
return $hoursStr . $minutesStr; $hours = intdiv($minutes, 60);
$remainingMinutes = $minutes % 60;
$minutesStr = $remainingMinutes . __(
'controller.parking_space.minutes'
);
$hoursStr = $hours . __('controller.parking_space.hours');
return $hoursStr . $minutesStr;
}
} }
} }
} }

Loading…
Cancel
Save