isAjax()) { $param = request()->all(); $where = []; $model = new Videotasks(); # 风险点 $project_id = isset($param['project_id']) ? $param['project_id'] : ''; if (!empty($project_id)) { $where[] = ['risk_management_id', '=', $project_id]; } $list = $model->getPaginateList($where, ['*'], ['id' => 'asc'], [], $param['limit']); if($list['total']>0) { foreach ($list['data'] as $key => $item) { $whereao = [['id','=',$item['project_org_id']]]; $nameData = ((new AdminOrg())->findOne($whereao,'name'))['data']; $list['data'][$key]['projectname'] = isset($nameData['name']) ? $nameData['name'] : ''; $AdminUserData = (new AdminUser) ->where('id', $item['report_user_id']) ->first('nickname'); $list['data'][$key]['user_name'] =$AdminUserData ? $AdminUserData['nickname'] : ''; } } return sparkSuccess(dataReturn(0, 'success', $list)); } return view('video/videosupervision/index'); } /** * 查询巡检详情 * @param Request $request * @return \support\Response */ public function getInfo(Request $request){ $id = $request->get('id'); $VideosupervisionPartModel = new Videotasks(); $row = $VideosupervisionPartModel->getInfoById($id); $whereao = [['id','=',$row['project_org_id']]]; $nameData = ((new AdminOrg())->findOne($whereao,'name'))['data']; $row['projectname'] = isset($nameData['name']) ? $nameData['name'] : ''; $AdminUserData = (new AdminUser) ->where('id', $row['report_user_id']) ->first('nickname'); $row['user_name'] =$AdminUserData ? $AdminUserData['nickname'] : ''; View::assign(['info'=>json_encode($row)]); View::assign(['nickname'=>admin('name')]); return view('video/videosupervision/info'); } /** * 项目层级别树 * @param Request $request * @return \support\Response */ public function treeList(Request $request){ $param = $request->all(); $list = $this->getListorg(); return sparKSuccess(dataReturn(0, 'success', $list)); } /** 单位无分页列表 */ public function getListorg(){ $where = [['status','=',1],['level','<',4]]; $res = (new AdminOrg())->getAllList($where); $list = []; foreach ($res as $k=>$v){ $list[$k]['value'] = $v['id']; $list[$k]['label'] = $v['name']; $list[$k]['pid'] = $v['pid']; $list[$k]['id'] = $v['id']; $list[$k]['level'] = $v['level']; } return $this->getPidList($list); } private function getPidList($list){ $packData = []; $tree = []; foreach ($list as $data) { $packData[$data['id']] = $data; } foreach ($packData as $key => $val) { if ($val['pid'] == 0) { $tree[] = &$packData[$key]; } else { $packData[$val['pid']]['children'][] = &$packData[$key]; } } return $this->getEngineeringList($tree); } private function getEngineeringList($tree){ $model = new Management(); foreach ($tree as $k => $v) { foreach ($v['children'] as $k1 => $v1) { if (isset($v1['children'])) { foreach ($v1['children'] as $k2 => $v2) { $engineeringInfo = $model->getInfoByWhere(['project_org_id'=>$v2['id']],['id','name']); if ($engineeringInfo) { $tree[$k]['children'][$k1]['children'][$k2]['children'][] = ['value'=>$engineeringInfo['id'],'label'=>$engineeringInfo['name'],'pid'=>'','id'=>$engineeringInfo['id'],'level'=>4]; } } } } } return $tree; } }