package jp.mosp.common;

public class ExportInfoUtility {

	/**
	 * 恖帠忣曬庢摼梡攝楍
	 */
	protected String[] aryKihonItem;

	/**
	 * 嬑懹忣曬崁栚梡攝楍
	 */
	protected String[] aryKintaiItem;

	/**
	 * 弌嬑曤忣曬崁栚梡攝楍
	 */
	protected String[] arySyukkinItem;

	/**
	 * 桳媼媥壣忣曬崁栚梡攝楍
	 */
	protected String[] aryYukyuItem;

	/**
	 * 僐儞僗僩儔僋僞
	 */
	public ExportInfoUtility() {

	}

	/**
	 * 僐儞僗僩儔僋僞(弶婜壔)
	 * @param aryKihonItem			恖帠忣曬庢摼梡攝楍
	 * @param aryKintaiItem			嬑懹忣曬崁栚梡攝楍
	 * @param arySyukkinItem		弌嬑曤忣曬崁栚梡攝楍
	 * @param aryYukyuItem			桳媼媥壣忣曬崁栚梡攝楍
	 */
	public ExportInfoUtility(
			String[] aryKihonItem,
			String[] aryKintaiItem,
			String[] arySyukkinItem,
			String[] aryYukyuItem
	) {
		init(aryKihonItem, aryKintaiItem, arySyukkinItem, aryYukyuItem);
	}

	/**
	 * 弶婜壔
	 * @param aryKihonItem			恖帠忣曬庢摼梡攝楍
	 * @param aryKintaiItem			嬑懹忣曬崁栚梡攝楍
	 * @param arySyukkinItem		弌嬑曤忣曬崁栚梡攝楍
	 * @param aryYukyuItem			桳媼媥壣忣曬崁栚梡攝楍
	 */
	public void init(
			String[] aryKihonItem,
			String[] aryKintaiItem,
			String[] arySyukkinItem,
			String[] aryYukyuItem
	) {
		this.aryKihonItem 		= aryKihonItem.clone();
		this.aryKintaiItem 		= aryKintaiItem.clone();
		this.arySyukkinItem 	= arySyukkinItem.clone();
		this.aryYukyuItem 		= aryYukyuItem.clone();
	}

	/**
	 * 僄僋僗億乕僩忣曬崁栚愝掕
	 * @param strFLID	懳徾僥乕僽儖僐乕僪
	 * @return	String[][]	僄僋僗億乕僩忣曬崁栚攝楍
	 * @throws Exception
	 */
	public String[][] getKintaiDataItem(String strFLID) throws Exception {
		int ItemLength = aryKihonItem.length;
		if (strFLID.equals(CommonConst.CODE_TABLE_M_KINTAI)) {
			ItemLength += aryKintaiItem.length;
		}
		if (strFLID.equals(CommonConst.CODE_TABLE_M_SYUKKINBO)) {
			ItemLength += arySyukkinItem.length;
		}
		if (strFLID.equals(CommonConst.CODE_TABLE_M_YUKYU)) {
			ItemLength += aryYukyuItem.length;
		}
		int i = 0;
		String[][] aryItem = new String[ItemLength][2];
		// 恖帠忣曬庢摼梡攝楍
		for (i = 0; i < aryKihonItem.length; i++) {
			aryItem[i][0] = aryKihonItem[i];
			aryItem[i][1] = spritInfo(aryKihonItem[i], 3);
		}
		// 嬑懹忣曬崁栚梡攝楍
		int j = i;
		if (strFLID.equals(CommonConst.CODE_TABLE_M_KINTAI)) {
			for (i = 0; i < aryKintaiItem.length; i++) {
				aryItem[j+i][0] = aryKintaiItem[i];
				aryItem[j+i][1] = spritInfo(aryKintaiItem[i], 3);
			}
		}
		// 弌嬑曤忣曬崁栚梡攝楍
		if (strFLID.equals(CommonConst.CODE_TABLE_M_SYUKKINBO)) {
			for (i = 0; i < arySyukkinItem.length; i++) {
				aryItem[j+i][0] = arySyukkinItem[i];
				aryItem[j+i][1] = spritInfo(arySyukkinItem[i], 3);
			}
		}
		// 桳媼媥壣忣曬崁栚梡攝楍
		if (strFLID.equals(CommonConst.CODE_TABLE_M_YUKYU)) {
			for (i = 0; i < aryYukyuItem.length; i++) {
				aryItem[j+i][0] = aryYukyuItem[i];
				aryItem[j+i][1] = spritInfo(aryYukyuItem[i], 3);
			}
		}
		return aryItem;
	}

	/**
	 * 僼傿乕儖僪柤徧撪偺僨乕僞暘夝庢摼
	 *  0 : 僼傽僀儖ID
	 *  1 : 娗棟斣崋
	 *  2 : 僼傿乕儖僪ID
	 *  3 : 僼傿乕儖僪柤徧
	 */
	protected String spritInfo(String str, int i) {
		//丂娗棟斣崋庢摼
		if  (str.length()!= 0)  {
			String[] array;
			array = str.split(CommonConst.STR_CSV_SEPARATOR);
			return array[i];
		}
		return "";
	}

}
