瀏覽代碼

风险作业导出

任敬轩 7 月之前
父節點
當前提交
074e55b8f2
共有 1 個文件被更改,包括 94 次插入2 次删除
  1. 94 2
      Modules/Camera/Http/Controllers/Api/CameraApiController.php

+ 94 - 2
Modules/Camera/Http/Controllers/Api/CameraApiController.php

@@ -2903,11 +2903,103 @@ class CameraApiController extends BaseController
 
     //导出总表
     public function export1(Request $request){
+        $params = $request->all();
         $result = [];
+        $classes = ['早班','中班','夜班'];
+        $risk_level = ['高','中','低'];
+
+        if(isset($params['date'])){
+            $date = $params['date'];
+        }else{
+            $date = date('Y-m-d');
+        }
+
+        $result['num'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('is_delete',0)->count();
+
+        $result['gao'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('risk_level',0)->where('is_delete',0)->count();
+        $result['zhong'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('risk_level',1)->where('is_delete',0)->count();
+        $result['di'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('risk_level',2)->where('is_delete',0)->count();
+        $result['ziying'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')
+            ->leftJoin('uf_xx_coal_washery', 'uf_xx_risk_assignment.coal_washery_id', '=', 'uf_xx_coal_washery.id')
+            ->whereDate('uf_xx_risk_assignment.create_time', $date)
+            ->where('uf_xx_coal_washery.obj_type', 0)
+            ->where('uf_xx_risk_assignment.IS_DELETE', 0)
+            ->count();
+        $result['waiwei'] = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')
+            ->leftJoin('uf_xx_coal_washery', 'uf_xx_risk_assignment.coal_washery_id', '=', 'uf_xx_coal_washery.id')
+            ->whereDate('uf_xx_risk_assignment.create_time', $date)
+            ->where('uf_xx_coal_washery.obj_type', 1)
+            ->where('uf_xx_risk_assignment.IS_DELETE', 0)
+            ->count();
+
+        $list = [];
+        $index = 0;
+
+        $coal_list = DB::connection('mysql_fwe10')->table('uf_xx_coal_washery')->where('is_delete',0)->orderBy('sort')->get();
+
+        if(count($coal_list) > 0){
+            for($i=0;$i<count($coal_list);$i++){
+                $risk_list = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('IS_DELETE', 0)->where('coal_washery_id',$coal_list[$i]->ID)->orderBy('create_time')->get();
+                if(count($risk_list) > 0){
+                    $index++;
+                    $people = 0;//计划人数
+                    $gao = 0;
+                    $zhong = 0;
+                    $di = 0;
+                    $content = '';//工作内容
+                    $place = '';//作业地点
+                    $leader = '';//负责人
+
+                    for($j=0;$j<count($risk_list);$j++){
+                        $people = $people + $risk_list[$j]->work_num;
+
+                        if($risk_list[$j]->risk_level == 0){
+                            $gao = $gao + 1;
+                        }
+                        if($risk_list[$j]->risk_level == 1){
+                            $zhong = $zhong + 1;
+                        }
+                        if($risk_list[$j]->risk_level == 2){
+                            $di = $di + 1;
+                        }
+
+                        $content = $content . ($j+1) . '.' . $risk_list[$j]->risk_name;
 
-        $num = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', today())->where('is_delete',0)->get();
+                        $place = $place . ($j+1) . '.' . $risk_list[$j]->risk_location;
+
+                        $leader = $leader . ($j+1) . '.' . $risk_list[$j]->work_people;
+                    }
+
+                    $level_total = '';
+                    if($gao > 0){
+                        $level_total = $level_total . '高风险'.$gao.'项,';
+                    }
+                    if($zhong > 0){
+                        $level_total = $level_total . '中风险'.$zhong.'项,';
+                    }
+                    if($di > 0){
+                        $level_total = $level_total . '低风险'.$di.'项';
+                    }
+                    $level_total =  rtrim($level_total, ",");
+
+                    array_push($list,[
+                        'index'        => $index,
+                        'unit'         => $risk_list[0]->unit,
+                        'coal_washery' => $coal_list[$i]->title,
+                        'classes'      => $classes[$risk_list[0]->classes],
+                        'work_num'     => $people,
+                        'level'        => $level_total,
+                        'content'      => $content,
+                        'place'        => $place,
+                        'leader'       => $leader,
+                        'risk_describe'=> $risk_list[0]->risk_describe,
+                        'reviewer'     => ''
+                    ]);
+                }
+            }
+        }
 
-        $result['num'] = count($num);
+        $result['table_list'] = $list;
 
         return self::successResponse($result);
     }