Sign inSign up

easecloud/ecerp

By easecloud

•Updated over 10 years ago

EaseCloud ERP

Image
0

1.1K

easecloud/ecerp repository overview

⁠EaseCloud Enterprise Resource Planning Project (ECERP)

⁠Sys 模块

关于下载 Excel

后来考虑到不同的企业之间 Excel 导出的表单格式可能不尽相同,因此,

⁠Base 模块

在 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 对象对应于用户看到的每一个任务项目

任务分两种:

  1. custom == True: 这一类是系统自动生成的任务,不可以自己修改内容和状态;
  2. custom == False: 这一类是用户自己创建的任务,可以自己修改内容和状态;

然后,系统任务是可以设置触发条件的,每个待办任务都会设置一个事件句柄,相当于一个钩子;

每个 Mission 对象可对应多个 MissionTrigger 触发器,每个触发器对应于一个句柄、参数及动作

每个任务触发器都有如下三个主要的字段:

  1. handle: 这是触发器的名称,用于接收发射的信号;
  2. parameter: 这是触发的参数,用于校验触发对象(一般是触发事件的对象的 ID)
  3. action: 触发时所做的动作
  • 0 - 重置:将对应的任务状态设置为“0 - 待办”
  • 1 - 完成:将对应任务状态设置为“1 - 完成”
  • 2 - 删除:删除对应的任务的

然后,MissionTrigger 有一个静态方法:MissionTrigger.emit(handle, parameter)

只要调用这个方法,并且捕捉到已有的触发器,就会根据触发器的设定修改任务对象。

下面文档列出触发器的所有句柄,如编程中有更新需要及时进行调整:

钩子 handle相关对象参数说明备注
on_mrp_material_request_list__commitMaterialRequestList备料单ID备料单提交时触发
on_mrp_material_request_list__rollbackMaterialRequestList备料单ID备料单退回编辑时触发
on_mrp_material_request_list__approveMaterialRequestList备料单ID备料单审批通过时触发
on_mrp_material_request_list__init_pickedMaterialRequestList备料单ID备料单初次领料完成时触发
on_mrp_material_request_list__purchaseMaterialRequestList备料单ID备料单确认采购完成时触发
on_mrp_material_request_list__pickingMaterialRequestList备料单ID备料单完成领料时触发
on_mrp_material_request_list__repickMaterialRequestList备料单ID已完成备料单“继续领料”时触发
on_mrp_material_purchase_list__commitProductDeliveryList采购单ID采购单确认下单时触发
on_mrp_material_purchase_list__removeProductDeliveryList采购单ID采购单删除时触发
on_mrp_product_delivery_list__commitProductDeliveryList发货总清单ID发货总清单提交时触发
on_mrp_product_delivery_list__rollbackProductDeliveryList发货总清单ID发货总清单退回时触发
on_mrp_product_delivery_list__approveProductDeliveryList发货总清单ID发货总清单审核时触发
on_mrp_product_delivery_list__finishProductDeliveryList发货总清单ID发货总清单确认完成时触发
on_mrp_product_delivery_list__removeProductDeliveryList发货总清单ID发货总清单删除时触发
on_mrp_drawing__updatedDrawing图纸ID图纸更新时触发
on_mrp_drawing__deletedDrawing图纸ID图纸删除时触发
on_bpm_process_production__submit_agentProcessProduction生产流程ID生产流程提交代理时触发
on_bpm_process_production__commitProcessProduction生产流程ID下发生产流程时触发
on_bpm_process_production__task_createdProcessProduction生产流程ID创建第一个生产任务时触发
on_bpm_process_production__task_beginProcessProduction生产流程ID开始第一个生产任务时触发
on_bpm_process_production__removeProcessProduction生产流程ID生产流程删除时触发
on_bpm_process_production_task__finishProcessProductionTask生产任务ID完成某个生产任务时触发
on_bpm_process_production_task__check_failProcessProductionTask生产任务ID某个生产任务质检不通过时触发
on_bpm_process_production_task__check_passProcessProductionTask生产任务ID某个生产任务质检通过时触发
on_bpm_process_production_task__removeProcessProductionTask生产任务ID删除生产任务时触发
on_bpm_process_design__approveProcessDesign设计流程ID设计流程审批通过时触发
on_bpm_process_design__deleteProcessDesign设计流程ID设计流程删除时触发

⁠Bpm 模块

  1. 必须是 Option['roles_create_process'] 指定的角色才可以发起生产流程;
  2. 生产流程里面【业务负责人】以及【技术负责人】的选择范围为具有指定角色的用户, 这可以在系统管理员的【系统设置】功能中设定,默认情况下是“业务经理”和“技术员” 对应的选项是 Option['roles_business'] 和 Option['roles_engineer']

⁠Mrp 模块

⁠MaterialRequestList 备料单

备料单主要的视图模式主要有:

  1. Edit: 创建/编辑视图
  2. Approve: 审核视图
  3. Picking: 领料视图
  4. View: 只读浏览视图
⁠关于备料单的几点说明
  • 原则上,每个备料单都由“生产流程”而来;

  • 然后当备料单的“确认采购”环节确认之后,备料单未领用的数量会记录到“采购数量”;

  • 然后,在【钢材采购计划】中,就会出现相应的条目;

  • 采购的状态记录在备料单明细中,只有 待采购/已采购/已取消 三种状态;

  • 也就是说,要么整条采购,要么整条忽略,要么整条还没有采购;

  • 有一个例外,在“物料进仓计划”中可以手动添加采购项;

  • 每个采购项就是一个单独的备料单记录;

  • 它们挂到一个虚拟的备料单,备料单没有关联到生产流程,编号为 -1;

⁠所有表格的数字样式问题
  • 所有涉及数量、长、宽、尺寸、重量、单价、金额都在表格中靠右;
  • 长、宽总是显示小数点后三位;
  • 计算尺寸显示小数点后两位;
  • 重量显示小数点后一位;
  • 价格、金额显示小数点后两位;

Tag summary

Content type

Image

Digest

Size

318 MB

Last updated

over 10 years ago

docker pull easecloud/ecerp