关于下载 Excel
后来考虑到不同的企业之间 Excel 导出的表单格式可能不尽相同,因此,
在 context 里面指定 reload_tabs 可以在加载该视图的时候级联刷新指定的 tab。
例如:
# views/bpm.py
@login_required
def proc_prod(request, pk):
context = dict()
context['reload_tabs'] = ['index', 'bpm_produce']
# ...
return render(request, 'erp/bpm/proc_prod.html', context)
Mission 对象对应于用户看到的每一个任务项目
任务分两种:
然后,系统任务是可以设置触发条件的,每个待办任务都会设置一个事件句柄,相当于一个钩子;
每个 Mission 对象可对应多个 MissionTrigger 触发器,每个触发器对应于一个句柄、参数及动作
每个任务触发器都有如下三个主要的字段:
然后,MissionTrigger 有一个静态方法:MissionTrigger.emit(handle, parameter)
只要调用这个方法,并且捕捉到已有的触发器,就会根据触发器的设定修改任务对象。
下面文档列出触发器的所有句柄,如编程中有更新需要及时进行调整:
| 钩子 handle | 相关对象 | 参数说明 | 备注 |
|---|---|---|---|
| on_mrp_material_request_list__commit | MaterialRequestList | 备料单ID | 备料单提交时触发 |
| on_mrp_material_request_list__rollback | MaterialRequestList | 备料单ID | 备料单退回编辑时触发 |
| on_mrp_material_request_list__approve | MaterialRequestList | 备料单ID | 备料单审批通过时触发 |
| on_mrp_material_request_list__init_picked | MaterialRequestList | 备料单ID | 备料单初次领料完成时触发 |
| on_mrp_material_request_list__purchase | MaterialRequestList | 备料单ID | 备料单确认采购完成时触发 |
| on_mrp_material_request_list__picking | MaterialRequestList | 备料单ID | 备料单完成领料时触发 |
| on_mrp_material_request_list__repick | MaterialRequestList | 备料单ID | 已完成备料单“继续领料”时触发 |
| on_mrp_material_purchase_list__commit | ProductDeliveryList | 采购单ID | 采购单确认下单时触发 |
| on_mrp_material_purchase_list__remove | ProductDeliveryList | 采购单ID | 采购单删除时触发 |
| on_mrp_product_delivery_list__commit | ProductDeliveryList | 发货总清单ID | 发货总清单提交时触发 |
| on_mrp_product_delivery_list__rollback | ProductDeliveryList | 发货总清单ID | 发货总清单退回时触发 |
| on_mrp_product_delivery_list__approve | ProductDeliveryList | 发货总清单ID | 发货总清单审核时触发 |
| on_mrp_product_delivery_list__finish | ProductDeliveryList | 发货总清单ID | 发货总清单确认完成时触发 |
| on_mrp_product_delivery_list__remove | ProductDeliveryList | 发货总清单ID | 发货总清单删除时触发 |
| on_mrp_drawing__updated | Drawing | 图纸ID | 图纸更新时触发 |
| on_mrp_drawing__deleted | Drawing | 图纸ID | 图纸删除时触发 |
| on_bpm_process_production__submit_agent | ProcessProduction | 生产流程ID | 生产流程提交代理时触发 |
| on_bpm_process_production__commit | ProcessProduction | 生产流程ID | 下发生产流程时触发 |
| on_bpm_process_production__task_created | ProcessProduction | 生产流程ID | 创建第一个生产任务时触发 |
| on_bpm_process_production__task_begin | ProcessProduction | 生产流程ID | 开始第一个生产任务时触发 |
| on_bpm_process_production__remove | ProcessProduction | 生产流程ID | 生产流程删除时触发 |
| on_bpm_process_production_task__finish | ProcessProductionTask | 生产任务ID | 完成某个生产任务时触发 |
| on_bpm_process_production_task__check_fail | ProcessProductionTask | 生产任务ID | 某个生产任务质检不通过时触发 |
| on_bpm_process_production_task__check_pass | ProcessProductionTask | 生产任务ID | 某个生产任务质检通过时触发 |
| on_bpm_process_production_task__remove | ProcessProductionTask | 生产任务ID | 删除生产任务时触发 |
| on_bpm_process_design__approve | ProcessDesign | 设计流程ID | 设计流程审批通过时触发 |
| on_bpm_process_design__delete | ProcessDesign | 设计流程ID | 设计流程删除时触发 |
备料单主要的视图模式主要有:
原则上,每个备料单都由“生产流程”而来;
然后当备料单的“确认采购”环节确认之后,备料单未领用的数量会记录到“采购数量”;
然后,在【钢材采购计划】中,就会出现相应的条目;
采购的状态记录在备料单明细中,只有 待采购/已采购/已取消 三种状态;
也就是说,要么整条采购,要么整条忽略,要么整条还没有采购;
有一个例外,在“物料进仓计划”中可以手动添加采购项;
每个采购项就是一个单独的备料单记录;
它们挂到一个虚拟的备料单,备料单没有关联到生产流程,编号为 -1;
Content type
Image
Digest
Size
318 MB
Last updated
over 10 years ago
docker pull easecloud/ecerp