122 lines
7.2 KiB
XML
122 lines
7.2 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
|
|
<record id="view_quality_check_wizard" model="ir.ui.view">
|
|
<field name="name">quality_check_wizard</field>
|
|
<field name="model">quality.check.wizard</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Quality Checks">
|
|
<field name="current_check_id" invisible="1"/>
|
|
<field name="measure_on" invisible="1"/>
|
|
<field name="test_type" invisible="1"/>
|
|
<field name="quality_state" invisible="1"/>
|
|
<field name="is_last_check" invisible="1"/>
|
|
<field name="testing_percentage_within_lot" invisible="1"/>
|
|
<field name="is_lot_tested_fractionally" invisible="1"/>
|
|
<field name="show_lot_text" invisible="1"/>
|
|
<field name="product_tracking" invisible="1"/>
|
|
|
|
<h2 class="o_row d-flex justify-content-between">
|
|
<span>
|
|
<span attrs="{'invisible': [('product_id', '=', False)]}">
|
|
<field name="product_id" readonly="1" options="{'no_open': True}"/>
|
|
:
|
|
</span>
|
|
<field name="name" readonly="1"/>
|
|
<field class="ml8" name="title" readonly="1"/>
|
|
</span>
|
|
<span>
|
|
<field name="position_current_check" readonly="1"/> /
|
|
<field name="nb_checks" readonly="1"/>
|
|
</span>
|
|
</h2>
|
|
<field name="note" readonly="1"/>
|
|
<group attrs="{'invisible': [('measure_on', '!=', 'move_line')]}">
|
|
<group>
|
|
<field name="lot_name" string="Lot/SN" attrs="{'invisible': ['|', ('show_lot_text', '!=', True), ('product_tracking', '=', 'none')]}"/>
|
|
<field name="lot_line_id" string="Lot/SN" attrs="{'invisible': ['|', ('show_lot_text', '=', True), ('product_tracking', '=', 'none')]}"/>
|
|
<label for="qty_line"/>
|
|
<div class="o_row">
|
|
<field name="qty_line"/>
|
|
<field name="uom_id"/>
|
|
</div>
|
|
<label for="qty_to_test" attrs="{'invisible': [('is_lot_tested_fractionally', '!=', True)]}"/>
|
|
<div class="o_row" attrs="{'invisible': [('is_lot_tested_fractionally', '!=', True)]}">
|
|
<field name="qty_to_test"/>
|
|
<field name="uom_id"/>
|
|
</div>
|
|
<label for="qty_tested" attrs="{'invisible': [('is_lot_tested_fractionally', '!=', True)]}"/>
|
|
<div class="o_row" attrs="{'invisible': [('is_lot_tested_fractionally', '!=', True)]}">
|
|
<field name="qty_tested" attrs="{'readonly': [('quality_state', '!=', 'none')]}"/>
|
|
<field name="uom_id"/>
|
|
</div>
|
|
</group>
|
|
</group>
|
|
<group>
|
|
<group>
|
|
<label for="measure" attrs="{'invisible': [('test_type', '!=', 'measure')]}"/>
|
|
<div attrs="{'invisible': [('test_type', '!=', 'measure')]}" class="o_row">
|
|
<field name="measure" attrs="{'readonly': [('quality_state', '!=', 'none')]}"/>
|
|
<field name="norm_unit" string="Unit of Measure"/>
|
|
</div>
|
|
</group>
|
|
</group>
|
|
<label for="picture" invisible="1"/>
|
|
<div attrs="{'invisible': [('test_type', '!=', 'picture')]}">
|
|
<field name="picture" widget="image" attrs="{'readonly': [('quality_state', '!=', 'none')]}"/>
|
|
</div>
|
|
<group>
|
|
<field name="additional_note" attrs="{'readonly': [('quality_state', '!=', 'none')]}"/>
|
|
</group>
|
|
<footer>
|
|
<button name="do_measure" type="object" class="btn-primary" string="Validate"
|
|
attrs="{'invisible': [ '|', ('quality_state', '!=', 'none'), ('test_type', '!=', 'measure')]}" data-hotkey="q"/>
|
|
<button name="do_pass" type="object" class="btn-primary" string="Validate"
|
|
attrs="{'invisible': [ '|', ('quality_state', '!=', 'none'), ('test_type', 'not in', ('picture', 'instructions') )]}" data-hotkey="w"/>
|
|
<button name="do_pass" type="object" class="btn-primary" string="Pass"
|
|
attrs="{'invisible': ['|', ('quality_state', '!=', 'none'), ('test_type', '!=', 'passfail')]}" data-hotkey="w"/>
|
|
<button name="do_fail" type="object" class="btn-primary" string="Fail"
|
|
attrs="{'invisible': ['|', ('quality_state', '!=', 'none'), ('test_type', '!=', 'passfail')]}" data-hotkey="x"/>
|
|
<button name="action_generate_previous_window" type="object" class="btn-secondary" string="Previous" attrs="{'invisible': [('position_current_check', '=', 1)]}"/>
|
|
<button name="action_generate_next_window" type="object" class="btn-secondary" string="Next" attrs="{'invisible': [('is_last_check', '=', True)]}"/>
|
|
<button string="Cancel" class="btn btn-secondary" special="cancel" data-hotkey="z" />
|
|
</footer>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="quality_check_wizard_form_failure" model="ir.ui.view">
|
|
<field name="name">quality.check.wizard.form.failure</field>
|
|
<field name="priority">1000</field>
|
|
<field name="model">quality.check.wizard</field>
|
|
<field name="arch" type="xml">
|
|
<form string="Quality Check Failed">
|
|
<field name="test_type" invisible="1"/>
|
|
<div class="alert alert-warning" role="alert" attrs="{'invisible': [('test_type', '!=', 'measure')]}" >
|
|
<field name="warning_message"/>
|
|
</div>
|
|
<div>
|
|
<field name="failure_message"/>
|
|
</div>
|
|
<footer>
|
|
<button name="correct_measure" type="object" class="btn-primary" string="Correct Measure"
|
|
attrs="{'invisible': [('test_type', '!=', 'measure')]}" data-hotkey="q"/>
|
|
<button name="action_generate_next_window" type="object" string="Confirm Measure"
|
|
attrs="{'invisible': [('test_type', '!=', 'measure')]}" data-hotkey="w"/>
|
|
<button name="action_generate_next_window" type="object" class="btn-primary" string="OK"
|
|
attrs="{'invisible': [('test_type', '!=', 'passfail')]}" data-hotkey="w"/>
|
|
</footer>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="action_quality_check_wizard" model="ir.actions.act_window">
|
|
<field name="name">Quality Check</field>
|
|
<field name="type">ir.actions.act_window</field>
|
|
<field name="res_model">quality.check.wizard</field>
|
|
<field name="view_mode">form</field>
|
|
<field name="context">{}</field>
|
|
<field name="target">new</field>
|
|
</record>
|
|
</odoo>
|