var pText = 0;
var PaybackFreq = 0;
var Credit, Years, PeriodNum, CreditIntrest;
var i, B = 0;
var oXMLDoc;
var root;

function TimeFunc()
{
	var Rn=0;//第n期还款额
	var Dn = 0;//第n期偿还利息
	var Sn = 0;//第n期偿还本金
	//偿还频率为每月	
	if(PaybackFreq == 0 )
	{					      
		pText = NBround(i * 100 / (12 * Years), 0);
		document.all.Progress.innerText = "生成还款表..." + pText + "%";
		Rn=Round(Credit / (Years*12) + Credit / (Years*12)*(PeriodNum - i) * (CreditIntrest/100/12));
		Dn=Round(Credit / (Years*12)*(PeriodNum - i)*(CreditIntrest/100/12));
		Sn=Round(Credit / (Years*12));
		B=Round(B+Dn);

		var elem = oXMLDoc.createElement("Items");
		root.appendChild(elem);
		var node = root.lastChild;
			
		elem = oXMLDoc.createElement("Term");
		node.appendChild(elem);
		node.lastChild.text = i.toString();
			
		elem = oXMLDoc.createElement("LoanSum");
		node.appendChild(elem);
		node.lastChild.text = Credit;
			
		elem = oXMLDoc.createElement("YearRate");
		node.appendChild(elem);
		node.lastChild.text = CreditIntrest;
			
		elem = oXMLDoc.createElement("RetSum");
		node.appendChild(elem);
		node.lastChild.text = Rn;
			
		elem = oXMLDoc.createElement("RetBase");
		node.appendChild(elem);
		node.lastChild.text = Sn;
			
		elem = oXMLDoc.createElement("RetInterest");
		node.appendChild(elem);
		node.lastChild.text = Dn;
			
		elem = oXMLDoc.createElement("TotalInterest");
		node.appendChild(elem);
		node.lastChild.text = B;
		
		if (i++ < Years * 12) window.setTimeout("TimeFunc()", 1, "jscript");
		else
		{
			document.all.Progress.style["display"] = "none";
			document.all.btnReturnList.disabled = false;
		}
	}						      									
	//偿还频率为每季
	if(PaybackFreq == 1)
	{
		pText = NBround(i * 100 / (4 * Years), 0);
		document.all.Progress.innerText = "生成还款表..." + pText + "%";
		Rn=Round(Credit / (Years*4) + Credit / (Years*4)*(PeriodNum - i) * (CreditIntrest/100/4));
		Dn=Round(Credit / (Years*4)*(PeriodNum - i)*(CreditIntrest/100/4));
		Sn=Round(Credit / (Years*4));
		B=Round(B+Dn);

		var elem = oXMLDoc.createElement("Items");
		root.appendChild(elem);
		var node = root.lastChild;
			
		elem = oXMLDoc.createElement("Term");
		node.appendChild(elem);
		node.lastChild.text = i.toString();
			
		elem = oXMLDoc.createElement("LoanSum");
		node.appendChild(elem);
		node.lastChild.text = Credit;
			
		elem = oXMLDoc.createElement("YearRate");
		node.appendChild(elem);
		node.lastChild.text = CreditIntrest;
			
		elem = oXMLDoc.createElement("RetSum");
		node.appendChild(elem);
		node.lastChild.text = Rn;
			
		elem = oXMLDoc.createElement("RetBase");
		node.appendChild(elem);
		node.lastChild.text = Sn;
		
		elem = oXMLDoc.createElement("RetInterest");
		node.appendChild(elem);
		node.lastChild.text = Dn;
			
		elem = oXMLDoc.createElement("TotalInterest");
		node.appendChild(elem);
		node.lastChild.text = B;
		
		if (i++ < Years * 4) window.setTimeout("TimeFunc()", 1, "jscript");
		else
		{
			document.all.Progress.style["display"] = "none";
			document.all.btnReturnList.disabled = false;
		}
	}	
}

/*
	返回贷款利率
	Kind:贷款类型 
			0:商业贷款
			1:公积金贷款
	Years:贷款年限
*/
function GetIntrestPercentage(Kind,Years,xmlDoc)
{
	var Type;
	if(Kind == 0)
		Type = 1;
	else
		Type = 2;
	var result = GetLoanRatio(Type, Years*12,xmlDoc);
	/*/5年以下（含5年）为4.77%,6～30年为5.04%
	if (Kind == 0)
	{
		if(Years>0 && Years<=5)
		{
			result = 4.77;
		}
		if(Years>6 && Years<=30) 
		{
			result = 5.04;
		}
		/-//六个月以内
		if(Years>0 && Years<=0.6)
		{
			result = 5.04;
		}
		
		//一年以内
		if(Years>0.6 && Years<= 1)
		{
			result = 5.31;
		}
		//一到三年
		if(Years>1 && Years<=3)
		{
			result = 5.49;
		}
		if(Years>3 && Years<=5)
		{
			result = 5.58;
		}
		if(Years>5)
		{
			result = 5.76;
		}-/
					
	}
	
	if(Kind == 1)
	{
		if(Years>0 && Years<= 5)
		{
			result = 3.6;
		}
		if(Years> 5)
		{
			result = 4.05;
		} 
	}*/
	return (result);
}

/*
等额本金还款计算方法：
生成还款表。
1.	偿还频率为每月：
第n期还款额=M÷（N×12）+M÷（N×12）×（n－1）×（r％÷12）
第n期偿还利息：Dn＝M÷（N×12）×（n－1）×（r％÷12）
第n期偿还本金＝M÷（N×12）
偿还利息总额：B＝∑DS（S＝12N）
2.	偿还频率为每季：
第n期还款额=M÷（N×4）+M÷（N×4）×（n－1）×（r％÷4）
第n期偿还利息：Dn＝M÷（N×4）×（n－1）×（r％÷4）
第n期偿还本金＝M÷（N×4）
偿还利息总额：B＝∑DS（S＝4N）
*/

//  HouseCost: 总房价
//  Proportion:按揭比例
//  Years:贷款年限
//  CreditIntrest:贷款年利率
//  PaybackFreq:偿还频率 (0--每月   1--每年)
function CalcByPrincipal(HouseCost,Proportion,_Years,_CreditIntrest,_PaybackFreq)  //等额本金
{

	Years = _Years;
	CreditIntrest = _CreditIntrest;
	PaybackFreq = _PaybackFreq;
	tbResult.style.display="none";
	DivResult.style.display="";
	
	//贷款总额＝总房价*按揭比例
	Credit = HouseCost * Proportion;
	Credit = NBround(Credit, 0); // added by huhao, 2003/4/24
		
	oXMLDoc = document.all("xmldso");
	root = oXMLDoc.documentElement;
	// 清空xml表格
	while(root.childNodes.length > 0) root.removeChild(root.childNodes.item(0));
	
	document.all.Progress.style["display"] = "";
	//document.all.Progress.style["display"] = "none";
	//生成表格
	PeriodNum = 12 * Years + 1;
	if (PaybackFreq == 1) PeriodNum = 4*Years + 1;
	i = new Number(1);
	B = new Number(0);
	document.all.btnReturnList.disabled = true;
	window.setTimeout("TimeFunc()", 0, "jscript");	
}


//  HouseCost: 总房价
//  Proportion:按揭比例
//  Years:贷款年限
//  AfterYears:N年后买房
//  CreditIntrest:贷款年利率

function CalcByIntrest(HouseCost,Proportion,Years,AfterYears,CreditIntrest)  //等额本息计算方法
{
	tbResult.style.display="";
	DivResult.style.display="none";
	
	
	//每月应投资＝总房价*（1—按揭比例）*（1+每年通货膨胀率）y/ (N*12)
	var InvestPerMonth = 0;
	if(AfterYears == 0 ) 
	{
		InvestPerMonth = 0;
	}
	else
	{
		InvestPerMonth = HouseCost*(1-Proportion)*Math.pow((1+0.04),AfterYears)/(AfterYears*12);
	}
	
	//贷款总额＝总房价*按揭比例
	Credit = HouseCost * Proportion;
	Credit = NBround(Credit, 0); // added by huhao, 2003/4/24
	
	
	//每期还款额还款额＝M×（r％÷12）×（1+ r％÷12）12*N÷[（1+ r％÷12）12*N—1]
	var PayPerMonth = Credit * (CreditIntrest/100 / 12) * Math.pow((1 + CreditIntrest/ 100 / 12),12 * Years)/(Math.pow((1+CreditIntrest/ 100/12),12*Years)-1);
    //第n期偿还利息＝Ds=[M－（S－1）×（每期）还款额+∑D(s－1)]×r％÷12  (S＝12N)
	//第n期偿还本金＝（每期）还款额－Ds
	//偿还利息总额：B＝∑DS
	//利息总额
	var IntrestSum  = 0;
	
	for(i=1;i<12*Years+1;i++)
	{
		IntrestSum +=  (Credit + IntrestSum - PayPerMonth*(i-1))*CreditIntrest/ 100/12;
	}
	
	//总支出额＝总房价+偿还利息总额
	PaySum = Round(parseFloat(HouseCost) + parseFloat(IntrestSum));
	
	//购买时首付
	FirstPay = (1 - Proportion)*HouseCost;
						
	this.document.all.edInvestMonth.value = Round(InvestPerMonth);
	this.document.all.edFirstPay.value = Round(FirstPay);
	this.document.all.edLoanSum.value = Round(Credit);
	this.document.all.edYearRate.value = Round(CreditIntrest);
	this.document.all.edPayMonth.value = Round(PayPerMonth);
	this.document.all.edIntrestSum.value = Round(IntrestSum);
	this.document.all.edPaySum.value = Round(PaySum);					
	
}






//  HouseCost: 总房价
//  Proportion:按揭比例
//  Years:贷款年限
//  AfterYears:N年后买房
//  CreditIntrest:贷款年利率

function CalcByOnce(HouseCost,Proportion,Years,AfterYears,CreditIntrest)  //一次还本付息计算方法
{
	tbResult.style.display="";
	DivResult.style.display="none";
	
	//每月应投资＝总房价*（1—按揭比例）*（1+每年通货膨胀率）y/ N*12
	var InvestPerMonth = 0;
	if(AfterYears == 0 ) 
	{
		InvestPerMonth = 0;
	}
	else
	{
		InvestPerMonth = HouseCost*(1-Proportion)*Math.pow((1+0.04),AfterYears)/(AfterYears*12);
	}
	
	//贷款总额＝总房价*按揭比例
	Credit = HouseCost * Proportion;
	Credit = NBround(Credit, 0); // added by huhao, 2003/4/24
	
	//偿还利息总额＝M×r％×N
	IntrestSum = Credit * CreditIntrest / 100 * Years;
	
	//总支出额＝总房价+偿还利息总额
	PaySum = parseFloat(HouseCost) + parseFloat(IntrestSum);
	
	//购买时首付
	FirstPay = (1 - Proportion)*HouseCost;
						
	this.document.all.edInvestMonth.value = Round(InvestPerMonth);
	this.document.all.edFirstPay.value = Round(FirstPay);
	this.document.all.edLoanSum.value = Round(Credit);
	this.document.all.edYearRate.value = Round(CreditIntrest);
	this.document.all.edPayMonth.value = 0;
	this.document.all.edIntrestSum.value = Round(IntrestSum);
	this.document.all.edPaySum.value = Round(PaySum);
	
}
