1
This commit is contained in:
@@ -287,12 +287,13 @@ class SoongWorkflowMixin(models.AbstractModel):
|
||||
# 退回节点根据日志进行判断
|
||||
if btn_rec.name == '退回':
|
||||
for ret in self.log_ids.search([('approval_state', '=', '2'), ('res_id', '=', self.id), ('node_btn_name', '=', '0')]):
|
||||
self.env['trans.link'].create({
|
||||
'node_button_id': btn_rec.id,
|
||||
'name': ret.name,
|
||||
'link_type': 'return',
|
||||
'record_id': self.id,
|
||||
})
|
||||
if not self.env['trans.link'].search([('name', '=', ret.name)]):
|
||||
self.env['trans.link'].create({
|
||||
'node_button_id': btn_rec.id,
|
||||
'name': ret.name,
|
||||
'link_type': 'return',
|
||||
'record_id': self.id,
|
||||
})
|
||||
if btn_rec.name == '转交':
|
||||
node_list = list(btn_rec.workflow_id.node_ids.sorted('sequence'))
|
||||
index = self_state
|
||||
|
||||
@@ -77,7 +77,6 @@ class SoongWorkflowCommentWizard(models.TransientModel):
|
||||
record_id = self.env[self.res_model].search([('id', '=', self.res_id)])
|
||||
for ret in self.trans_link_id:
|
||||
workflow_id = self.trans_link_id.node_button_id.workflow_id
|
||||
state_list = [i.node_name for i in workflow_id.node_ids]
|
||||
link_users_id = workflow_id.node_ids.search([('name', '=', self.trans_link_id.name), ('workflow_id', '=', workflow_id.id)]).button_ids[0].users_role_id
|
||||
next_is_automatic = workflow_id.node_ids.search([('name', '=', self.trans_link_id.name), ('workflow_id', '=', workflow_id.id)]).button_ids[0].is_automatic
|
||||
# 不自动匹配
|
||||
@@ -94,24 +93,6 @@ class SoongWorkflowCommentWizard(models.TransientModel):
|
||||
self.employee_ids = employee_user_role_ids if not next_is_automatic else employee_user_role_id
|
||||
if '分发' in ret.name:
|
||||
self.employee_ids = record_id.users_id.employee_id
|
||||
if self.node_btn_name == '退回':
|
||||
next_list = []
|
||||
self_state = state_list.index(ret.name)
|
||||
button_ids = workflow_id.node_ids[self_state].button_ids
|
||||
for btn in button_ids:
|
||||
next_list.append(btn.name)
|
||||
if '转交' not in next_list:
|
||||
raise UserError('配置错误,请配置当前{}的转交按钮'.format(btn.name))
|
||||
else:
|
||||
if btn.is_automatic:
|
||||
employee_user_role_id = self.env['hr.employee'].search(
|
||||
[('user_role_id', '=', btn.users_role_id.id),
|
||||
('department_id', '=', record_id.department_id.id)])
|
||||
self.employee_ids = employee_user_role_id
|
||||
else:
|
||||
employee_user_role_ids = self.env['hr.employee'].search(
|
||||
[('user_role_id', '=', btn.users_role_id.id)])
|
||||
self.employee_ids = employee_user_role_ids
|
||||
|
||||
def add_comment(self):
|
||||
self.ensure_one()
|
||||
@@ -194,15 +175,16 @@ class SoongWorkflowCommentWizard(models.TransientModel):
|
||||
"lase_click_date": fields.Datetime.now(),
|
||||
"comment": self.comment_note_id.name,
|
||||
"node_btn_name": "1"})
|
||||
self.sudo().env["soong.workflow.log"].create({
|
||||
"model": self.res_model,
|
||||
"res_id": self.res_id,
|
||||
"node_id": next_node_id.id,
|
||||
"workflow_id": self.node_btn_id.workflow_id.id,
|
||||
"done_by": self.employee_ids[0].user_id.id,
|
||||
"approval_state": "0",
|
||||
"node_btn_id": self.node_btn_id.id,
|
||||
})
|
||||
if not self.sudo().env["soong.workflow.log"].search([('node_id', '=', next_node_id.id)]):
|
||||
self.sudo().env["soong.workflow.log"].create({
|
||||
"model": self.res_model,
|
||||
"res_id": self.res_id,
|
||||
"node_id": next_node_id.id,
|
||||
"workflow_id": self.node_btn_id.workflow_id.id,
|
||||
"done_by": self.employee_ids[0].user_id.id,
|
||||
"approval_state": "0",
|
||||
"node_btn_id": self.node_btn_id.id,
|
||||
})
|
||||
return self.node_btn_id.with_context(cx).run()
|
||||
if self.node_btn_name == '结束':
|
||||
record_id.log_ids[-1].write({"comment": self.comment_note_id.name,
|
||||
|
||||
Reference in New Issue
Block a user