工作流节点更新时间,分发排版
This commit is contained in:
@@ -659,11 +659,28 @@ class SoongWorkflowMixin(models.AbstractModel):
|
||||
self.env["soong.workflow.record"].create(values)
|
||||
|
||||
if record_obj:
|
||||
record_obj.update({"workflow_id": rec.workflow_id.id,
|
||||
"node_id": rec.node_id.id,
|
||||
"done_by": self.env.uid,
|
||||
"write_date2": fields.Datetime.now(),
|
||||
})
|
||||
# 获取上一节点的结束时间(即log_ids最后一条记录的lase_click_date)
|
||||
node_update_time = False
|
||||
try:
|
||||
if hasattr(rec, 'log_ids') and rec.log_ids:
|
||||
# 按ID排序获取最后一条日志
|
||||
sorted_logs = rec.log_ids.sorted(lambda log: log.id)
|
||||
if sorted_logs and sorted_logs[-1].lase_click_date:
|
||||
node_update_time = sorted_logs[-1].lase_click_date
|
||||
except Exception as e:
|
||||
_logger.debug(f"Failed to get node_update_time: {e}")
|
||||
|
||||
# 更新记录
|
||||
update_vals = {
|
||||
"workflow_id": rec.workflow_id.id,
|
||||
"node_id": rec.node_id.id,
|
||||
"done_by": self.env.uid,
|
||||
"write_date2": fields.Datetime.now(),
|
||||
}
|
||||
if node_update_time:
|
||||
update_vals["node_update_time"] = node_update_time
|
||||
|
||||
record_obj.update(update_vals)
|
||||
|
||||
def find_fields_by_string(self,record_id):
|
||||
"""
|
||||
|
||||
@@ -82,6 +82,9 @@ class SoongWorkflowRecord(models.Model):
|
||||
|
||||
is_company = fields.Boolean(string="本公司", default=True, compute='_compute_is_company',search='_search_part_of_company')
|
||||
|
||||
# 节点更新时间(上一节点的结束时间)
|
||||
node_update_time = fields.Datetime(string="节点更新时间")
|
||||
|
||||
@api.depends_context('uid', 'company')
|
||||
@api.depends('company_id')
|
||||
def _compute_is_company(self):
|
||||
|
||||
@@ -243,7 +243,7 @@
|
||||
decoration-danger="approve_state == 'end'" decoration-success="approve_state == 'pending'"/>
|
||||
<field name="create_uid"/>
|
||||
<field name="employee_ids" widget="many2many_tags" string="当前经办人" class="list_ids_width"/>
|
||||
<field name="soong_state"/>
|
||||
<field name="soong_state"/><field name="node_update_time" string="节点更新时间" optional="show"/>
|
||||
<field name="is_manager" column_invisible="1"/>
|
||||
<field name="is_unlink" column_invisible="1"/>
|
||||
<field name="is_log2" column_invisible="1"/>
|
||||
|
||||
@@ -105,13 +105,23 @@
|
||||
<div invisible="node_btn_name != '收回'">
|
||||
<h2>当前流程是否收回,请确认</h2>
|
||||
</div>
|
||||
<group invisible="node_btn_name != '分发'">
|
||||
<field name="employee_ids" widget="many2many_tags" string="董事长" domain="[('user_role_id.name', '=', '董事长')]" options="{'no_create': True}" groups="yuthon_salary.group_jtbb_user"/>
|
||||
<!-- 分发弹窗:本公司开关控制人员筛选范围 -->
|
||||
<field name="is_this_company"/>
|
||||
<field name="dep_manager_employee_ids" widget="many2many_tags" string="承办" options="{'no_create': True}" domain="[('company_id', '=', company_id)] if is_this_company else []"/>
|
||||
<field name="circulated_employee_ids" widget="many2many_tags" options="{'no_create': True}" domain="[('company_id', '=', company_id), ('id', 'not in' , filter_personnel_ids)] if is_this_company else [('id', 'not in' , filter_personnel_ids)]"/>
|
||||
<field name="supervising_employee_ids" widget="many2many_tags" invisible="not is_supervising" options="{'no_create': True}"/>
|
||||
<group invisible="node_btn_name != '分发'" col="1">
|
||||
<group>
|
||||
<field name="employee_ids" widget="many2many_tags" string="董事长" domain="[('user_role_id.name', '=', '董事长')]" options="{'no_create': True}" groups="yuthon_salary.group_jtbb_user"/>
|
||||
</group>
|
||||
<group>
|
||||
<!-- 分发弹窗:本公司开关控制人员筛选范围 -->
|
||||
<field name="is_this_company"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="dep_manager_employee_ids" widget="many2many_tags" string="承办" options="{'no_create': True}" domain="[('company_id', '=', company_id)] if is_this_company else []"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="circulated_employee_ids" widget="many2many_tags" options="{'no_create': True}" domain="[('company_id', '=', company_id), ('id', 'not in' , filter_personnel_ids)] if is_this_company else [('id', 'not in' , filter_personnel_ids)]"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="supervising_employee_ids" widget="many2many_tags" invisible="not is_supervising" options="{'no_create': True}"/>
|
||||
</group>
|
||||
</group>
|
||||
<footer>
|
||||
<button name="add_comment" string="确认" type="object" class="oe_highlight"/>
|
||||
|
||||
Reference in New Issue
Block a user