出厂检验报告发布时二次确认
This commit is contained in:
@@ -1 +1,2 @@
|
||||
from . import check_picking_wizard
|
||||
from . import confirmation_wizard
|
||||
|
||||
32
sf_quality/wizard/confirmation_wizard.py
Normal file
32
sf_quality/wizard/confirmation_wizard.py
Normal file
@@ -0,0 +1,32 @@
|
||||
from odoo import models, fields, api
|
||||
|
||||
|
||||
class ConfirmationWizard(models.TransientModel):
|
||||
_name = 'confirmation.wizard'
|
||||
_description = '二次确认向导'
|
||||
|
||||
# 可根据需要传递上下文参数
|
||||
check_id = fields.Many2one('quality.check', string='质检单', required=True)
|
||||
picking_name = fields.Char(string='拣货单', related='check_id.picking_id.name', store=True)
|
||||
number = fields.Char(string='数量', related='check_id.total_qty', store=True)
|
||||
picking_num = fields.Integer(string='拣货数量', compute='_compute_picking_num', store=True)
|
||||
|
||||
@api.depends('check_id.picking_id')
|
||||
def _compute_picking_num(self):
|
||||
for record in self.check_id:
|
||||
if record.picking_id:
|
||||
for move in record.picking_id.move_ids_without_package:
|
||||
if move.product_id == record.product_id:
|
||||
self.picking_num = int(move.product_uom_qty)
|
||||
else:
|
||||
self.picking_num = 0
|
||||
|
||||
button_text = fields.Char(string='确认按钮文字')
|
||||
|
||||
def action_confirm(self):
|
||||
self.ensure_one()
|
||||
|
||||
# 获取原始记录
|
||||
check = self.env['quality.check'].browse(self.check_id.id)
|
||||
# 调用实际发布方法
|
||||
return check._do_actual_publish()
|
||||
19
sf_quality/wizard/confirmation_wizard_views.xml
Normal file
19
sf_quality/wizard/confirmation_wizard_views.xml
Normal file
@@ -0,0 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="view_confirmation_wizard_form" model="ir.ui.view">
|
||||
<field name="name">confirmation.wizard.form</field>
|
||||
<field name="model">confirmation.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form>
|
||||
<div class="alert alert-warning">
|
||||
<p>拣货调拨单号<strong><field name="picking_name" class="oe_inline"/></strong>需求数量为<strong><field name="picking_num" class="oe_inline"/></strong>,当前质量检查单产品数量为<strong><field name="number" class="oe_inline"/></strong>,数量不一致,是否确认继续?</p>
|
||||
</div>
|
||||
<footer>
|
||||
<button name="action_confirm" string="确定" type="object" class="btn-primary"/>
|
||||
<button string="取消" class="btn-secondary" special="cancel"/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user