/** * Copy leave quota between years * * Copy leave quota from $fromYear to $toYear * * @param int $fromYear * @param int $toYear * @return boolean */ public function copyQuota($fromYear, $toYear) { $sqlBuilder = new SQLQBuilder(); $table = "`" . self::LEAVEQUOTA_DB_TABLE_EMPLOYEE_LEAVE_QUOTA . "`"; $insertFields[0] = "`" . self::LEAVEQUOTA_DB_FIELD_YEAR . "`"; $insertFields[1] = "`" . self::LEAVEQUOTA_DB_FIELD_LEAVE_TYPE_ID . "`"; $insertFields[2] = "`" . self::LEAVEQUOTA_DB_FIELD_EMPLOYEE_ID . "`"; $insertFields[3] = "`" . self::LEAVEQUOTA_DB_FIELD_NO_OF_DAYS_ALLOTED . "`"; $selectFields[0] = "{$toYear}"; $selectFields[1] = "`" . self::LEAVEQUOTA_DB_FIELD_LEAVE_TYPE_ID . "`"; $selectFields[2] = "`" . self::LEAVEQUOTA_DB_FIELD_EMPLOYEE_ID . "`"; $selectFields[3] = "`" . self::LEAVEQUOTA_DB_FIELD_NO_OF_DAYS_ALLOTED . "`"; $selectConditions[0] = "`" . self::LEAVEQUOTA_DB_FIELD_YEAR . "` = '{$fromYear}'"; $selectQuery = $sqlBuilder->simpleSelect($table, $selectFields, $selectConditions); $deleteConditions[0] = "`" . self::LEAVEQUOTA_DB_FIELD_YEAR . "` = '{$toYear}'"; $deleteQuery = $sqlBuilder->simpleDelete($table, $deleteConditions); $query = $sqlBuilder->simpleInsert($table, $selectQuery, $insertFields); $dbConnection = new DMLFunctions(); $dbConnection->executeQuery($deleteQuery); $result = $dbConnection->executeQuery($query); if ($result) { return true; } return false; }