2013-10-17 36 views
-1

我有一套要求,我還不能確定實施的最佳方式。搞清楚提交是按時完成還是遲到

我有提交數據庫中的表格,包括提交日期(Submission.Name,Submission.Date)。

每一年,我們希望用戶通過12月1日進行2份意見書,一個由4月1日,和一個

的要求表明,我們展示了用戶在主頁上的通知,這可以是一個三:
- 提交完成了本期(綠色)
- 提交由當期(藍色)結束掛起
- 提交傑出從上期(紅色)

還有一個額外的規則是,如果提交逾期3個月以上,然後是 我們應該在即將到來的截止日期前顯示提交待處理通知(藍色),而不是紅色。

問題是,當試圖確定當前期間的前3個月內的提交是否應計入當前期間,或者它是否僅僅是以前期間的遲交(這將會過期)。

檢查以前的期限是否過期可能還需要檢查他們以前的 期間等。使它比我希望的更復雜。

選項到目前爲止看起來要麼使用的EntityFramework計算狀態,或者在執行這個代碼的邏輯來查詢表,但是,這兩個選項出現非平凡至今。

任何人都可以看到這類問題的一個更好的方法嗎?還是有人有任何Linq技巧一次完成這個?

編輯:我們希望每年2份意見書,但用戶是免費的,使每個週期超過1個提交,因此爲什麼它試圖解釋意見如何關聯回逾期期間

由於很難提前

+0

你如何確定當用戶的_first_提交應該是因?我的意思是,在任何時候您都應該能夠確定用戶必須完成的到期佣金數量,不是嗎? –

+0

對不起,我想我沒有說清楚用戶可以在特定的時間段內多次提交他們想要的內容。我將編輯問題 – FullOfQuestions

+0

爲什麼downvote? – FullOfQuestions

回答

0

難道你不能只是添加一個新的字段到您的數據庫,「LastSubmissionPeriod」並將其設置爲 4月1日或12月1日,所以你知道哪個時期已經填補?

+0

我不明白這是如何解決這個問題,最困難的部分是要弄清楚,如果一個特定的應提交對當期算,或者是它只是一個遲交的逾期時間(因此,問題仍然存在試圖到一塊,如果在一起前期已逾期或不) – FullOfQuestions

+0

當最後期限提交已完成的LastSubmissionPeriod將被設定爲最後期限,否則它會被設置爲前一個,甚至在此之前的一個時期。所以你可以確保LastSubmissionPeriod總是反映最後提交的填充內容。這有一個好處,即使沒有人提交2或3份提交文件,您可以知道在賬戶恢復訂單之前需要填寫多少份提交文件 – user2888973

+0

如果提交文件過期,則只計入最後一個期間,而不是前一期間。因此,在3個月後,如果逾期未滿,將永遠不會被填補。 – FullOfQuestions