利用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.一键导出表格;
很可能有人会问为什么不用超级表格?首先疫情期间可能因远程办公的人数太多,用户数超过负载导致超级表格极不稳定甚至很多时候无法访问;其次是某些同事未反馈时很难找到未及时反馈的人员;最重要的一点是超级表格无法按特定流程进行事务跟踪。
利用django打造自己的工作流平台(三):团队成员任务跟踪系统的更多相关文章
- 利用django打造自己的工作流平台(二):疫情统计系统
相关文章: 利用django打造自己的工作流平台(一):从EXCEL到流程化运作 本文是“利用django打造自己的工作流平台”系列文章的第二篇,在自己开发的工作流平台中添加了一个用于排查统计可能受感 ...
- 利用django打造自己的工作流平台(一):从EXCEL到流程化运作
因工作所需以及管理个人一些日常事项,自己基于django(一个基于python的web框架,详细介绍可查阅相关资料)开发了一个简易的工作流平台[平台地址].本文首先简要介绍工作流平台的设计思想及其在项 ...
- 利用django创建一个投票网站(三)
创建你的第一个 Django 项目, 第三部分 这一篇从第二部分(zh)结尾的地方继续讲起.我们将继续编写投票应用,并且聚焦于如何创建公用界面--也被称为"视图". 设计哲学 Dj ...
- Django打造大型企业官网(三)
四.前端首页 4.1.导航条实现 (1)templates/new/index.html <!DOCTYPE html> <html lang="en"> ...
- Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站
Python分布式爬虫打造搜索引擎 基于Scrapy.Redis.elasticsearch和django打造一个完整的搜索引擎网站 https://github.com/mtianyan/Artic ...
- [Python] 利用Django进行Web开发系列(二)
1 编写第一个静态页面——Hello world页面 在上一篇博客<[Python] 利用Django进行Web开发系列(一)>中,我们创建了自己的目录mysite. Step1:创建视图 ...
- 怎样利用App打造自明星实现自盈利
怎样利用App打造自明星实现自盈利 1.了解各个概念 为了大家都能看懂这篇文章,先说明几个概念. App(Application):能够在移动设备上使用,满足人们咨询.购物. ...
- cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程)
链接地址:http://www.cocoachina.com/bbs/read.php?tid=333937 cocos2d-x3.9利用cocos引擎一键打包Android平台APK(C++小白教程 ...
- 利用django信号实现计数功能
本文主要知识点: 1.使用Django的signals来获取Model的新建/删除操作更新 2.使用数据库的select for update来正确处理并发的数据库操作 3.使用redis的sorte ...
随机推荐
- SPFA判负环模板
void DFS_SPFA(int u){ if(flag) return; vis[u]=true; for(int i=head[u];i;i=edges[i].nxt){ if(fl ...
- 《深入浅出话数据结构》系列之什么是B树、B+树?为什么二叉查找树不行?
本文将为大家介绍B树和B+树,首先介绍了B树的应用场景,为什么需要B树:然后介绍了B树的查询和插入过程:最后谈了B+树针对B树的改进. 在谈B树之前,先说一下B树所针对的应用场景.那么B树是用来做什么 ...
- 引用类型(C# 参考)
C# 中有两种类型:引用类型和值类型. 引用类型的变量存储对其数据(对象)的引用,而值类型的变量直接包含其数据. 对于引用类型,两种变量可引用同一对象:因此,对一个变量执行的操作会影响另一个变量所引用 ...
- window10配置python虚拟环境的路径
当我们搭建python+django项目的时候,需要配置虚拟环境,从而使项目与项目之间的包相互隔离,互不影响. 1.配置虚拟环境前,首先需要安装两个包 pip install virtualenvwr ...
- Scala 学习(4)之「类——基本概念2」
目录 内部类 extends override和super override field isInstanceOf和asInstanceOf getClass和classOf 内部类 import s ...
- js多图预览及上传功能
<%-- Created by IntelliJ IDEA. User: Old Zhang Date: 2018/12/27 Time: 11:17 To change this templa ...
- Collections中的常用方法
collections中的常用方法 public class CollectionsTest { public static void main(String[] args) { List list ...
- kuangbin专题专题十一 网络流 Dining POJ - 3281
题目链接:https://vjudge.net/problem/POJ-3281 题目:有不同种类的食物和饮料,每种只有1个库存,有N头牛,每头牛喜欢某些食物和某些饮料,但是一头牛 只能吃一种食物和喝 ...
- 代码中理解CPU结构及工作原理
一.前言 从研究生开始到工作半年,陆续在接触MCU SOC这些以CPU为核心的控制器,但由于专业的原因一直对CPU的内部结构和工作原理一知半解.今天从一篇博客中打破一直以来的盲区.特此声明,本文设计思 ...
- EL表达式(Exprission language)
EL介绍 Expressive Language, JSP2.0引入,简化jsp开发中对对象的引用,(可以直接读取对象的属性,不需要像之前java脚本那样去做,比较繁琐),使得访问存储在JavaBea ...