审批 确认 拒绝
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
'security/ir.model.access.csv',
|
||||
'data/approval_category_type_data.xml',
|
||||
'wizard/approval_notice_wizard_views.xml',
|
||||
'wizard/approval_refuse_wizard_views.xml',
|
||||
'views/inherit_approval_category_views.xml',
|
||||
'views/inherit_approval_request_views.xml',
|
||||
'views/approval_process_views.xml',
|
||||
|
||||
@@ -2,6 +2,9 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_approval_process,approval_process,model_approval_process,base.group_user,1,1,1,1
|
||||
access_approval_users,approval_users,model_approval_users,base.group_user,1,1,1,1
|
||||
access_approval_other_users,approval_other_users,model_approval_other_users,base.group_user,1,1,1,1
|
||||
|
||||
access_approval_notice_wizard,approval_notice_wizard,model_approval_notice_wizard,base.group_user,1,1,1,1
|
||||
access_approval_refuse_wizard,approval_refuse_wizard,model_approval_refuse_wizard,base.group_user,1,1,1,1
|
||||
|
||||
|
||||
|
||||
|
||||
|
@@ -15,9 +15,16 @@
|
||||
|
||||
<xpath expr="//button[@name='action_approve']" position="attributes">
|
||||
<attribute name="invisible">1</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//button[@name='action_refuse']" position="attributes">
|
||||
<attribute name="invisible">1</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//button[@name='action_approve']" position="after">
|
||||
<button name="%(approval_notice_wizard_action)d" string="批准" type="action" invisible="request_status in ['approved', 'refused', 'cancel'] or user_status != 'pending'"/>
|
||||
<button name="%(approval_notice_wizard_action)d" string="批准" type="action" invisible="request_status in ['approved', 'refused', 'cancel'] or user_status != 'pending'" data-hotkey="v"/>
|
||||
</xpath>
|
||||
|
||||
<xpath expr="//button[@name='action_refuse']" position="after">
|
||||
<button name="%(approval_refuse_wizard_action)d" string="拒绝" type="action" invisible="request_status in ['approved', 'refused', 'cancel'] or user_status != 'pending'" data-hotkey="z"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
from . import approval_notice_wizard
|
||||
|
||||
#
|
||||
|
||||
from . import approval_notice_wizard
|
||||
from . import approval_refuse_wizard
|
||||
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from odoo import api, fields, models, tools, _
|
||||
|
||||
|
||||
class ApprovalRefuseWizard(models.TransientModel):
|
||||
_name = 'approval.refuse.wizard'
|
||||
_description = """ 审批意见弹窗 """
|
||||
|
||||
approval_user_line_id = fields.Many2one('approval.request', string="审批明细行")
|
||||
approval_notice_text = fields.Text(string="审批意见")
|
||||
approval_sign = fields.Char(string="审批签署")
|
||||
|
||||
def confirm(self):
|
||||
self.ensure_one()
|
||||
approver = self.sudo().approval_user_line_id.mapped('approver_ids').filtered(
|
||||
lambda approver: approver.user_id == self.env.user
|
||||
)
|
||||
self.sudo().approval_user_line_id.action_refuse(approver=approver)
|
||||
approver.write({'approval_notice': self.approval_notice_text})
|
||||
@@ -0,0 +1,32 @@
|
||||
<odoo>
|
||||
<record id="approval_refuse_wizard_form" model="ir.ui.view">
|
||||
<field name="name">审批意见弹窗</field>
|
||||
<field name="model">approval.refuse.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form>
|
||||
<field name="approval_user_line_id" invisible="1" />
|
||||
<group>
|
||||
<field name="approval_notice_text"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="approval_sign"/>
|
||||
</group>
|
||||
<footer>
|
||||
<button name="confirm" string="确认" type="object" class="oe_highlight"/>
|
||||
<button string="返回" class="btn-secondary" special="cancel"/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<record id="approval_refuse_wizard_action" model="ir.actions.act_window">
|
||||
<field name="name">审批意见弹窗</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">approval.refuse.wizard</field>
|
||||
<field name="context">{
|
||||
'default_approval_user_line_id': active_id,
|
||||
}</field>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="target">new</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user