利用django打造自己的工作流平台(三):团队成员任务跟踪系统
近期受疫情影响公司食堂不开放,为解决同事们的吃饭问题,部门需要在每周五统计下周的订餐情况;员工根据个人意愿选择是否从公司订下周的午餐和晚餐,一旦确定一周保持不变。
通常要完成一次部门内员工的订餐信息收集需要经过以下步骤:
1.部门负责人通知各小组接口人收集组员订餐信息;
2.各小组接口人通知组员反馈订餐信息,每个小组收集信息形式各异,如通过QQ留言、微信接龙等方式进行反馈;
3.各小组接口人汇总组员的订餐信息反馈给部门负责人;
4.部门负责人汇总各个小组的数据形成总表,并将总表截图反馈到工作群并要求员工进一步确认;
5.员工核对总表信息,若发现自己订餐信息有误的再单独反馈部门负责人修改。
6.部门负责人将核对后的表格发给负责订餐的工作人员。
由于当过一次轮值小组接口人,发现了一些效率较低的地方:
1.尚未反馈的人员的确定;需要根据已反馈人员和组内所有成员对比才能找出谁还没有反馈信息;
2.需要小组接口人(多人)和部门负责人两级进行excel表格汇总;
3.人工统计难以保证不出错,需要反复核对;
为此创建了两个项目用于更方便的收集员工的订餐信息,如图1所示:
图1 用于收集订餐信息的两个项目
利用该系统收集订餐信息的步骤如下:
1.部门负责人在"团队任务跟踪"项目中创建一个问题,并将所有员工的账号列表填入到"分配给"字段对应的表单中,点击“批量分配”按钮即可为列表中的每个账户分配一个子任务,并将子任务显示在问题下方;
图2 团队任务跟踪的问题以及子任务列表
2.部门负责人在"团队任务跟踪"和“子任务项目1”两个项目的管理界面点击"批量注册"按钮为团队成员批量创建账号(批量创建的账号的默认密码为123456),并点击“添加到用户群组”将账号批量添加到具有问题执行权限(ExecAuth)的“用户群组”中;
图3 权限管理界面
3.组员获得账号以及操作权限后,登录系统通过父任务下的子任务列表或者进入“子任务项目1”查看分配给自己的问题,填写相应信息并按流程操作。
如图4所示,当前问题状态为“未提交”,根据流程可以进行"更新信息"和“提交”两种操作,对应下方的两个按钮。
图4 子任务的详细信息
用户superadmin点击"提交"按钮后,子任务列表中对应的状态会同步进行更改;部门负责人可以通过子任务列表清楚地看到各个同事的提交情况。
图5 superadmin提交后的子任务列表
4.部门负责人点击图2中的"导出子任务"按钮,可将各组员的反馈情况导出到excel,如图6所示:
图6 导出到excel的子任务数据
从订餐信息收集推而广之,很多上级分派下级执行的任务都可以用类似方法进行跟踪,只需要修改子任务的流程和字段即可。
该系统具有的特点:
1.部门负责人只要保留一份团队成员列表就可以很方便地一键分派任务;
2.每个员工单独处理自己的问题,无法修改分配给他人的问题,避免误操作;
3.每个子任务按制定的流程进行处理;
4.子任务当前状态直观显示,便于任务分派人了解所有团队成员执行子任务情况;
5.一键导出表格;
很可能有人会问为什么不用超级表格?首先疫情期间可能因远程办公的人数太多,用户数超过负载导致超级表格极不稳定甚至很多时候无法访问;其次是某些同事未反馈时很难找到未及时反馈的人员;最重要的一点是超级表格无法按特定流程进行事务跟踪。