Xu·LinPeng vor 11 Stunden
Ursprung
Commit
0b7822b483
1 geänderte Dateien mit 70 neuen und 4 gelöschten Zeilen
  1. 70 4
      Modules/Camera/Http/Controllers/Api/CameraApiController.php

+ 70 - 4
Modules/Camera/Http/Controllers/Api/CameraApiController.php

@@ -4672,7 +4672,8 @@ class CameraApiController extends BaseController
             ->whereNotNull('t.flow_id');
 
 
-        $previousDay = $date->modify('-1 day')->format('Y-m-d');
+        $previousDayTimestamp = strtotime($date . ' -1 day');
+        $previousDay = date('Y-m-d', $previousDayTimestamp);
 
         $risk_list_previousDay = DB::connection('mysql_fwe10')
             ->table('uf_xx_risk_assignment as t')
@@ -4695,15 +4696,26 @@ class CameraApiController extends BaseController
                 ->where('t2.id', $area_id)
                 ->select([
                     't.*'
-                ]);
+            ]);
+            $risk_list_previousDay->join('uf_xx_coal_washery as t1','t.coal_washery_id','=','t1.id')
+                ->where('t1.is_delete',0)
+                ->where('t1.delete_type',0)
+                ->join('uf_xx_area as t2','t1.area_id','=','t2.id')
+                ->where('t2.is_delete',0)
+                ->where('t2.delete_type',0)
+                ->where('t2.id', $area_id)
+                ->select([
+                    't.*'
+            ]);
         }
 
         $risk_list = $risk_list->orderBy('risk_level')->get();
 
+        $risk_list_previousDay = $risk_list_previousDay->orderBy('risk_level')->get();
+
 
         // 洗煤厂数据
         $coal_washery_list = DB::connection('mysql_fwe10')->table('uf_xx_coal_washery as t')->where('t.is_delete',0);
-        if (!empty($coal_washery_id)) $coal_washery_list->where('t.id', $coal_washery_id); // 筛选洗煤厂
 
         $coal_washery_list = $coal_washery_list->select('t.*')->orderBy('t.sort')->get();
 
@@ -4771,6 +4783,7 @@ class CameraApiController extends BaseController
             $coal_washery_risk_list[$coal_washery_id][] = $value;
         }
 
+        $wwdwNum = count($outsourcedUnit_total);
         $res['num'] = count($risk_list);
 
 
@@ -4796,7 +4809,60 @@ class CameraApiController extends BaseController
             $risk_zhong_info = ";";
         }
 
-        $res['risk_info'] = "1.委外施工单位共".count($outsourcedUnit_total)."个,总作业项:".$res['num']."项;高风险:".$res['gao']."项".$risk_gao_info."中风险:".$res['zhong']."项".$risk_zhong_info."低风险:".$res['di']."项;总作业人数:".$people_total."人。";
+
+
+        // 统计前一天的相关数据
+        $preHigh = 0;
+        $preMid = 0;
+        $preLow = 0;
+        $prePeople = 0;
+        $preRiskNum = count($risk_list_previousDay);
+        $preWwdw = [];
+        foreach ($risk_list_previousDay as $key=>$value) {
+            // 获取洗煤厂ID
+            $coal_washery_id = $value->coal_washery_id;
+
+            if (!in_array($value->wwdw,$preWwdw)){
+                $preWwdw[] = $value->wwdw;
+            }
+
+            $prePeople += $value->work_num;
+
+            // 风险数量统计
+            $risk_level = $value->risk_level;  // 风险类型
+            // 当 $risk_type_dict[$value->risk_type] 存在时取对应的值,不存在时取值 未知风险
+            $risk_type = $risk_type_dict[$value->risk_type] ?? "未知风险";
+
+            if($risk_level == 0) {
+                $preHigh++;
+            } else if($risk_level == 1) {
+                $preMid++;
+            } else {
+                $preLow++;
+            }
+
+            // 煤矿风险列表
+//            $coal_washery_risk_list[$coal_washery_id][] = $value;
+        }
+
+        $preWwdwNum = count($preWwdw);
+
+        // 委外单位相差
+        $preVar1 = sprintf("%+d", $wwdwNum - $preWwdwNum);
+        // 总作业想相差
+        $preVar2 = sprintf("%+d", $res['num'] - $preRiskNum);
+        // 高
+        $preVar3 = sprintf("%+d",$res['gao'] - $preHigh);
+        // 中
+        $preVar4 = sprintf("%+d",$res['zhong'] - $preMid);
+        // 低
+        $preVar5 = sprintf("%+d",$res['di'] - $preLow);
+        // 总人数相差
+        $preVar6 = sprintf("%+d",$people_total - $prePeople);
+
+
+
+        $res['risk_info'] = "1.委外施工单位共".$wwdwNum."个(".$preVar1."),总作业项:".$res['num']."项(".$preVar2.");高风险:".$res['gao']."项(".$preVar3.")".$risk_gao_info."中风险:".$res['zhong']."项(".$preVar4.")".$risk_zhong_info."低风险:".$res['di']."项(".$preVar5.");总作业人数:".$people_total."人(".$preVar6.")。";