比如查询到9月23号到10月23号的所有还款记录(9月23日发放贷款1W元),如下:
----------------------------------------------
1 9月28日 1K元
2 10月15日 2K元
----------------------------------------------我想实现:(9月28日-9月23日)*10000+(10月15日-9月28日)*(1W-1K)+(10月23日-9月28日)*(9K-2K)请问如何实现。
----------------------------------------------
1 9月28日 1K元
2 10月15日 2K元
----------------------------------------------我想实现:(9月28日-9月23日)*10000+(10月15日-9月28日)*(1W-1K)+(10月23日-9月28日)*(9K-2K)请问如何实现。
DataTable table = new DataTable();
da.Fill(table);double balance = 0, charge = 0, interest = 0.0xx; // 余额、费用、利息
for (int i = 0; i < table.Rows.Count; i++)
{
DataRow trx = table.Rows[i]; // 交易
if (balance < 0)
{
DataRow trx_prev = table.Rows[i - 1];
charge += ((DateTime)trx["交易日期"] - (DateTime)trx_prev["交易日期"]).Days * -balance * interest;
}
balance += trx["交易类型"] == "借" ? -(double)trx["贷款金额"] : (double)trx["还款金额"];
}if (balance < 0)
{
DataRow trx_last = table.Rows[table.Rows.Count - 1];
charge += (DateTime.Now - (DateTime)trx_last["交易日期"]).Days * -balance * interest;
}
return charge; // charge就是要收的贷款费用