早上收到BOSS的MAIL,要求將我所開發專案中增加[行事歷]的功能,且要分為"私人"和"共用"兩部分,還附檔一份有關行事曆的參考頁面圖
圖中的行事曆有年、月、周、日、事件、邀請、作業能功能標簽,而我要努力的方向是實現行事歷的年、月、周、日及BOSS要求的區分功能即可.隨即再網上找了一下有關ASP.NET中的行事曆,僅在小鋪上找到一個共享的行事曆源檔但不夠完善,其他也沒找到可以使用改寫的控件.在一網友的熱心幫助下,看了幾個英文網站中有看上去很不錯的行事曆,也下載了一個,後來才發現僅有21天的有效期便乾脆放棄了。。。
還是自己分析來實作吧。年行事曆要考慮:年度,十二個月份,用戶;月行事曆要考慮:年月,每月的每日,用戶;周行事曆要考慮:年度,周,日,用戶;日行事曆要考慮:日期,用戶,每個時間點,這樣下來要4張表嗎?好像這樣會有重復的部分。。。資料庫的正規化不達標。。。又請教了熱心網友,在他的分析下,一張表就可解決:時間(包含日期和時間)、標識、用戶、內容,但是這樣在對,年、月、周行事歷統計顯示時就會出現一股腦全出來,特別是年中的每個月會分別將每日每時的內容顯現出來,這似乎不是年行事歷的意義所在。。。以我的理解是年行事歷就是計劃這一年可以月為段來簡單計劃工作重點,而月行事曆是要計劃計劃以日為時間段的工作內容。。。
中午吃了飽飯,休息了一下,忽然間理出了思路,跟網友又反復討論得出下面的資料表結構:類別,開始時間,用戶,終止時間,標識,內容 P。S。類別為年,月,周,日的標識;開始時間和終止時間都包含日期和時間;標識是區分私人和共用;若為私人則會輸入用戶,否則用戶需要預設值;內容為行程內容;其中前三項作為主KEY
補注:在此感謝網友的熱心幫助!行事曆頁面將進入開發過程中,若資料表結構今後有變理,將再作說明