/*
このファイルの中身は、NTT オープンソースライセンス　バージョン 1.0（「本
契約」という）の適用を受けます。
本契約を遵守しない限り、このファイルを使用してはなりません。
本契約のコピーは、次のＵＲＬから入手できます。
【配布サイトのURL】 http://www.oss.ecl.ntt.co.jp/lms/

本契約に基づき頒布されるソフトウェアは、現状のまま、明示又は黙示のあらゆ
る種類の保証なしで、頒布されます。本契約に基づく権利及び制限を律する特定
の文言については、本契約を参照してください。

「オリジナルコード」は、 NTT Cyber Space Laboratories Code です。 
「オリジナルコード」の「初期開発者」は、日本電信電話株式会社です。  
日本電信電話株式会社により創作された部分は、Copyright (C) 2004 
日本電信電話株式会社 です。
全ての権利が留保されます。 
「コントリビュータ」：_____________________________________ 


The contents of this file are subject to the NTT Opensource License
Version 1.0 (the License); you may not use this file except in
compliance with the License. You may obtain a copy of the License at
【配布サイトのURL】 http://www.oss.ecl.ntt.co.jp/lms/

Software distributed under the License is distributed on an AS IS
basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
License for the specific language governing rights and limitations
under the License.

The Original Code is NTT Cyber Space Laboratories Code .

The Initial Developer of the Original Code is NIPPON TELEGRAPH AND 
TELEPHONE CORPORATION.
Portions created by the NIPPON TELEGRAPH AND TELEPHONE CORPORATION 
are Copyright (C) 2004 NIPPON TELEGRAPH AND TELEPHONE CORPORATION. 
All Rights Reserved.

Contributor(s) ______________________________________.
*/

//
// 学習状況(共通パラメータ)格納ValueObject
// 
//
//	変更履歴
//	2004.01.08 新規作成		ishizaki 
//

package jp.co.ntt.lms.xms.logsumup;

import java.io.Serializable;
import java.lang.reflect.Method;

/**
 * 学習状況(共通パラメータ)格納ValueObject
 * 
 * @author ishizaki
 * 
 */
public class LoLogLearnStatusParam implements Serializable {
	/** 学習開始日(date_start)*/					
	private String dateStart;
	/** 学習開始日(以降/以前)*/
	private String dateStartCondition;

	/** 最終アクセス日時(date_last)*/
	private String dateLast;
	/** 最終アクセス日時(以降/以前)*/
	private String dateLastCondition;

	/** 総アクセス回数(total_access)*/
	private String totalAccess;		
	/** 総アクセス回数(以上/以下)*/
	private String totalAccessCondition;		

	/** 累積滞在時間(total_learn_time)*/					
	private String totalLearnTime;
	/** 累積滞在時間(以上/以下)*/					
	private String totalLearnTimeCondition;					

	/** 完了LO数(mat_complete)*/					
	private String matComplete; 					
	/** 完了LO数(以上/以下)*/
	private String matCompleteCondition; 					

	/** 合格ＬＯ数(mat_pass)*/					
	private String matPass;					
	/** 合格ＬＯ数(以上/以下)*/					
	private String matPassCondition;					

	/** 最新得点(mat_newest_score)*/					
	private String matNewestScore;				
	/** 最新得点(以上/以下)*/					
	private String matNewestScoreCondition;				

	/** 最高得点(mat_high_score)*/					
	private String matHighScore;					
	/** 最高得点(以上/以下)*/					
	private String matHighScoreCondition;					

	/** 完了者数(user_complete_condition)*/							
	private String userComplete;					
	/** 完了者数(以上/以下)*/							
	private String userCompleteCondition;					

	/** 合格者数(user_pass)*/							
	private String userPass;
	/** 合格者数(以上/以下)*/							
	private String userPassCondition;
						
	/** 完了(complete_condition)*/					
	private String completeCondition;					
	/** 合格(pass_condition)*/					
	private String passCondition;					
	
	/** ログメニューから来たかどうかあらわすフラグ */
	private String menu;
	/** 所属グループID　*/
	private String belonggroupid;
	/** 配下直下フラグ */
	private String subordinateFlg;
	/**
	 * コンストラクタ
	 */
	public LoLogLearnStatusParam(){
	}

	/**
	 * Returns the completeCondition.
	 * @return String
	 */
	public String getCompleteCondition() {
		return completeCondition;
	}

	/**
	 * Returns the dateLast.
	 * @return String
	 */
	public String getDateLast() {
		return dateLast;
	}

	/**
	 * Returns the dateLastCondition.
	 * @return String
	 */
	public String getDateLastCondition() {
		return dateLastCondition;
	}

	/**
	 * Returns the dateStart.
	 * @return String
	 */
	public String getDateStart() {
		return dateStart;
	}

	/**
	 * Returns the dateStartCondition.
	 * @return String
	 */
	public String getDateStartCondition() {
		return dateStartCondition;
	}

	/**
	 * Returns the matComplete.
	 * @return String
	 */
	public String getMatComplete() {
		return matComplete;
	}

	/**
	 * Returns the matCompleteCondition.
	 * @return String
	 */
	public String getMatCompleteCondition() {
		return matCompleteCondition;
	}

	/**
	 * Returns the matHighScore.
	 * @return String
	 */
	public String getMatHighScore() {
		return matHighScore;
	}

	/**
	 * Returns the matHighScoreCondition.
	 * @return String
	 */
	public String getMatHighScoreCondition() {
		return matHighScoreCondition;
	}

	/**
	 * Returns the matNewestScore.
	 * @return String
	 */
	public String getMatNewestScore() {
		return matNewestScore;
	}

	/**
	 * Returns the matNewestScoreCondition.
	 * @return String
	 */
	public String getMatNewestScoreCondition() {
		return matNewestScoreCondition;
	}

	/**
	 * Returns the matPass.
	 * @return String
	 */
	public String getMatPass() {
		return matPass;
	}

	/**
	 * Returns the matPassCondition.
	 * @return String
	 */
	public String getMatPassCondition() {
		return matPassCondition;
	}

	/**
	 * Returns the passCondition.
	 * @return String
	 */
	public String getPassCondition() {
		return passCondition;
	}

	/**
	 * Returns the totalAccess.
	 * @return String
	 */
	public String getTotalAccess() {
		return totalAccess;
	}

	/**
	 * Returns the totalAccessCondition.
	 * @return String
	 */
	public String getTotalAccessCondition() {
		return totalAccessCondition;
	}

	/**
	 * Returns the totalLearnTime.
	 * @return String
	 */
	public String getTotalLearnTime() {
		return totalLearnTime;
	}

	/**
	 * Returns the totalLearnTimeCondition.
	 * @return String
	 */
	public String getTotalLearnTimeCondition() {
		return totalLearnTimeCondition;
	}

	/**
	 * Returns the userComplete.
	 * @return String
	 */
	public String getUserComplete() {
		return userComplete;
	}

	/**
	 * Returns the userCompleteCondition.
	 * @return String
	 */
	public String getUserCompleteCondition() {
		return userCompleteCondition;
	}

	/**
	 * Returns the userPass.
	 * @return String
	 */
	public String getUserPass() {
		return userPass;
	}

	/**
	 * Returns the userPassCondition.
	 * @return String
	 */
	public String getUserPassCondition() {
		return userPassCondition;
	}

	/**
	 * Sets the completeCondition.
	 * @param completeCondition The completeCondition to set
	 */
	public void setCompleteCondition(String completeCondition) {
		this.completeCondition = completeCondition;
	}

	/**
	 * Sets the dateLast.
	 * @param dateLast The dateLast to set
	 */
	public void setDateLast(String dateLast) {
		this.dateLast = dateLast;
	}

	/**
	 * Sets the dateLastCondition.
	 * @param dateLastCondition The dateLastCondition to set
	 */
	public void setDateLastCondition(String dateLastCondition) {
		this.dateLastCondition = dateLastCondition;
	}

	/**
	 * Sets the dateStart.
	 * @param dateStart The dateStart to set
	 */
	public void setDateStart(String dateStart) {
		this.dateStart = dateStart;
	}

	/**
	 * Sets the dateStartCondition.
	 * @param dateStartCondition The dateStartCondition to set
	 */
	public void setDateStartCondition(String dateStartCondition) {
		this.dateStartCondition = dateStartCondition;
	}

	/**
	 * Sets the matComplete.
	 * @param matComplete The matComplete to set
	 */
	public void setMatComplete(String matComplete) {
		this.matComplete = matComplete;
	}

	/**
	 * Sets the matCompleteCondition.
	 * @param matCompleteCondition The matCompleteCondition to set
	 */
	public void setMatCompleteCondition(String matCompleteCondition) {
		this.matCompleteCondition = matCompleteCondition;
	}

	/**
	 * Sets the matHighScore.
	 * @param matHighScore The matHighScore to set
	 */
	public void setMatHighScore(String matHighScore) {
		this.matHighScore = matHighScore;
	}

	/**
	 * Sets the matHighScoreCondition.
	 * @param matHighScoreCondition The matHighScoreCondition to set
	 */
	public void setMatHighScoreCondition(String matHighScoreCondition) {
		this.matHighScoreCondition = matHighScoreCondition;
	}

	/**
	 * Sets the matNewestScore.
	 * @param matNewestScore The matNewestScore to set
	 */
	public void setMatNewestScore(String matNewestScore) {
		this.matNewestScore = matNewestScore;
	}

	/**
	 * Sets the matNewestScoreCondition.
	 * @param matNewestScoreCondition The matNewestScoreCondition to set
	 */
	public void setMatNewestScoreCondition(String matNewestScoreCondition) {
		this.matNewestScoreCondition = matNewestScoreCondition;
	}

	/**
	 * Sets the matPass.
	 * @param matPass The matPass to set
	 */
	public void setMatPass(String matPass) {
		this.matPass = matPass;
	}

	/**
	 * Sets the matPassCondition.
	 * @param matPassCondition The matPassCondition to set
	 */
	public void setMatPassCondition(String matPassCondition) {
		this.matPassCondition = matPassCondition;
	}

	/**
	 * Sets the passCondition.
	 * @param passCondition The passCondition to set
	 */
	public void setPassCondition(String passCondition) {
		this.passCondition = passCondition;
	}

	/**
	 * Sets the totalAccess.
	 * @param totalAccess The totalAccess to set
	 */
	public void setTotalAccess(String totalAccess) {
		this.totalAccess = totalAccess;
	}

	/**
	 * Sets the totalAccessCondition.
	 * @param totalAccessCondition The totalAccessCondition to set
	 */
	public void setTotalAccessCondition(String totalAccessCondition) {
		this.totalAccessCondition = totalAccessCondition;
	}

	/**
	 * Sets the totalLearnTime.
	 * @param totalLearnTime The totalLearnTime to set
	 */
	public void setTotalLearnTime(String totalLearnTime) {
		this.totalLearnTime = totalLearnTime;
	}

	/**
	 * Sets the totalLearnTimeCondition.
	 * @param totalLearnTimeCondition The totalLearnTimeCondition to set
	 */
	public void setTotalLearnTimeCondition(String totalLearnTimeCondition) {
		this.totalLearnTimeCondition = totalLearnTimeCondition;
	}

	/**
	 * Sets the userComplete.
	 * @param userComplete The userComplete to set
	 */
	public void setUserComplete(String userComplete) {
		this.userComplete = userComplete;
	}

	/**
	 * Sets the userCompleteCondition.
	 * @param userCompleteCondition The userCompleteCondition to set
	 */
	public void setUserCompleteCondition(String userCompleteCondition) {
		this.userCompleteCondition = userCompleteCondition;
	}

	/**
	 * Sets the userPass.
	 * @param userPass The userPass to set
	 */
	public void setUserPass(String userPass) {
		this.userPass = userPass;
	}

	/**
	 * Sets the userPassCondition.
	 * @param userPassCondition The userPassCondition to set
	 */
	public void setUserPassCondition(String userPassCondition) {
		this.userPassCondition = userPassCondition;
	}


	/**
	 * プロパティに設定されている値の一覧を返却します<br>
	 * 
	 * このオブジェクトのgetterメソッドを実行しプロパティの一覧を返します
	 *
	 * @return プロパティに設定されている値の一覧を返却します
	 */
	public String toString(){
		StringBuffer buffer = new StringBuffer();

		try {
			Method methods[] = this.getClass().getDeclaredMethods();
			for(int i=0;i<methods.length;i++){
				String methodName = methods[i].getName();
				if(methodName.startsWith("get") || methodName.startsWith("is")){
					Object o = 
					(Object)this.getClass().getMethod(methodName,null).invoke(this,null);
					buffer.append("[");
					buffer.append(methodName);
					buffer.append(":");
					if(o == null){
						buffer.append("null");
					}else{
						buffer.append(o.toString());
					}
					buffer.append("]");
					buffer.append("\r\n");					

				}
			}

		} catch (Exception e) {
			//デバック用なのでなにもしない
		}
		return buffer.toString();
	}

	/**
	 * Returns the menu.
	 * @return String
	 */
	public String getMenu() {
		return menu;
	}

	/**
	 * Sets the menu.
	 * @param menu The menu to set
	 */
	public void setMenu(String menu) {
		this.menu = menu;
	}

	/**
	 * Returns the belonggroupid.
	 * @return String
	 */
	public String getBelonggroupid() {
		return belonggroupid;
	}

	/**
	 * Sets the belonggroupid.
	 * @param belonggroupid The belonggroupid to set
	 */
	public void setBelonggroupid(String belonggroupid) {
		this.belonggroupid = belonggroupid;
	}

	/**
	 * Returns the subordinateFlg.
	 * @return String
	 */
	public String getSubordinateFlg() {
		return subordinateFlg;
	}

	/**
	 * Sets the subordinateFlg.
	 * @param subordinateFlg The subordinateFlg to set
	 */
	public void setSubordinateFlg(String subordinateFlg) {
		this.subordinateFlg = subordinateFlg;
	}

}
