Merge branch 'develop' of https://e.coding.net/jikimo-hn/jikimo_sfs/jikimo_sf into feature/制造功能优化
# Conflicts: # quality_control/security/ir.model.access.csv # quality_control/wizard/quality_check_wizard.py # sf_quality/__manifest__.py # sf_quality/models/__init__.py # sf_quality/models/stock.py
This commit is contained in:
@@ -81,18 +81,38 @@ class StockPicking(models.Model):
|
||||
return quality_pickings
|
||||
|
||||
def action_cancel(self):
|
||||
"""
|
||||
调拨单取消后,关联取消质量检查单
|
||||
"""
|
||||
context = self.env.context
|
||||
if not context.get('cancel_check_picking') and self.sudo().mapped('check_ids').filtered(
|
||||
lambda x: x.quality_state in ['pass', 'fail']):
|
||||
self.env.cr.rollback()
|
||||
return {
|
||||
'type': 'ir.actions.act_window',
|
||||
'res_model': 'picking.check.cancel.wizard',
|
||||
'name': '取消质检单',
|
||||
'view_mode': 'form',
|
||||
'target': 'new',
|
||||
'context': {
|
||||
'default_picking_id': self.id,
|
||||
'cancel_check_picking': True}
|
||||
}
|
||||
elif self.check_ids.filtered(lambda x: x.quality_state != 'cancel'):
|
||||
self.sudo().mapped('check_ids').filtered(lambda x: x.quality_state != 'cancel').write({
|
||||
'quality_state': 'cancel'
|
||||
})
|
||||
res = super(StockPicking, self).action_cancel()
|
||||
self.sudo().mapped('check_ids').filtered(lambda x: x.quality_state == 'none').unlink()
|
||||
# self.sudo().mapped('check_ids').filtered(lambda x: x.quality_state == 'none').unlink()
|
||||
return res
|
||||
|
||||
def action_open_quality_check_picking(self):
|
||||
action = self.env["ir.actions.actions"]._for_xml_id("quality_control.quality_check_action_picking")
|
||||
action['context'] = self.env.context.copy()
|
||||
action['context'].update({
|
||||
action['context'] = {
|
||||
'search_default_picking_id': [self.id],
|
||||
'default_picking_id': self.id,
|
||||
'show_lots_text': self.show_lots_text,
|
||||
})
|
||||
}
|
||||
return action
|
||||
|
||||
def button_quality_alert(self):
|
||||
|
||||
@@ -3,4 +3,5 @@ access_quality_check_wizard,access.quality_check_wizard,model_quality_check_wiza
|
||||
access_quality_check_measure_line,quality.check.measure.line,model_quality_check_measure_line,base.group_user,1,1,1,0
|
||||
access_quality_check_import_complex_model_wizard,quality.check.import.complex.model.wizard,model_quality_check_import_complex_model_wizard,quality.group_quality_user,1,1,1,0
|
||||
access_quality_check_report_history,quality.check.report.history,model_quality_check_report_history,quality.group_quality_user,1,1,1,0
|
||||
access_quality_check_publish_wizard,quality.check.publish.wizard,model_quality_check_publish_wizard,quality.group_quality_user,1,1,1,0
|
||||
access_quality_check_publish_wizard,quality.check.publish.wizard,model_quality_check_publish_wizard,quality.group_quality_user,1,1,1,0
|
||||
access_picking_check_cancel_wizard,access.picking_check_cancel_wizard,model_picking_check_cancel_wizard,quality.group_quality_user,1,1,1,0
|
||||
|
||||
|
@@ -62,7 +62,8 @@ class QualityCheckWizard(models.TransientModel):
|
||||
|
||||
def do_pass(self):
|
||||
if self.test_type == 'picture' and not self.picture:
|
||||
raise UserError('You must provide a picture before validating')
|
||||
raise UserError('请先上传照片')
|
||||
# raise UserError('You must provide a picture before validating')
|
||||
self.current_check_id.do_pass()
|
||||
return self.action_generate_next_window()
|
||||
|
||||
@@ -116,3 +117,18 @@ class QualityCheckWizard(models.TransientModel):
|
||||
# 对于成品出库的出厂检验报告,增加发布按钮
|
||||
def publish(self):
|
||||
self.current_check_id._do_publish_implementation()
|
||||
|
||||
|
||||
class PickingCheckCancelWizard(models.TransientModel):
|
||||
_name = 'picking.check.cancel.wizard'
|
||||
_description = 'picking check cancel wizard'
|
||||
|
||||
picking_id = fields.Many2one('stock.picking', 'stock picking')
|
||||
|
||||
def confirm_picking_check(self):
|
||||
res = self.picking_id.action_cancel()
|
||||
return res
|
||||
|
||||
def cancel_picking_check(self):
|
||||
# 这里是取消后的逻辑
|
||||
return {'type': 'ir.actions.act_window_close'}
|
||||
|
||||
@@ -121,4 +121,21 @@
|
||||
<field name="context">{}</field>
|
||||
<field name="target">new</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- ================================================================================================== -->
|
||||
<record id="picking_check_cancel_wizard_form" model="ir.ui.view">
|
||||
<field name="name">picking.check.cancel.wizard</field>
|
||||
<field name="model">picking.check.cancel.wizard</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Quality Check Failed">
|
||||
<div>质量检查单已完成,继续取消吗?</div>
|
||||
<div class="'color': 'red'">注意:关联质量检查单也将被取消。</div>
|
||||
<footer>
|
||||
<button name="confirm_picking_check" type="object" class="btn-primary" string="确认"/>
|
||||
<button name="cancel_picking_check" type="object" string="取消"/>
|
||||
</footer>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user