새 청구 시스템에 대한 코드를 작성했습니다. 그 목적은 매달 같은 날에 고객에게 청구하는 것입니다. (안 제 1 회 또는 월의 마지막 날)월별 결제주기에 가장 적합한 패턴
static bool NeedToBill(DateTime planLastBilled, DateTime cycleDate)
{
// is today the same date as the cycleDate AND is was the planLastBilled not the same day as today?
if (DateTime.UtcNow.Day.Equals(cycleDate.Day) && !DateTime.UtcNow.Day.Equals(planLastBilled))
return true;
else
return false;
}
2 개 개의 함정은 다음과 같습니다 자신의 cycleDate.Day는 31이며, 현재 달 만
- 경우 2012 년 2 월 29 일 - 윤년에 대해서만 청구됩니다.
일반적인 가장 좋은 방법은 여기에 있습니까?
은 그래서
- 이미 이번 달에 청구 된이 계정을 가지고 확인하는 무리 일을있을 것 같아?
- 는
감사 ( 트랜잭션이 전날 실패 할 경우이 이상적입니다) 사이클 날이
이거 틀림 없습니까? 청구서 발송 일을 매년 ~ 5 일로 변경하여 궁극적으로 고객에게 과금하는 것으로 보입니다 (6 년마다 1 개의 추가 청구서). 회사에 충분한 가입자가있는 경우 집단 소송에 대한 좋은 사례 인 것 같습니다. –
DateTime.AddMonths는 윤년과 다른 EOM 날짜를 고려합니다. – gibbocool