//編集対象アカウントがトレーナーの場合、担当新入社員CD、名前取得 if (in_array(ACCOUNT_TRAINER, $param["disp_auth"])) { $trainer_new_emp = $account->getTrainerRelatedNewEmp($user_id); $param['trainer_new_emp_info'] = $trainer_new_emp; } //編集対象アカウントが責任者の場合、担当新入社員CD、名前取得 if (in_array(ACCOUNT_ADMIN, $param["disp_auth"])) { $admin_new_emp = $account->getAdminRelatedNewEmp($user_id); $param['admin_new_emp_info'] = $admin_new_emp; } //編集対象アカウントが新入社員の場合、担当トレーナー・責任者情報取得 if (in_array(ACCOUNT_NEW_EMP, $param["disp_auth"])) { //初期遷移 if (!isset($request['confirm_back'])) { $trainer = getRelatedTrainer($user_id); $admin = getRelatedAdmin($user_id); } //トレーナー・責任者数分処理 for ($i = 0; $i < 3; $i++) { //初期遷移 if (!isset($request['confirm_back'])) { $param["user_id_trainer{$i}"] = isset($trainer) && isset($trainer[$i]) ? $trainer[$i]["id"] : null; $param["department_cd_trainer{$i}"] = isset($trainer) && isset($trainer[$i]) ? $trainer[$i]["department_cd"] : null; $param["division_cd_trainer{$i}"] = isset($trainer) && isset($trainer[$i]) ? $trainer[$i]["division_cd"] : null; $param["section_cd_trainer{$i}"] = isset($trainer) && isset($trainer[$i]) ? $trainer[$i]["section_cd"] : null; $param["user_id_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["id"] : null; $param["department_cd_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["department_cd"] : null; $param["division_cd_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["division_cd"] : null; $param["section_cd_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["section_cd"] : null; $param["start_date_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["start_date"] : null; $param["end_date_admin{$i}"] = isset($admin) && isset($admin[$i]) ? $admin[$i]["end_date"] : null;
} //日付から対象の週を取得 $date = $report->getWeeklyDays($date); //日報取得 $daily_report = $report->getDailyReport($date, $employee['id'], $year, $month); $weekly_report = $report->getWeeklyReport($date, $employee['id']); //週初めの曜日と週終わりの曜日取得 $w = $report->getDay($date); //週報の上部の日時表示用に変換 $days = $report->weeklyDaysConvirsion($date, $w); //週初めから週終わりまでの日付(7日間を取得設定) $weekDays = $report->setWeeklyDays($date); // //担当新入社員を取得 $trainer = getRelatedTrainer($employee['id']); $admin = getRelatedAdmin($employee['id']); for ($i = 0; $i < count($trainer); $i++) { if (in_array($_SESSION[SESSION_USER_ID], $trainer[$i])) { $param['button_flg']['trainer'] = true; break; } else { $param['button_flg']['trainer'] = false; } } for ($i = 0; $i < count($admin); $i++) { if (in_array($_SESSION[SESSION_USER_ID], $admin[$i])) { $param['button_flg']['admin'] = true; break; } else { $param['button_flg']['admin'] = false; }
//あいまい検索用(社員名) if (emp($admin_name)) { $query_ary['admin_name'] = $admin_name; } else { $query_ary['admin_name'] = "%{$admin_name}%"; } $admin_ary = array(); $relation_ary = array(); // 新入社員から検索する場合、担当責任者情報を取得し、 // 責任者の社員マスタIDを使ってヒアリングシート検索メソッドへ if (empty($new_emp_info)) { } else { for ($i = 0; $i < count($new_emp_info); $i++) { $query_ary['new_emp_id'] .= "," . $new_emp_info[$i]["id"]; $related_admin[]["staff_id"] = $new_emp_info[$i]["id"]; $admin_ary = getRelatedAdmin($new_emp_info[$i]["id"]); for ($j = 0; $j < count($admin_ary); $j++) { $query_ary['admin_id'] .= "," . $admin_ary[$j]["id"]; $start_month = ""; $end_month = ""; $start_month = (int) substr($admin_ary[$j]["start_date"], 4, 2); $end_month = (int) substr($admin_ary[$j]["end_date"], 4, 2); // $val['end_date']に月末を含んでいなければ$end_monthを-1する(月末まで担当している場合にヒアリングシートを記入するため) $year_of_end_date = getYear($admin_ary[$j]["end_date"]); $end_of_end_date = getYYYYMMDD($year_of_end_date, $end_month, "end_of_month"); if ($admin_ary[$j]["end_date"] < $end_of_end_date) { $end_month = $end_month - 1; } // $relation_aryに、検索した新入社員と彼らに紐付く責任者の担当期間を保持 // 検索結果表示時の配列生成に使用 if ($start_month <= $end_month) {