我在做一个银行存贷款的小项目,存款分为活期、定期两种方式,活期利率和定期利率客户都要求自定义。取款的时候就需要按照存款的时间长短计算利息了。 活期好说,取款日期-存款日期=天数*日利率=所得利息 因为定期客户要求自定义,我给了客户年月日三个输入框,就有可能定义成N年,N个月或者N年N个月,或者N天。 客户要求:如果超过存款期限取款,比如定期了1年,然后1年2个月取款,那1年按定期利率算利息,2个月按照活期利率算利息。未满1年,全部按照活期利率算利息。 问题:
1、如何存款日期和取款日期两个datetimepicker计算出年、月、日这种格式?
2、如何判断利率计算的计算方式?
解决方案 »
- 用C#编写的软件能不能用html语言做界面,应该怎么做?
- .net移动机器人
- 在代码中,使用this.printDocument1.Print()打印比直接打印结果小
- GDI+ 向一个矩形区域内画文字,如何根据该区域的大小得到文字的字体大小
- 喜欢c#的朋友们大家好,让我们一起来进步,一起来提高
- 使用WMI如何获取网络流量?谢谢
- MSM文件使用方法
- Crystal Report进阶问题: 如何在程序改变Report中text的文本!<高分求解>
- 能否用c#编写com+组件?
- c#桌面应用程序怎么做安装程序给没装.NET框架的机器使用????????急
- ConfigurationManager.AppSettings是读的硬件上的文件还是内存中的缓存
- VSTS2008模拟器连接sqlServer2008问题
2. 自己加判断来进行利率计算
DataTime a=Covert.ToDateTime(string.format(datetimepicker1.Text,"yyyy-MM-dd"));这样取出来的时间 便是日期格式如"2011-05-26"
//取款日期 假如为 "2012-06-01"
其实可以在数据库中可以通过datediff函数求出2个日期相差的月份
或者函数 public static int Calc(DateTime d1, DateTime d2)
{
DateTime max = d1 > d2 ? d1 : d2;
DateTime min = d1 > d2 ? d2 : d1;
int yeardiff = max.Year - min.Year;
int monthdiff = max.Month - min.Month;
return yeardiff * 12 + monthdiff + 1;
}
如果月份数>12,利息=总金额*(月份数/12)*定期利率+总金额*(月份数-12)*活期利率。
本人菜鸟新手,抒发自己的意见 不正确可以忽略~~
//计算2个日期之间的天数差
DateTime dt1 = Convert.DateTime("2011-3-8");
DateTime dt2 = Convert.DateTime("2012-12-20");
TimeSpan span = dt2.Subtract(dt1);
int dayDiff = span.Days + 1;