|
@@ -2884,7 +2884,7 @@ class CameraApiController extends BaseController
|
|
|
if (!isset($params['area_id'])) {
|
|
|
return self::errorResponse(ApiEnum::STATUS_CODE_EMPTY);
|
|
|
}
|
|
|
-
|
|
|
+
|
|
|
$coal_washery_id_list = DB::connection('mysql_fwe10')->table('uf_xx_coal_washery')->where('area_id',$params['area_id'])->where('is_delete',0)->pluck('id');
|
|
|
$result = [];
|
|
|
$start_date = $params['start_date'];
|
|
@@ -2907,113 +2907,149 @@ class CameraApiController extends BaseController
|
|
|
//导出总表
|
|
|
public function export1(Request $request){
|
|
|
$params = $request->all();
|
|
|
- $result = [];
|
|
|
- $classes = ['早班','中班','夜班'];
|
|
|
- $risk_level = ['高','中','低'];
|
|
|
- $risk_desc = ['高风险','中风险','低风险'];
|
|
|
-
|
|
|
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 = [];
|
|
|
+ $classes = ['早班','中班','夜班'];
|
|
|
+ $risk_desc = ['高风险','中风险','低风险'];
|
|
|
+ // 风险类型
|
|
|
+ $risk_type = DB::connection('mysql_fwe10')->table('field_option')->where('field_id', '1055270106096394246')->get();
|
|
|
+ $risk_type_dict = [];
|
|
|
+ foreach ($risk_type as $key=>$value) {
|
|
|
+ $risk_type_key = $value->value_key;
|
|
|
+ $risk_type_name = $value->NAME;
|
|
|
+ $risk_type_dict[$risk_type_key] = $risk_type_name;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 风险数据
|
|
|
+ $risk_list = DB::connection('mysql_fwe10')->table('uf_xx_risk_assignment')->whereDate('create_time', $date)->where('is_delete',0)->get();
|
|
|
+ // 洗煤厂数据
|
|
|
+ $coal_washery_list = DB::connection('mysql_fwe10')->table('uf_xx_coal_washery')->where('is_delete',0)->orderBy('sort')->get();
|
|
|
+ $col_washery_dict = [];
|
|
|
+ foreach ($coal_washery_list as $key=>$value) {
|
|
|
+ $col_washery_dict[$value->ID] = $value;
|
|
|
+ }
|
|
|
+
|
|
|
+ $res = [
|
|
|
+ "num" => 0,
|
|
|
+ "gao" => 0,
|
|
|
+ "zhong" => 0,
|
|
|
+ "di" => 0,
|
|
|
+ "ziying" => 0,
|
|
|
+ "waiwei" => 0,
|
|
|
+ "risk_info" => "",
|
|
|
+ "table_list" => [],
|
|
|
+ ];
|
|
|
+ $risk_zhong_con = [];
|
|
|
+ $coal_washery_risk_list = [];
|
|
|
+
|
|
|
+ foreach ($risk_list as $key=>$value) {
|
|
|
+ // 风险数量统计
|
|
|
+ $risk_level = $value->risk_level;
|
|
|
+ $risk_type = $risk_type_dict[$value->risk_type] ?? 2;
|
|
|
+ if($risk_level == 0) {
|
|
|
+ $res['gao']++;
|
|
|
+ } else if($risk_level == 1) {
|
|
|
+ $res['zhong']++;
|
|
|
+ if (!isset($risk_zhong_con[$risk_type])) {
|
|
|
+ $risk_zhong_con[$risk_type] = 1;
|
|
|
+ } else {
|
|
|
+ $risk_zhong_con[$risk_type] ++;
|
|
|
+ };
|
|
|
+ } else {
|
|
|
+ $res['di']++;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 洗煤厂类型统计
|
|
|
+ $col_washery_id = $value->coal_washery_id;
|
|
|
+ $col_washery_type = $col_washery_dict[$col_washery_id]->obj_type;
|
|
|
+ if($col_washery_type == 0) {
|
|
|
+ $res['ziying']++;
|
|
|
+ } else if ($col_washery_type == 1) {
|
|
|
+ $res['waiwei']++;
|
|
|
+ }
|
|
|
+ // 煤矿风险列表
|
|
|
+ $coal_washery_risk_list[$col_washery_id][] = $value;
|
|
|
+ }
|
|
|
+
|
|
|
+ $res['num'] = count($risk_list);
|
|
|
+
|
|
|
+ $coal_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 = '';//负责人
|
|
|
- $reviewer = [];//审核人
|
|
|
-
|
|
|
- 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.'('.$risk_desc[$risk_list[$j]->risk_level].');';
|
|
|
-
|
|
|
- $place = $place . ($j+1) . '.' . $risk_list[$j]->risk_location.';';
|
|
|
-
|
|
|
- $leader = $leader . ($j+1) . '.' . $risk_list[$j]->work_people.';';
|
|
|
-
|
|
|
- if($risk_list[$j]->shr != null){
|
|
|
- $reviewer[] = $risk_list[$j]->shr;
|
|
|
- }
|
|
|
+ foreach ($col_washery_dict as $key => $value) {
|
|
|
+ $id = $value->ID;
|
|
|
+ if (isset($coal_washery_risk_list[$id])) {
|
|
|
+ $index++;
|
|
|
+ $people = 0;//计划人数
|
|
|
+ $gao = 0;
|
|
|
+ $zhong = 0;
|
|
|
+ $di = 0;
|
|
|
+ $content = '';//工作内容
|
|
|
+ $place = '';//作业地点
|
|
|
+ $leader = '';//负责人
|
|
|
+ $reviewer = [];//审核人
|
|
|
+ $coal_washery_risk_info_arr = $coal_washery_risk_list[$id];
|
|
|
+
|
|
|
+ $risk_index = 0;
|
|
|
+ foreach ($coal_washery_risk_info_arr as $k => $v) {
|
|
|
+ $people += $v->work_num;
|
|
|
+ if ($v->risk_level == 0) {
|
|
|
+ $gao++;
|
|
|
+ } else if ($v->risk_level == 1) {
|
|
|
+ $zhong++;
|
|
|
+ } else {
|
|
|
+ $di++;
|
|
|
}
|
|
|
|
|
|
- $reviewer = array_unique($reviewer);
|
|
|
- $reviewer = implode(',',$reviewer);
|
|
|
+ $content .= ++$risk_index.".".$v->risk_name.'('.$risk_desc[$v->risk_level].');';
|
|
|
+ $place .= $risk_index.".".$v->risk_location;
|
|
|
+ $leader .= $risk_index.".".$v->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.'项';
|
|
|
+ $reviewer = array_unique($reviewer);
|
|
|
+ if (isset($v->shr) && !empty($v->shr)) {
|
|
|
+ $reviewer[] = $v->shr;
|
|
|
}
|
|
|
- $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' => $reviewer
|
|
|
- ]);
|
|
|
}
|
|
|
+ $level_total = '';
|
|
|
+ if ($gao > 0) $level_total .= '高风险'.$gao.'项 ';
|
|
|
+ if ($zhong > 0) $level_total .= '中风险'.$zhong.'项 ';
|
|
|
+ if ($di > 0) $level_total .= '低风险'.$di.'项 ';
|
|
|
+
|
|
|
+ $coal_list[] = [
|
|
|
+ 'index' => $index,
|
|
|
+ 'unit' => $v->unit,
|
|
|
+ 'coal_washery' => $value->title,
|
|
|
+ 'classes' => $classes[$v->classes],
|
|
|
+ 'work_num' => $people,
|
|
|
+ 'level' => $level_total,
|
|
|
+ 'content' => $content,
|
|
|
+ 'place' => $place,
|
|
|
+ 'leader' => $leader,
|
|
|
+ 'risk_dexcribe' => $v->risk_describe,
|
|
|
+ 'reviewer' => implode(',', $reviewer),
|
|
|
+ 'id' => $value->ID,
|
|
|
+ ];
|
|
|
+ }
|
|
|
+ }
|
|
|
+ $res['table_list'] = $coal_list;
|
|
|
+
|
|
|
+ if ($res['zhong'] > 0) {
|
|
|
+ $risk_zhong_info = '(其中:';
|
|
|
+ foreach ($risk_zhong_con as $key => $value) {
|
|
|
+ $risk_zhong_info .= $key.$value.'项,';
|
|
|
}
|
|
|
+ $risk_zhong_info = substr($risk_zhong_info, 0, -3);
|
|
|
+ $risk_zhong_info .= ');';
|
|
|
+ } else {
|
|
|
+ $risk_zhong_info = ";";
|
|
|
}
|
|
|
|
|
|
- $result['table_list'] = $list;
|
|
|
+ $res['risk_info'] = "总作业项:".$res['num']."项;高风险:".$res['gao']."项;中风险:".$res['zhong']."项".$risk_zhong_info."低风险:".$res['di']."项。";
|
|
|
|
|
|
- return $result;
|
|
|
+ return $res;
|
|
|
}
|
|
|
|
|
|
//导出分类表
|
|
@@ -3417,4 +3453,4 @@ class CameraApiController extends BaseController
|
|
|
|
|
|
return $this->success($result);
|
|
|
}
|
|
|
-}
|
|
|
+}
|