Explorar o código

[智价云] 省份城市违规数据占比统计

tangyuanwang hai 2 semanas
pai
achega
b5b01686a2
Modificáronse 1 ficheiros con 17 adicións e 1 borrados
  1. 17 1
      app/Http/Controllers/Manager/Statistics/BasicPanel.php

+ 17 - 1
app/Http/Controllers/Manager/Statistics/BasicPanel.php

@@ -309,7 +309,15 @@ class BasicPanel extends Controller
                 ->select(['province_name', DB::raw('count(province_name) as count')])
                 ->groupby('province_name')
                 ->orderby('count', 'desc')
-                ->get();
+                ->get()->toarray();
+            $province_totle_count = 0;
+            if(!empty($result)){
+                $province_totle_count = array_sum(array_column($result, 'count'));
+                //计算占比
+                foreach ($result as $key => $value) {
+                    $result[$key]['percent'] = round(($value['count'] / $province_totle_count) * 100, 2);
+                }
+            }
             return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
         } catch (\Exception $e) {
             return json_send(['code' => 'error', 'msg' => '获取失败:' . $e->getMessage()]);
@@ -379,6 +387,14 @@ class BasicPanel extends Controller
                 ->groupby('city_name')
                 ->orderby('count', 'desc')
                 ->get();
+            $city_totle_count = 0;
+            if(!empty($result)){
+                $city_totle_count = array_sum(array_column($result->toarray(), 'count'));
+                //计算占比
+                foreach ($result as $key => $value) {
+                    $result[$key]['percent'] = round(($value['count'] / $city_totle_count) * 100, 2);
+                }
+            }
             return json_send(['code' => 'success', 'msg' => '获取成功', 'data' => $result]);
         } catch (\Exception $e) {
             return json_send(['code' => 'error', 'msg' => '获取失败:' . $e->getMessage()]);