// ???? groupSn ? combineType
function getParentGroupList(parentGroupUuid) {
	
	var rtnGroupList = "";

	var xmlRtn = null;
    var ddo = new DDO();
    var row = new Row();
	
	ddo.init();
	ddo.setAction("CommonAction.Query");
	ddo.setValueObj("BasGroup");
	
	row.setQuery("MISHQ000030");

	row.appendParm(groupUuid, "java.lang.String");
	
	ddo.appendRow("BasGroup", dro);
	
	xmlRtn = ddo.send();

	if ( xmlRtn.selectSingleNode("//Root/BasGroup/Row/combinType") ) {
		rtnGroupList = xmlRtn.selectSingleNode("//Root/BasGroup/Row/combinType").text;
	}
	
	if ( rtnGroupList == "" ) {
		rtnGroupList = parentGroupUuid;
	} else {
		rtnGroupList += "," + parentGroupUuid;
	}

	return rtnGroupList;
	
}

// ???? groupSn ? combineType
function getGroupList(groupSn) {
	
	var rtnGroupList = "";

	var xmlRtn = null;
    var ddo = new DDO();
    var row = new Row();
	
	ddo.init();
	ddo.setAction("CommonAction.Query");
	ddo.setValueObj("BasGroup");
	
	row.setQuery("MISHQ000040");

	row.appendParm(groupSn, "java.lang.Integer");
	
	ddo.appendRow("BasGroup", row);
	
	xmlRtn = ddo.send();

	if ( xmlRtn.selectSingleNode("//Root/BasGroup/Row/combinType") ) {
		rtnGroupList = xmlRtn.selectSingleNode("//Root/BasGroup/Row/combinType").text;
	}
	
	if ( rtnGroupList == "" ) {
		rtnGroupList = parentGroupSn;
	} else {
		rtnGroupList += "," + parentGroupSn;
	}

	return rtnGroupList;
	
}

// ??????
/*
function getOrgInfo(specOrgCode) {

	var xmlRtn = null;
	var orgInfo = new Object();
		
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("CommonAction.Query");
	ddo.setValueObj("BasOrganiz");
	
	row.setQuery("MISHQ000010");
	row.appendParm(specOrgCode, "java.lang.String");
	
	ddo.appendRow("BasOrganiz", row);
	
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/BasOrganiz/Row/orgNameTw") ) {
		orgInfo.orgNameTw = xmlRtn.selectSingleNode("//Root/BasOrganiz/Row/orgNameTw").text;
	} else {
		orgInfo.orgNameTw = "";
	}

	if ( xmlRtn.selectSingleNode("//Root/BasOrganiz/Row/orgCode") ) {
		orgInfo.orgCode = xmlRtn.selectSingleNode("//Root/BasOrganiz/Row/orgCode").text;
	} else {
		orgInfo.orgCode = "";
	}	
	
	
	return orgInfo;

}
*/
// ??????
function getGroupInfo(specGroupUuid) {

	var xmlRtn = null;
	var groupInfo = new Object();
		
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("CommonAction.Query");
	ddo.setValueObj("BasGroup");
	
	row.setQuery("MISHQ000020");
	row.appendParm(specGroupUuid, "java.lang.String");
	
	ddo.appendRow("BasGroup", row);
	
	xmlRtn = ddo.send();

	if ( xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupUuid") ) {
		groupInfo.groupUuid = xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupUuid").text;
	} else {
		groupInfo.groupUuid = "";
	}
		
	if ( xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupName") ) {
		groupInfo.groupName = xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupName").text;
	} else {
		groupInfo.groupName = "";
	}	

	if ( xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupType") ) {
		groupInfo.groupType = xmlRtn.selectSingleNode("//Root/BasGroup/Row/groupType").text;
	} else {
		groupInfo.groupType = "";
	}	
	
	return groupInfo;

}

function getRoleListByUserUuid(specUserUuid) {

	var rtnRoleList = "";
	
	var xmlRtn = null;
	
	var i = 0;
	
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("CommonAction.Query");
	ddo.setValueObj("BasGroup");
	row.setQuery("MISHQ000050");
	row.appendParm(specUserUuid, "java.lang.String");
	ddo.appendRow("BasGroup", row);
	xmlRtn = ddo.send();
	if ( xmlRtn.selectNodes("//Root/BasGroup/Row") ) {
		for ( i = 0; i < xmlRtn.selectNodes("//Root/BasGroup/Row").length; i++) {
			if ( rtnRoleList == "" ) {
				rtnRoleList = xmlRtn.selectNodes("//Root/BasGroup/Row")[i].selectSingleNode("groupName").text;
			} else {
				rtnRoleList += ", " + xmlRtn.selectNodes("//Root/BasGroup/Row")[i].selectSingleNode("groupName").text;
			}
		}
	
	}
	
	return rtnRoleList;
	

}

// 取得投資人帳號資訊
function getInvestorInfo(specInvestorCode) {

	var rtnInvestorInfo = null;
	var xmlRtn = null;
	var ddo = getddo("Query");
	var row = getrow("MISHQ000060");
	row.appendParm(specInvestorCode, "java.lang.String");
	ddo.appendRow("BasInvestor", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/BasInvestor/Row") ) {
		rtnInvestorInfo = new Object();
		rtnInvestorInfo.investorCode = xmlRtn.selectSingleNode("//Root/BasInvestor/Row/investorCode").text;
		rtnInvestorInfo.investorName = xmlRtn.selectSingleNode("//Root/BasInvestor/Row/investorName").text;
		rtnInvestorInfo.backAcctTwd = "";
		rtnInvestorInfo.backAcctOther = "";
		if ( xmlRtn.selectSingleNode("//Root/BasInvestor/Row/backAcctTwd") ) {
			rtnInvestorInfo.backAcctTwd = xmlRtn.selectSingleNode("//Root/BasInvestor/Row/backAcctTwd").text;
		}
		if ( xmlRtn.selectSingleNode("//Root/BasInvestor/Row/backAcctOther") ) {
			rtnInvestorInfo.backAcctOther = xmlRtn.selectSingleNode("//Root/BasInvestor/Row/backAcctOther").text;
		}
				
	}
	
	return rtnInvestorInfo;

}

// 取得目前系統日期字串 yyyy/MM/dd
function getCurrentDate() {
	var ddo = new DDO();
	var row = new Row();
	ddo.init();
	ddo.setAction("AffixAction.DB2SQLQuery");
	row.setQuery("SYSCOMGETDATETIME");
	ddo.appendRow("SysDateTime", row);
	xmlRtn = ddo.send();

	if (xmlRtn.selectSingleNode("//Row/sysDate")) {
		return xmlRtn.selectSingleNode("//Row/sysDate").text;
	} else {
		var dtCurrent = new Date();
		var strYear = "";
		var strMonth = "";
		var strDay = "";

		strYear = dtCurrent.getYear();
		strMonth = dtCurrent.getMonth() + 1;
		strDay = dtCurrent.getDate();

		strMonth = "00" + strMonth;
		strMonth = strMonth.substring(strMonth.length - 2, strMonth.length);

		strDay = "00" + strDay;
		strDay = strDay.substring(strDay.length - 2, strDay.length);

		return strYear + "/" + strMonth + "/" + strDay;
	}
}

// 取得目前系統日期字串 hh:mm:ss
function getCurrentTime() {
	var ddo = new DDO();
	var row = new Row();
	ddo.init();
	ddo.setAction("AffixAction.DB2SQLQuery");
	row.setQuery("SYSCOMGETDATETIME");
	ddo.appendRow("SysDateTime", row);
	xmlRtn = ddo.send();

	if (xmlRtn.selectSingleNode("//Row/sysTime")) {
		return xmlRtn.selectSingleNode("//Row/sysTime").text;
	} else {
		var dtCurrent = new Date();
		var strHour = "";
		var strMinute = "";
		var strSecond = "";

		strHour = dtCurrent.getHours();
		strMinute = dtCurrent.getMinutes();
		strSecond = dtCurrent.getSeconds();

		strHour = "00" + strHour;
		strHour = strHour.substring(strHour.length - 2, strHour.length);

		strMinute = "00" + strMinute;
		strMinute = strMinute.substring(strMinute.length - 2, strMinute.length);

		strSecond = "00" + strSecond;
		strSecond = strSecond.substring(strSecond.length - 2, strSecond.length);

		return strHour + ":" + strMinute + ":" + strSecond;
	}
}


// 取得申購交易序號
function getAplId( specOrgCode ) {

	var aplId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("APLID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		aplId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return aplId;


}

// 取得轉換交易序號
function getSwhId( specOrgCode ) {

	var trnId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("SWHID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		trnId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return trnId;


}

// 取得定期定額交易序號
function getRapId( specOrgCode ) {

	var trnId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("RAPID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		trnId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return trnId;


}

function getTrnId( specOrgCode ) {

	var trnId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("TRNID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		trnId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return trnId;


}

// 取得買回交易序號
function getRdpId( specOrgCode ) {

	var rdpId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("RDPID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		rdpId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return rdpId;


}

// 取得銀行往來明細序號
function getFtdId( bankUuid , currFlag ) {

	var rdpId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("FTDID", "");
	row.appendParm(bankUuid, "");
	row.appendParm(currFlag, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		rdpId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return rdpId;


}

// 取得孳息分派交易序號
function getAsiId( strAsiDate, strFundOrgCode, strSaleOrgCode ) {
	var trnId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("ASIID", "");
	row.appendParm(strAsiDate, "");
	row.appendParm(strFundOrgCode, "");
	row.appendParm(strSaleOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		trnId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return trnId;


}

// 取得程式模組標題名稱
function getProgName(strProgId) {

	var strProgName = "";
	var strParentUuid = "";
	var strParentName = "";
	
	var xmlRtn = null;
	var ddo = getddo("Query");
	var row = getrow("SYSTEM001HQ01");
	row.appendParm(strProgId, "java.lang.String");
	ddo.appendRow("BasFunction", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/BasFunction/Row/longDesc") ) {
		strProgName = xmlRtn.selectSingleNode("//Root/BasFunction/Row/longDesc").text;
		strParentUuid = xmlRtn.selectSingleNode("//Root/BasFunction/Row/parentUuid").text;
		ddo = getddo("Query");
		row = getrow("SYSTEM001HQ02");
		row.appendParm(strParentUuid, "java.lang.String");
		ddo.appendRow("BasFunction", row);
		xmlRtn = ddo.send();
		
		if ( xmlRtn.selectSingleNode("//Root/BasFunction/Row/longDesc") ) {
			strParentName = xmlRtn.selectSingleNode("//Root/BasFunction/Row/longDesc").text;
			strProgName = strProgId + "&nbsp;" + strParentName + "&nbsp;-&nbsp;" + strProgName;
		}
		
	} else {
		strProgName = "";
	}
	
	return strProgName;
	
}

// 確認是否儲存
function confirmSave() {

	if ( confirm("確定儲存資料??") ) {
		return true;
	}
	return false;

}

// 取得批次交易序號
function getBatchSeq( strTxType, specOrgCode ) {

	var batchSeq = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm(strTxType, "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		batchSeq = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return batchSeq;


}

// 取得買回款匯款修改序號
function getFundrSeq( strTxType, specOrgCode ) {

	var batchSeq = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm(strTxType, "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		batchSeq = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return batchSeq;


}

// 取得核印序號
function getVerId( specOrgCode ) {

	var trnId = "";
	var xmlRtn = null;
	var ddo = new DDO();
	var row = new Row();
	
	ddo.init();
	ddo.setAction("IDGENERATOR");
	row.appendParm("VERID", "");
	row.appendParm(specOrgCode, "");
	ddo.appendRow("SysSerialInfo", row);
	xmlRtn = ddo.send();
	
	if ( xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id") ) {
		trnId = xmlRtn.selectSingleNode("//Root/SysSerialInfo/Row/Id").text;
	}
	
	return trnId;


}
