停车场计费算法 php,停车场收费算法,思路卡住了求补完!该如何处理
停車場收費算法,思路卡住了求補完!!
本帖最后由 bulls5988 于 2013-11-22 16:00:03 編輯
一個停車場算法,寫了一半不會寫了。
需求:員工停車卡。周一到周五,7:00~23:00免費,其余部分每小時收費2元。周六日每小時2元,無免費時間。(需要考慮多天跨天的情況,這里有點不會寫了)。求大神幫助補完下代碼
public?int?staff_times(DateTime?start_time,?DateTime?end_time)//開始停車時間,
停車結(jié)束時間
{
int?fee?=?0;//總收費數(shù)
int?day?=?0;//一共間隔了幾天
DateTime?dt1?=?start_time.Date.AddHours(7);//取得入場時間當(dāng)日7點
DateTime?dt2?=?start_time.Date.AddHours(23).AddMinutes(1);//取得入場時間當(dāng)日23點
staff_card?staff_week?=?new?staff_card();
string?today_week?=?staff_week.Weeks_time().ToString();//返回數(shù)據(jù)庫時間為周幾
int?Total_hour?=?0;//總停車收費小時數(shù)
if?(today_week?!=?"周六"?&&?today_week?!=?"周日")//如果不是周六日
{
if?(start_time?>=?dt1?&&?end_time?<=?dt2)//如果在免費時段內(nèi)
{
Total_hour?=?0;//收費小時為0
}
else
{
//如果在免費時段外
TimeSpan?ts?=?(dt1?-?start_time)?+?(end_time?-?dt2);
if?(ts.Minutes?>?15)
{
Total_hour?=?(int)(ts.Hours)?+?1;
//超出15分鐘算1小時
}
else
{
Total_hour?=?(int)(ts.Hours);
//未超出15分鐘算0小時
}
}
}
else?//如果是周六日,沒有免費時間
{
TimeSpan?ts?=??end_time?-?start_time;
if?(ts.Minutes?>?15)
{
Total_hour?=?(int)(ts.Hours)?+?1;
//超出15分鐘算1小時
}
else
{
Total_hour?=?(int)(ts.Hours);
//未超出15分鐘算0小時
總結(jié)
以上是生活随笔為你收集整理的停车场计费算法 php,停车场收费算法,思路卡住了求补完!该如何处理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php fopen 错误,php fop
- 下一篇: lock object oracle,o