平均分配员工任务

时间:2017-02-02 11:44:10

标签: c# algorithm

想象一下,我有四名员工和12个任务,如a,b,c,d,e,f,g,h,i,j,k,l。

第一名员工1,2,3,4应该有a,b,c,d,在完成所有员工之后,应该从第一名员工(e,f,g,h)等开始

在某些情况下,如果任务在employee2完成,当新任务到达时,分配应该从employee3等开始

在下面的代码中,我将为最后分配的员工提供变量,并从数据库中获取员工数量和任务计数,将任务分配给员工,检查任务的唯一性并保存到数据库。

我试过的代码:

    int j = 0, LastAssignedEmployee =0;
         var Employees = dbcontext.Employees.Select(m => m.ID).toList();
         var Tasks = dbcontext.Tasks.toList();
         for (int i = 0; i < Tasks.Count(); i++)
         {
             if (i == Employees.Count()-1)
             {
                 j = 0;
             }
             if (i == Tasks.Count()-1)
             {
                 LastAssignedEmployee = Employees[j];
             }
             Tasks Task = dbcontext.Tasks.Find(Tasks.ID);
             Task.EmpID = Employees[j];
             dbcontext.SaveChanges();
         }

但我希望这更加标准化和自动化,循环算法是否适用于此问题或此方法的任何算法。

任何人都可以帮我这个欢呼。

0 个答案:

没有答案