+----------------------------------------------------------------------------------------------- */ use think\facade\Db; //获取项目状态 function get_status($id=0) { $status_array = ['未设置','未开始','进行中','已完成','已关闭']; if($id==0){ return $status_array; } else{ $news_array=[]; foreach($status_array as $key => $value){ if($key>0){ $news_array[]=array( 'id'=>$key, 'title'=>$value, ); } } return $news_array; } } //根据状态读取审批状态名称 function status_name($status=0) { $status_array = get_status(); return $status_array[$status]; } //获取任务全部状态 function get_task_status($id=0) { $status_task_array = ['未设置','未开始','进行中','已完成','已拒绝','已关闭']; if($id==0){ return $status_task_array; } else{ $news_array=[]; foreach($status_task_array as $key => $value){ if($key>0){ $news_array[]=array( 'id'=>$key, 'title'=>$value, ); } } return $news_array; } } //根据任务状态读取审批状态名称 function status_task_name($status=0) { $status_task_array = get_task_status(); return $status_task_array[$status]; } //获取任务紧急程度 function get_priority($id=0) { $priority_array = ['未设置','低','中','高','紧急']; if($id==0){ return $priority_array; } else{ $news_array=[]; foreach($priority_array as $key => $value){ if($key>0){ $news_array[]=array( 'id'=>$key, 'title'=>$value, ); } } return $news_array; } } //根据任务紧急程度名称 function priority_name($priority=0) { $priority_array = get_priority(); return $priority_array[$priority]; } //是否是项目管理员,count>1即有权限 function isAuthProject($uid) { if($uid == 1){ return 1; } $map = []; $map[] = ['name', '=', 'project_admin']; $map[] = ['', 'exp', Db::raw("FIND_IN_SET('{$uid}',conf_1)")]; $count = Db::name('DataAuth')->where($map)->count(); return $count; } //读取项目 function get_project($uid = 0) { $map = []; $map[] = ['delete_time', '=', 0]; if ($uid > 0) { $project_ids = Db::name('ProjectUser')->where(['uid' => $uid, 'delete_time' => 0])->column('project_id'); $map[] = ['id', 'in', $project_ids]; } $project = Db::name('Project')->where($map)->select()->toArray(); return $project; } //任务分配情况统计 function plan_count($arrData) { $documents = array(); foreach ($arrData as $index => $value) { $planTime = date("Y-m-d", $value['end_time']); if (empty($documents[$planTime])) { $documents[$planTime] = 1; } else { $documents[$planTime] += 1; } } return $documents; } //工时登记情况统计 function hour_count($arrData) { $documents = array(); foreach ($arrData as $index => $value) { $hourTime = date("Y-m-d", $value['start_time']); if (empty($documents[$hourTime])) { $documents[$hourTime] = $value['labor_time'] + 0; } else { $documents[$hourTime] += $value['labor_time']; } $documents[$hourTime] = round($documents[$hourTime], 2); } return $documents; } //燃尽图统计 function cross_count($arrData) { $documents = array(); foreach ($arrData as $index => $value) { $planTime = date("Y-m-d", $value['end_time']); if (empty($documents[$planTime])) { $documents[$planTime] = 1; } else { $documents[$planTime] += 1; } } return $documents; }