我想列出所有尚未支付课程费用的学生 即,当点击学生时,按月列出所有未决费用。
这是我到目前为止所做的事情。
这些都是学生的活跃课程。
以下是学生支付给他们课程的付款记录。
现在我想列出所有未付的foreach学生
例如该课程的最后一次付款是在2011年11月2日。如果日期时间现在是五月,那么我想将待处理的金额显示为
月份数量
3月100日
4月200日
5月400日
这就是我试过的......
foreach (var result in activeCourses)
{
//Show all the pending paid coures from dateJoin till datetime.Now
DateTime JoinedDate = Convert.ToDateTime(result.cus.Date);
for (DateTime d = JoinedDate; d.Month <= DateTime.Now.Month; d = d.AddMonths(1))
{
Payment payment = new Payment();
payment.Course.Id = result.c.Id;
payment.Course.Name = result.c.Name;
payment.Course.Fee = result.c.Fee;
payment.CourseByStudent.CourseUserStatus.Date = result.cu.Date;
payment.CourseByTutor.TutorId = result.t.TutorId;
payment.User.Name = result.u.Name;
payment.MonthId = d.Month;
payment.MonthToPay = d.ToString("MMM");
output.Add(payment);
}
}
如果学生没有为他的课程支付任何费用,上面给出的逻辑似乎没有效率,那么我必须检查自他的第一个JoinedDate以来的待付款。其他我需要根据特定课程从付款表中的DateIssue检查待付款。请提出建议谢谢
答案 0 :(得分:0)
我将使用相同的方法来显示延迟付款。
for (DateTime d = lastPaidDate.AddMonths(1); d.Month <= DateTime.Now.Month; d = d.AddMonths(1))
谢谢