/////////////////////////////////////////////////////////////////
//Copyright (C) 2005 NTT CORPORATION.
//
//Scorm個別ログ　演習成績分析
//
//		変更履歴
//			2005.01.31  新規作成  OGA
//
//	機能
//
//この画面は演習成績分析画面を表示します
//
/////////////////////////////////////////////////////////////////
//------------------------------------------------
//入力値
//	strLoID_o		STRING			LoID
//	strUserID_o		STRING			ユーザーID
//	strLoType_o		STRING			Loタイプ
//	strUID_o		STRING			UID
//------------------------------------------------
//

/*
 * 作成日: 2005/02/15
 *
 * TODO この生成されたファイルのテンプレートを変更するには次へジャンプ:
 * ウィンドウ - 設定 - Java - コード・スタイル - コード・テンプレート
 */
package jp.co.ntt.lms.xmf.actions.lo.scorm.individuallog;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import java.text.DecimalFormat;
import java.util.Map;
import java.util.Vector;
import jp.co.ntt.lms.xms.logsumup.scorm.*;
import jp.co.ntt.lms.xmf.actions.lo.scorm.individuallog.inc.*;
import jp.co.ntt.lms.xmf.tools.xmo.Com.ComFunction;

/**
 * @author Administrator
 *
 * TODO この生成された型コメントのテンプレートを変更するには次へジャンプ:
 * ウィンドウ - 設定 - Java - コード・スタイル - コード・テンプレート
 */
public class ResultAnalysisAction extends Action{
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {

		IndividualLogComFunc_inc IndividualLogComFunc_inc = new IndividualLogComFunc_inc();
		IndividualLogCommon_inc IndividualLogCommon_inc = new IndividualLogCommon_inc();

		String strLoID_o         = request.getParameter( IndividualLogCommon_inc.STR_LOID_o );          // LoID
		String strUserID_o       = request.getParameter( IndividualLogCommon_inc.STR_USERID_o );        // ユーザーID
		String strLoType_o       = request.getParameter( IndividualLogCommon_inc.STR_LOTYPE_o );        // Loタイプ
		String strUID_o          = request.getParameter( IndividualLogCommon_inc.STR_UID_o );           // UID

		// 教材構造を取得
		ScormDocument scormDocument = ( ScormDocument )request.getSession().getAttribute( strLoID_o );
		ScormItemList itemList = new ScormItemList( scormDocument, strUID_o );
		// 取得した教材構造よりIDをキー、タイトルを値としたハッシュを設定します。
		IndividualLogComFunc_inc.setScoInfo( itemList );

		////////////////////////
		// データの取得
		////////////////////////
		IndividualLogResultStoreData objStoreData
			= new IndividualLogResultStoreData( strLoID_o, strUserID_o, strLoType_o , itemList );

		if( objStoreData.makeStoreData() != true ) {
			request.setAttribute("message", IndividualLogCommon_inc.MSG_MAKE_STOREDATA_o);
			request.setAttribute("detail", "");
			request.setAttribute("close", "on");

			return mapping.findForward("error");
		}

		// データがない場合
		if( objStoreData.getMaxData() == 0 ) {
			request.setAttribute("message", IndividualLogCommon_inc.MSG_DATA_ZERO_o);
			request.setAttribute("detail", "");
			request.setAttribute("close", "on");

			return mapping.findForward("error");
		}

		/////////////////////////////////////////////
		// html編集
		/////////////////////////////////////////////

		Vector vecStoreData = ( Vector )objStoreData.getStoreData( 0 );

		// １件目だけAUIDを取得
		String	strAU = ( String )vecStoreData.get( IndividualLogCommon_inc.DEF_RA_AU_ID_o );

		// 問題数
		int intNum = 1;

		request.setAttribute("IndividualLogCommon_inc",	IndividualLogCommon_inc);
		request.setAttribute("objStoreData", objStoreData);
		request.setAttribute("strAU", strAU);

		// SCOのタイトルが消える件のバグ対応 20070129 by Oga Start
		Map auInfoMap = IndividualLogComFunc_inc.getAuInfoMap();
		request.setAttribute("auInfoMap", auInfoMap);
		// SCOのタイトルが消える件のバグ対応 20070129 by Oga End
		
		return mapping.findForward("success");
	}

}
