odoo 工作流
odoo工作流
介绍
-
新版本的odoo开始减少workflow的使用,推荐使用workflow-ish的方式来处理工作流过程
-
很多模块中还是使用到工作流,这里我记录一个简单的实例,欢迎大家给出建议。
-
在本实例中工作流可以分为两个部分,一部分是“view视图”,一部分是“model方法”和相关的“流程字段”
定义流程流转字段
state = fields.Selection([
('draft', '草稿'),
('read', '已阅'),
('write', '已写心得'),
('submit', '已上传心得')],
string='Status', default='draft', readonly=True, copy=False, track_visibility='onchange')
- Selection 是一个多值选择的字段类型,里面可以定义一个数组集。
odoo工作流
-
String 是一个字段前台显示的值。
-
default 是一个默认的初始的状态新创建数据后会默认加载这个状态初始值。
-
track_visibility 流程变更可见性。
-
readonly 是定义改状态值是否只读。
定义工作流程的 def
@api.one
def button_done(self):
self.state = 'read'
self.message_post('变更——————草稿 ——> 已阅', subtype='mail.mt_note')
@api.one
def button_confirm(self):
self.state = 'submit'
self.message_post('变更——————已写心得 ——> 已上传心得', subtype='mail.mt_note')
for rel in self.employee_ids:
domain = [('id', '=', rel.id)]
employee = self.env['files.employee'].search(domain)
data = {
'name': employee.name,
'email': employee.work_email,
'event_id': self.id,
'wx_number': employee.wx_number,
}
self.env['activity.registration'].create(data)
定义页面的 View

浙公网安备 33010602011771号