相关文章:

利用django打造自己的工作流平台(一):从EXCEL到流程化运作

本文是“利用django打造自己的工作流平台”系列文章的第二篇,在自己开发的工作流平台中添加了一个用于排查统计可能受感染人员的项目,可用于公司、部门对员工以及各行政单位对辖区内的人员进行受感染情况的跟踪和统计,为疫情防控贡献一点力量。演示试用地址[点击此处],两个试用账号/密码为:testuser1/testuser1, testuser2/testuser2。

对人员的排查流程如下图1所示:

图1.可能受感染人员的排查流程

疫情统计项目主页如图2所示:

图2.疫情统计项目首页

点击疫情统计项目主页上的“创建条目”链接,即可弹出新页面用于录入人员信息,填好相关信息后点击创建按钮即可,如图3所示:

图3.用于录入人员信息的页面

对于已经录入的人员信息,在疫情统计项目首页点击对应的姓名即可查看人员的详细信息;此外还可以根据图1中的流程更改人员状态。如下图4中张三当前处于"筛查中"状态,根据图1中的流程在页面下方自动生成“确认感染”、“疑似感染”、“排除感染”、“更新信息”四个按钮,前三个按钮会将人员的“当前状态”分别修改为“已确认”、“疑似”、“已排除”,与图1中的流程图一致;最后一个按钮用于将更新后的表单数据刷写到数据库,不进行状态修改。

图4.用于查看和修改已录入人员的页面

在工作流平台中添加疫情统计这个项目非常简单,只需要如下几个步骤:

1.在FSM.py中定义项目的处理流程,并在TRANS_TABLE_DICT添加项目名字和项目处理流程组成的字典项;绿色字体是列出的git新增项。

2.定义项目的model和form,用于确定使用哪些字段记录人员信息,以及字段的表现形式(文本框or下拉框等);其中model是核心,form可由model生成,主要定义各字段的显示行高、列宽等。

3.定义完model和form后,将相应的字典项填入FormAndModelDict,一级字典的key是项目名称'patient_stat',二级字典的key分别是项目中文名、项目使用的model、项目使用的form等;此外还需要将项目名称'patient_stat'添加到PRJ_NAME_LIST中,PRJ_NAME_LIST定义了各项目在工作流平台首页的排列顺序。

4. 执行python manage.py makemigrations和python manage.py migrate两条命令,将定义好的model迁移到数据库;

5.执行ps aux | grep wsgi,查看uwsgi的进程号,然后执行kill -9 9301杀死uwsgi进程;然后执行 uwsgi flow_uwsgi.ini重启uwsgi进程,项目就可以使用了。

最新文章

  1. Android使用静默安装时碰见的问题
  2. Android开发学习之路-PopupWindow和仿QQ左滑删除
  3. python 数据库
  4. MVC 架构
  5. kernel 内核安装
  6. VB6.0手册
  7. 正则表达式中参数g、i、m的作用(share)
  8. samba 常见问题
  9. svn 版本升级的问题
  10. 【Sort】RadixSort基数排序
  11. ExtJS与后台Java交互
  12. C语言中关于三目运算符的注意事项
  13. zabbix配置邮件告警
  14. C# 中使用 ThoughtWorks.QRCode.dll 生成指定尺寸和边框宽度的二维码
  15. hdoj:2052
  16. Spark jdbc postgresql数据库连接和写入操作源码解读
  17. Photo Sphere Viewer 全景图
  18. Codeforces 623B Array GCD
  19. mosquitto --用户配置 及权限管理
  20. PHP 调用web service接口(.net开发的接口)

热门文章

  1. iOS内存管理的知识梳理
  2. laravel5.1学习1-Model的创建
  3. HDU 2063 过山车(二分图 && 匈牙利 && 最小点覆盖)
  4. 01 认识python
  5. 序列变换 HDU - 5256
  6. Vue入门学习总结一:Vue定义
  7. Vacuum Pump Manufacturer - Vacuum Pump: Prevents Reactive Compound Decomposition Products
  8. python上传文件接口
  9. query_phase_execution_exception
  10. 【SSM 】导出excel含图片