* @author yuji TAKAHASHI */ /************************************ MakeOddmans : デフォルトルートの作成 *************************************/ function MakeOddmans($petitionTime, $petitionCd, $conn, $dbSqlObj, $dbExecObj) { global $PHP_AUTH_USER; $now_emp_cd = $PHP_AUTH_USER; // チーフがいなくなるまでループ for ($i = 1;; $i++) { $strSql = $dbSqlObj->selectChiefempFromNowEmpCd($now_emp_cd); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { echo "チーフ情報が取得できません。
\n"; echo "[BACK]\n"; $dbExecObj->exeSql($dbSqlObj->sqlRollBackTrans()); exit; } if ($dbExecObj->getNumRows($result) <= 0) { break; } $now_emp_cd = $dbExecObj->getResult($result, 0, "chief"); $strSql = $dbSqlObj->insertOddmansWithI($petitionTime,$petitionCd,$now_emp_cd,$i); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { echo "決裁者情報を設定できません。
\n"; echo "[BACK]\n"; $dbExecObj->exeSql($conn, $dbSqlObj->sqlRollBackTrans()); exit; } } } /************************************ GetOddmansArray : デフォルトルート決裁者の配列の取得 *************************************/ function GetOddmansArray($conn, $dbSqlObj, $dbExecObj) { global $PHP_AUTH_USER; $oddmansArr = array(); // デフォルトルート決裁者の配列 $now_emp_cd = $PHP_AUTH_USER; // チーフがいなくなるまでループ for (;;) { $strSql = $dbSqlObj->selectEmployeeChiefInformation($now_emp_cd); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { echo "チーフ情報が取得できません。
\n"; echo "[BACK]\n"; exit; } if ($dbExecObj->getNumRows($result) <= 0) { break; } $now_emp_cd = $dbExecObj->getResult($result, 0, "emp_cd"); array_push($oddmansArr, $dbExecObj->getResult($result, 0, "name")); } return $oddmansArr; } /************************************ MakeOddmansDirect : ダイレクトルートの作成 *************************************/ function MakeOddmansDirect($petitionTime, $petitionCd, $conn, $dbSqlObj,$dbExecObj) { $strSql = $dbSqlObj->selectEmployeeEmpcdWithUnify(); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { $dbExecObj->exeSql($conn, $dbSqlObj->sqlRollBackTrans()); echo "データベースに異常:業務統括情報の取得に失敗しました。
\n"; echo "[BACK]\n"; exit; } if ($dbExecObj->getNumRows($result) <= 0) { $dbExecObj->exeSql($conn, $dbSqlObj->sqlRollBackTrans()); echo "業務統括者が設定されていません。
\n"; echo "[BACK]\n"; exit; } $tmpEmp_cd = $dbExecObj->getResult($result, 0, "emp_cd"); $strSql = $dbSqlObj->insertOddmans($petitionTime, $petitionCd, $tmpEmp_cd, 1); $result = $dbExecObj->exeSql($conn,$strSql); if (!$result) { $dbExecObj->exeSql($conn, $dbSqlObj->sqlRollBackTrans()); echo "決裁者情報を設定できません。
\n"; echo "[BACK]\n"; exit; } } /************************************ GetOddmansArrayDirect : ダイレクトルート決裁者の取得 *************************************/ function GetOddmansArrayDirect($conn, $dbSqlObj,$dbExecObj) { $strSql = $dbSqlObj->selectEmployeeNameWithUnify(); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { echo "データベースに異常:業務統括情報の取得に失敗しました。
\n"; echo "[BACK]\n"; exit; } if ($dbExecObj->getNumRows($result) <= 0) { echo "業務統括者が設定されていません。
\n"; echo "[BACK]\n"; exit; } return $dbExecObj->getResult($result, 0, "name"); } /************************************ MakeOddmansOriginal : オリジナルルートの作成 *************************************/ function MakeOddmansOriginal($petition_time, $petition_cd, $conn, $petition_time_temp,$dbSqlObj,$dbExecObj) { $strSql = $dbSqlObj->updateOddmansTimeWhereTime($petition_time,$petition_time_temp); $result = $dbExecObj->exeSql($conn, $strSql); if (!$result) { $dbExecObj->exeSql($conn, $dbSqlObj->sqlRollBackTrans()); echo "データベースに異常:決裁者登録に失敗しました。
\n"; echo "[BACK]\n"; exit; } } ?>