-1

我有一组要求,我还不能决定最好的实施方式。

我在数据库中有一个提交表,包括提交的日期(Submission.Name,Submission.Date)。

每年,我们希望用户提交 2 次,一次在 4 月 1 日之前,一次在 12 月 1 日之前

要求表明我们在主页上向用户显示通知,该通知可以是以下三种之一:
- 本期提交已完成(绿色)
- 本期结束时提交待处理(蓝色)
- 上一期未完成提交(红色)

还有一条额外的规则是,如果提交逾期超过 3 个月,那么我们应该显示即将到来的截止日期的提交待处理通知(蓝色)而不是红色通知。

问题在于,在尝试确定当前期间前 3 个月的提交是否应计入当前期间,或者是否只是前一段时间的延迟提交(这将过期)。

检查之前的期间是否过期可能还需要检查他们的之前的期间......等等。使它比我希望的更复杂。

到目前为止,这些选项看起来像是使用 EntityFramework 查询表以计算状态,或者在代码中实现此逻辑,但是,到目前为止,这两个选项似乎都不是微不足道的。

谁能看到解决此类问题的更好方法?或者有没有人有任何 Linq 技巧可以一次性做到这一点?

编辑:我们希望每年提交 2 次,但用户可以在每个时期自由提交超过 1 次,因此很难解释提交与逾期期的关联

提前致谢

4

1 回答 1

0

您不能在数据库中添加一个新字段“LastSubmissionPeriod”并将其设置为 4 月 1 日或 12 月 1 日,这样您就可以知道哪个时期已被填写?

于 2013-10-17T21:49:23.160 回答