长任务实体框架和web api

时间:2014-04-20 13:51:24

标签: c# entity-framework extjs asp.net-web-api entity-framework-5

我正在建立一个时间和出勤模块,使用web api和EF 6,它将加载外部时间表文件,然后将处理许多规则以验证员工的实际工作时间。

我的客户方使用 EXTJS 。 (将在时间表导入网格上显示加载图标,因此用户可以在任务运行时在应用程序上执行其他操作)。

因为我真的不知道这个任务需要花多少时间(可能在2到5分钟之间),所以我正在考虑触发一个Windows服务来执行这个“可能很长的流程任务”。因此,当用户上传时间表文件时,我将更新表格中的bool标志,该表格将说明任务正在进行中。之后,Windows服务将读取该内容并将开始执行所有作业。任务完成时,Windows服务会将标志更新为任务已完成

  1. 第一个问题:上述方法是否正确?
  2. 现在,我对如何在我的任务作业(Windows服务)上执行业务规则表示担忧,我需要做的是在临时表上加载所有时间表文件记录然后必须得到我的所有员工和循环逐一。在每个循环中,我必须查看时间表记录是否有任何属于该员工的时间戳,然后转到许多规则,如:

    • 检查员工班次是否与时间表记录中的入口和出口时间相匹配,如果没有,则应用工作时间点数
    • 检查员工是否在休假,如果在时间表中找不到记录,则不予考虑
    • 检查员工在一段时间内有多少迟到,新的时间表记录有新的延迟到达然后申请半天或全天罚款
    • 如果迟到或缺席,请检查员工是否获得授权的日期许可。如果是,请不要申请任何处罚。
    • 和其他许多规则....

    将有1500名员工。

    1. 第二个问题:使用EF进行循环是否可以,或者有更好的方法来“逐个员工检查并应用规则”吗?

0 个答案:

没有答案