[FIX] all: fix pre-commit new checks

This commit is contained in:
Alessandro Uffreduzzi
2023-10-31 09:54:12 +01:00
parent e98b8afcec
commit b95762c93d
25 changed files with 620 additions and 666 deletions

View File

@@ -21,7 +21,7 @@
<field name="name">mrp.bom.line.tree.view</field>
<field name="model">mrp.bom.line</field>
<field name="arch" type="xml">
<tree string="Components" create="1" edit="1" delete="1">
<tree create="1" edit="1" delete="1">
<field name="bom_id" />
<field name="product_id" />
<field name="product_qty" />

View File

@@ -5,7 +5,7 @@
<field name="model">mrp.area</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="MRP Area">
<tree>
<field name="name" />
<field name="warehouse_id" />
<field name="company_id" groups="base.group_multi_company" />

View File

@@ -41,7 +41,7 @@
<field name="model">mrp.inventory</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="MRP Inventory" create="false">
<tree create="false">
<field name="mrp_area_id" />
<field name="company_id" groups="base.group_multi_company" />
<field name="product_id" />

View File

@@ -4,7 +4,7 @@
<field name="name">mrp.move.tree</field>
<field name="model">mrp.move</field>
<field name="arch" type="xml">
<tree string="MRP Moves">
<tree>
<field name="mrp_date" />
<field name="current_date" />
<field name="mrp_origin" />

View File

@@ -5,7 +5,7 @@
<field name="model">product.mrp.area</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Product MRP Area parameters">
<tree>
<field name="mrp_area_id" />
<field name="company_id" groups="base.group_multi_company" />
<field name="product_tmpl_id" />

View File

@@ -14,7 +14,7 @@
</p>
<group name="items" string="Items">
<field name="item_ids" nolabel="1">
<tree string="Items" nocreate="1" editable="top">
<tree nocreate="1" editable="top">
<field name="mrp_inventory_id" invisible="True" />
<field
name="warehouse_id"

View File

@@ -1,17 +1,14 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data noupdate="1">
<odoo noupdate="1">
<record id="sequence_mrp_route" model="ir.sequence">
<field name="name">Routing</field>
<field name="code">mrp.routing</field>
<field name="prefix">RO/</field>
<field name="padding">5</field>
<field name="number_next">1</field>
<field name="number_increment">1</field>
<field name="company_id" eval="False" />
</record>
<record id="sequence_mrp_route" model="ir.sequence">
<field name="name">Routing</field>
<field name="code">mrp.routing</field>
<field name="prefix">RO/</field>
<field name="padding">5</field>
<field name="number_next">1</field>
<field name="number_increment">1</field>
<field name="company_id" eval="False" />
</record>
</data>
</odoo>

View File

@@ -1,116 +1,114 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="mrp_routing_workcenter_0" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Manual Assembly</field>
<field name="time_cycle_manual">60</field>
<field name="sequence">5</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_0" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Manual Assembly</field>
<field name="time_cycle_manual">60</field>
<field name="sequence">5</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_1" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Long time assembly</field>
<field name="time_cycle_manual">180</field>
<field name="sequence">15</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_1" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Long time assembly</field>
<field name="time_cycle_manual">180</field>
<field name="sequence">15</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_3" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Testing</field>
<field name="time_cycle_manual">60</field>
<field name="sequence">10</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_3" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="name">Testing</field>
<field name="time_cycle_manual">60</field>
<field name="sequence">10</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_4" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_1" />
<field name="name">Packing</field>
<field name="time_cycle_manual">30</field>
<field name="sequence">5</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_4" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_1" />
<field name="name">Packing</field>
<field name="time_cycle_manual">30</field>
<field name="sequence">5</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_2" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_2" />
<field name="time_cycle_manual">120</field>
<field name="sequence">5</field>
<field name="name">Manual Assembly</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_2" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_2" />
<field name="time_cycle_manual">120</field>
<field name="sequence">5</field>
<field name="name">Manual Assembly</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/assebly-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_5" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="time_cycle_manual">120</field>
<field name="sequence">10</field>
<field name="name">Assembly Line 1</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_workcenter_5" model="mrp.routing.workcenter.template">
<field name="workcenter_id" ref="mrp.mrp_workcenter_3" />
<field name="time_cycle_manual">120</field>
<field name="sequence">10</field>
<field name="name">Assembly Line 1</field>
<field name="worksheet_type">pdf</field>
<field
name="worksheet"
type="base64"
file="mrp/static/img/cutting-worksheet.pdf"
/>
</record>
<record id="mrp_routing_0" model="mrp.routing">
<field name="name">Primary Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_0')])]"
/>
</record>
<record id="mrp_routing_0" model="mrp.routing">
<field name="name">Primary Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_0')])]"
/>
</record>
<record id="mrp_routing_1" model="mrp.routing">
<field name="name">Secondary Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_1'), ref('mrp_routing_workcenter_3'), ref('mrp_routing_workcenter_4')])]"
/>
</record>
<record id="mrp_routing_1" model="mrp.routing">
<field name="name">Secondary Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_1'), ref('mrp_routing_workcenter_3'), ref('mrp_routing_workcenter_4')])]"
/>
</record>
<record id="mrp_routing_2" model="mrp.routing">
<field name="name">Manual Component's Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_2')])]"
/>
</record>
<record id="mrp_routing_2" model="mrp.routing">
<field name="name">Manual Component's Assembly</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_2')])]"
/>
</record>
<record id="mrp_routing_3" model="mrp.routing">
<field name="name">Assemble Furniture</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_5')])]"
/>
</record>
<record id="mrp_routing_3" model="mrp.routing">
<field name="name">Assemble Furniture</field>
<field
name="operation_ids"
eval="[(6, 0, [ref('mrp_routing_workcenter_5')])]"
/>
</record>
</data>
</odoo>

View File

@@ -1,18 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="mrp_bom_form_view" model="ir.ui.view">
<field name="name">mrp.bom.form.view</field>
<field name="model">mrp.bom</field>
<field name="inherit_id" ref="mrp.mrp_bom_form_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='operation_ids']" position="before">
<label for="routing_id" />
<field name="routing_id" />
</xpath>
</field>
</record>
<record id="mrp_bom_form_view" model="ir.ui.view">
<field name="name">mrp.bom.form.view</field>
<field name="model">mrp.bom</field>
<field name="inherit_id" ref="mrp.mrp_bom_form_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='operation_ids']" position="before">
<label for="routing_id" />
<field name="routing_id" />
</xpath>
</field>
</record>
</data>
</odoo>

View File

@@ -1,139 +1,137 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="mrp_routing_form_view" model="ir.ui.view">
<field name="name">mrp.routing.form</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<form string="Routing">
<sheet>
<div class="oe_button_box" name="button_box">
</div>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title">
<h1>
<field name="code" />
</h1>
</div>
<record id="mrp_routing_form_view" model="ir.ui.view">
<field name="name">mrp.routing.form</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<form string="Routing">
<sheet>
<div class="oe_button_box" name="button_box">
</div>
<widget
name="web_ribbon"
title="Archived"
bg_color="bg-danger"
attrs="{'invisible': [('active', '=', True)]}"
/>
<div class="oe_title">
<h1>
<field name="code" />
</h1>
</div>
<group>
<group>
<group>
<field name="name" />
<field name="active" invisible="1" />
</group>
<group>
<field
name="company_id"
options="{'no_create': True}"
groups="base.group_multi_company"
/>
</group>
<field name="name" />
<field name="active" invisible="1" />
</group>
<notebook>
<page string="Work Center Operations">
<field
name="operation_ids"
context="{'default_routing_id': id}"
/>
</page>
<page string="Notes">
<field name="note" />
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<group>
<field
name="company_id"
options="{'no_create': True}"
groups="base.group_multi_company"
/>
</group>
</group>
<notebook>
<page string="Work Center Operations">
<field
name="operation_ids"
context="{'default_routing_id': id}"
/>
</page>
<page string="Notes">
<field name="note" />
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="mrp_routing_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.tree</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<tree string="Routing">
<field name="code" />
<field name="name" />
<field name="active" invisible="1" />
<field name="company_id" groups="base.group_multi_company" />
</tree>
</field>
</record>
<record id="mrp_routing_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.tree</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<tree>
<field name="code" />
<field name="name" />
<field name="active" invisible="1" />
<field name="company_id" groups="base.group_multi_company" />
</tree>
</field>
</record>
<record id="mrp_routing_kanban_view" model="ir.ui.view">
<field name="name">mrp.routing.kanban</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<kanban class="o_kanban_mobile">
<field name="code" />
<field name="name" />
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="o_kanban_record_top">
<div class="o_kanban_record_headings mt4">
<strong class="o_kanban_record_title"><span><t
t-esc="record.name.value"
/></span></strong>
</div>
<span class="badge badge-pill"><field
name="code"
/></span>
<record id="mrp_routing_kanban_view" model="ir.ui.view">
<field name="name">mrp.routing.kanban</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<kanban class="o_kanban_mobile">
<field name="code" />
<field name="name" />
<templates>
<t t-name="kanban-box">
<div t-attf-class="oe_kanban_card oe_kanban_global_click">
<div class="o_kanban_record_top">
<div class="o_kanban_record_headings mt4">
<strong class="o_kanban_record_title"><span><t
t-esc="record.name.value"
/></span></strong>
</div>
<span class="badge badge-pill"><field
name="code"
/></span>
</div>
</t>
</templates>
</kanban>
</field>
</record>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="mrp_routing_search_view" model="ir.ui.view">
<field name="name">mrp.routing.search</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<search string="Routing">
<field
name="name"
string="Routing"
filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]"
/>
<filter
name="inactive"
string="Archived"
domain="[('active', '=', False)]"
/>
</search>
</field>
</record>
<record id="mrp_routing_search_view" model="ir.ui.view">
<field name="name">mrp.routing.search</field>
<field name="model">mrp.routing</field>
<field name="arch" type="xml">
<search string="Routing">
<field
name="name"
string="Routing"
filter_domain="['|', ('name', 'ilike', self), ('code', 'ilike', self)]"
/>
<filter
name="inactive"
string="Archived"
domain="[('active', '=', False)]"
/>
</search>
</field>
</record>
<record id="mrp_routing_action" model="ir.actions.act_window">
<field name="name">Routings</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">mrp.routing</field>
<field name="view_mode">tree,kanban,form</field>
<field name="view_id" ref="mrp_routing_tree_view" />
<field name="search_view_id" ref="mrp_routing_search_view" />
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a new routing
</p><p>
Routings define the successive operations that need to be
done to realize a Manufacturing Order. Each operation from
a Routing is done at a specific Work Center and has a specific duration.
</p>
</field>
</record>
<record id="mrp_routing_action" model="ir.actions.act_window">
<field name="name">Routings</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">mrp.routing</field>
<field name="view_mode">tree,kanban,form</field>
<field name="view_id" ref="mrp_routing_tree_view" />
<field name="search_view_id" ref="mrp_routing_search_view" />
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a new routing
</p><p>
Routings define the successive operations that need to be
done to realize a Manufacturing Order. Each operation from
a Routing is done at a specific Work Center and has a specific duration.
</p>
</field>
</record>
<menuitem
id="menu_mrp_routing_action"
action="mrp_routing_action"
parent="mrp.menu_mrp_bom"
groups="mrp.group_mrp_routings"
sequence="50"
/>
<menuitem
id="menu_mrp_routing_action"
action="mrp_routing_action"
parent="mrp.menu_mrp_bom"
groups="mrp.group_mrp_routings"
sequence="50"
/>
</data>
</odoo>

View File

@@ -1,143 +1,136 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="mrp_routing_workcenter_template_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.tree</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<tree string="Template Routing Work Centers">
<field name="sequence" widget="handle" />
<field name="name" />
<field name="workcenter_id" />
<field name="routing_ids" widget="many2many_tags" />
</tree>
</field>
</record>
<record id="mrp_routing_workcenter_template_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.tree</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<tree>
<field name="sequence" widget="handle" />
<field name="name" />
<field name="workcenter_id" />
<field name="routing_ids" widget="many2many_tags" />
</tree>
</field>
</record>
<record id="mrp_routing_workcenter_template_form_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.form</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<form string="Template Routing Work Centers">
<sheet>
<group>
<group name="description">
<field name="name" />
<record id="mrp_routing_workcenter_template_form_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.form</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<form string="Template Routing Work Centers">
<sheet>
<group>
<group name="description">
<field name="name" />
<field
name="workcenter_id"
context="{'default_company_id': company_id}"
/>
<field name="sequence" groups="base.group_no_one" />
<field name="on_template_change" />
</group><group name="workorder">
<field name="time_mode" widget="radio" />
<label
for="time_mode_batch"
attrs="{'invisible': [('time_mode', '=', 'manual')]}"
/>
<div attrs="{'invisible': [('time_mode', '=', 'manual')]}">
last
<field name="time_mode_batch" class="oe_inline" />
work orders
</div>
<label
for="time_cycle_manual"
attrs="{'invisible': [('time_mode', '=', 'auto')]}"
string="Default Duration"
/>
<div attrs="{'invisible': [('time_mode', '=', 'auto')]}">
<field
name="workcenter_id"
context="{'default_company_id': company_id}"
/>
<field name="sequence" groups="base.group_no_one" />
<field name="on_template_change" />
</group><group name="workorder">
<field name="time_mode" widget="radio" />
<label
for="time_mode_batch"
attrs="{'invisible': [('time_mode', '=', 'manual')]}"
/>
<div
attrs="{'invisible': [('time_mode', '=', 'manual')]}"
>
last
<field name="time_mode_batch" class="oe_inline" />
work orders
</div>
<label
for="time_cycle_manual"
attrs="{'invisible': [('time_mode', '=', 'auto')]}"
string="Default Duration"
/>
<div
attrs="{'invisible': [('time_mode', '=', 'auto')]}"
>
<field
name="time_cycle_manual"
widget="float_time"
class="oe_inline"
/> minutes
</div>
name="time_cycle_manual"
widget="float_time"
class="oe_inline"
/> minutes
</div>
<field
name="company_id"
groups="base.group_multi_company"
/>
</group>
</group>
<notebook>
<page string="Work Sheet" name="worksheet">
<group>
<field name="worksheet_type" widget="radio" />
<field
name="company_id"
groups="base.group_multi_company"
name="worksheet"
help="Upload your PDF file."
widget="pdf_viewer"
attrs="{'invisible': [('worksheet_type', '!=', 'pdf')], 'required': [('worksheet_type', '=', 'pdf')]}"
/>
<field
name="worksheet_google_slide"
placeholder="Google Slide Link"
widget="embed_viewer"
attrs="{'invisible': [('worksheet_type', '!=', 'google_slide')], 'required': [('worksheet_type', '=', 'google_slide')]}"
/>
<field
name="note"
attrs="{'invisible': [('worksheet_type', '!=', 'text')]}"
/>
</group>
</group>
<notebook>
<page string="Work Sheet" name="worksheet">
<group>
<field name="worksheet_type" widget="radio" />
<field
name="worksheet"
help="Upload your PDF file."
widget="pdf_viewer"
attrs="{'invisible': [('worksheet_type', '!=', 'pdf')], 'required': [('worksheet_type', '=', 'pdf')]}"
/>
<field
name="worksheet_google_slide"
placeholder="Google Slide Link"
widget="embed_viewer"
attrs="{'invisible': [('worksheet_type', '!=', 'google_slide')], 'required': [('worksheet_type', '=', 'google_slide')]}"
/>
<field
name="note"
attrs="{'invisible': [('worksheet_type', '!=', 'text')]}"
/>
</group>
</page>
<page string="Routings" name="routings">
<field name="routing_ids" />
</page>
</notebook>
</sheet>
</form>
</field>
</record>
</page>
<page string="Routings" name="routings">
<field name="routing_ids" />
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="mrp_routing_workcenter_template_search_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.search</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<search string="Template Operations">
<field name="name" />
<field name="workcenter_id" />
<field name="routing_ids" />
<filter
name="group_by_workcenter"
string="Workcenter"
context="{'group_by':'workcenter_id'}"
/>
</search>
</field>
</record>
<record id="mrp_routing_workcenter_template_search_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.template.search</field>
<field name="model">mrp.routing.workcenter.template</field>
<field name="arch" type="xml">
<search string="Template Operations">
<field name="name" />
<field name="workcenter_id" />
<field name="routing_ids" />
<filter
name="group_by_workcenter"
string="Workcenter"
context="{'group_by':'workcenter_id'}"
/>
</search>
</field>
</record>
<record
id="action_mrp_routing_workcenter_template_tree_view"
model="ir.actions.act_window"
>
<field name="name">Template Operations</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">mrp.routing.workcenter.template</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="mrp_routing_workcenter_template_tree_view" />
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a new template operation
</p><p>
Template Operation can be used to make template for operations related to bill of materials.
</p>
</field>
<field name="domain">[]</field>
</record>
<record
id="action_mrp_routing_workcenter_template_tree_view"
model="ir.actions.act_window"
>
<field name="name">Template Operations</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">mrp.routing.workcenter.template</field>
<field name="view_mode">tree,form</field>
<field name="view_id" ref="mrp_routing_workcenter_template_tree_view" />
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Create a new template operation
</p><p>
Template Operation can be used to make template for operations related to bill of materials.
</p>
</field>
<field name="domain">[]</field>
</record>
<menuitem
id="menu_action_mrp_routing_workcenter_template_tree_view"
action="action_mrp_routing_workcenter_template_tree_view"
parent="mrp.menu_mrp_configuration"
groups="mrp.group_mrp_routings"
sequence="100"
/>
<menuitem
id="menu_action_mrp_routing_workcenter_template_tree_view"
action="action_mrp_routing_workcenter_template_tree_view"
parent="mrp.menu_mrp_configuration"
groups="mrp.group_mrp_routings"
sequence="100"
/>
</data>
</odoo>

View File

@@ -1,43 +1,41 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="mrp_routing_workcenter_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.tree</field>
<field name="model">mrp.routing.workcenter</field>
<field name="inherit_id" ref="mrp.mrp_routing_workcenter_tree_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='workcenter_id']" position="before">
<field name="template_id" force_save="1" />
<field name="on_template_change" />
<!--FIXME: Can we skip this invisible files to get correct data on onchange?-->
<field name="time_mode" invisible="1" />
<field name="time_mode_batch" invisible="1" />
<field name="time_cycle_manual" invisible="1" />
<field name="company_id" invisible="1" />
<field name="worksheet" invisible="1" />
<field name="worksheet_type" invisible="1" />
<field name="worksheet_google_slide" invisible="1" />
<field name="note" invisible="1" />
</xpath>
</field>
</record>
<record id="mrp_routing_workcenter_tree_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.tree</field>
<field name="model">mrp.routing.workcenter</field>
<field name="inherit_id" ref="mrp.mrp_routing_workcenter_tree_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='workcenter_id']" position="before">
<field name="template_id" force_save="1" />
<field name="on_template_change" />
<!--FIXME: Can we skip this invisible files to get correct data on onchange?-->
<field name="time_mode" invisible="1" />
<field name="time_mode_batch" invisible="1" />
<field name="time_cycle_manual" invisible="1" />
<field name="company_id" invisible="1" />
<field name="worksheet" invisible="1" />
<field name="worksheet_type" invisible="1" />
<field name="worksheet_google_slide" invisible="1" />
<field name="note" invisible="1" />
</xpath>
</field>
</record>
<record id="mrp_routing_workcenter_form_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.form</field>
<field name="model">mrp.routing.workcenter</field>
<field name="inherit_id" ref="mrp.mrp_routing_workcenter_form_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="before">
<field name="template_id" />
<field
name="on_template_change"
attrs="{'invisible': [('template_id', '=', False)]}"
/>
</xpath>
</field>
</record>
<record id="mrp_routing_workcenter_form_view" model="ir.ui.view">
<field name="name">mrp.routing.workcenter.form</field>
<field name="model">mrp.routing.workcenter</field>
<field name="inherit_id" ref="mrp.mrp_routing_workcenter_form_view" />
<field name="arch" type="xml">
<xpath expr="//field[@name='name']" position="before">
<field name="template_id" />
<field
name="on_template_change"
attrs="{'invisible': [('template_id', '=', False)]}"
/>
</xpath>
</field>
</record>
</data>
</odoo>

View File

@@ -1,24 +1,22 @@
<?xml version="1.0" ?>
<odoo>
<data noupdate="1">
<record id="route_subcontracting_dropshipping" model='stock.location.route'>
<field name="name">Dropship Subcontractor on Order</field>
<field name="sequence">5</field>
<field name="company_id" />
<field name="product_selectable" eval="True" />
</record>
<odoo noupdate="1">
<record id="route_subcontracting_dropshipping" model='stock.location.route'>
<field name="name">Dropship Subcontractor on Order</field>
<field name="sequence">5</field>
<field name="company_id" />
<field name="product_selectable" eval="True" />
</record>
<function
model="res.company"
name="create_missing_subcontracting_dropshipping_rules"
<function
model="res.company"
name="create_missing_subcontracting_dropshipping_rules"
/>
<function model="stock.warehouse" name="write">
<value
model="stock.warehouse"
eval="obj().env['stock.warehouse'].search([]).ids"
/>
<function model="stock.warehouse" name="write">
<value
model="stock.warehouse"
eval="obj().env['stock.warehouse'].search([]).ids"
/>
<value eval="{'subcontracting_dropshipping_to_resupply': True}" />
</function>
</data>
<value eval="{'subcontracting_dropshipping_to_resupply': True}" />
</function>
</odoo>

View File

@@ -31,7 +31,7 @@
<field name="name">mrp.tag.view.tree</field>
<field name="model">mrp.tag</field>
<field name="arch" type="xml">
<tree string="Tags" editable="bottom">
<tree editable="bottom">
<field name="name" />
<field name="color" widget="color_picker" />
</tree>

View File

@@ -6,27 +6,21 @@
Copyright 2017 Simone Rubino - Agile Business Group
Copyright 2021 Tecnativa - Carlos Roca
License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). -->
<odoo>
<data noupdate="1">
<record id="qc_test_template_category_generic" model="qc.test.category">
<field name="name">Generic</field>
</record>
<record id="qc_test_template_category_referenced" model="qc.test.category">
<field name="name">Referenced</field>
</record>
<record
forcecreate="True"
id="decimal_quality_control"
model="decimal.precision"
>
<field name="name">Quality Control</field>
<field name="digits">5</field>
</record>
<record id="seq_qc_inspection" model="ir.sequence">
<field name="name">Quality inspection</field>
<field name="code">qc.inspection</field>
<field name="prefix">QC-</field>
<field name="padding">6</field>
</record>
</data>
<odoo noupdate="1">
<record id="qc_test_template_category_generic" model="qc.test.category">
<field name="name">Generic</field>
</record>
<record id="qc_test_template_category_referenced" model="qc.test.category">
<field name="name">Referenced</field>
</record>
<record forcecreate="True" id="decimal_quality_control" model="decimal.precision">
<field name="name">Quality Control</field>
<field name="digits">5</field>
</record>
<record id="seq_qc_inspection" model="ir.sequence">
<field name="name">Quality inspection</field>
<field name="code">qc.inspection</field>
<field name="prefix">QC-</field>
<field name="padding">6</field>
</record>
</odoo>

View File

@@ -1,34 +1,32 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<data noupdate="1">
<record model="qc.test" id="qc_test_1">
<field name="name">Generic Test (demo)</field>
<field name="type">generic</field>
<field name="active" eval="True" />
<field name="category" ref="qc_test_template_category_generic" />
</record>
<record model="qc.test.question" id="qc_test_question_1">
<field name="name">Overall quality</field>
<field name="test" ref="qc_test_1" />
<field name="type">qualitative</field>
</record>
<record model="qc.test.question.value" id="qc_test_question_value_1">
<field name="name">Good</field>
<field name="ok" eval="True" />
<field name="test_line" ref="qc_test_question_1" />
</record>
<record model="qc.test.question.value" id="qc_test_question_value_2">
<field name="name">Bad</field>
<field name="ok" eval="False" />
<field name="test_line" ref="qc_test_question_1" />
</record>
<record model="qc.test.question" id="qc_test_question_2">
<field name="name">Size</field>
<field name="test" ref="qc_test_1" />
<field name="type">quantitative</field>
<field name="min_value" eval="1.0" />
<field name="max_value" eval="10.0" />
<field name="uom_id" ref="uom.product_uom_unit" />
</record>
</data>
<odoo noupdate="1">
<record model="qc.test" id="qc_test_1">
<field name="name">Generic Test (demo)</field>
<field name="type">generic</field>
<field name="active" eval="True" />
<field name="category" ref="qc_test_template_category_generic" />
</record>
<record model="qc.test.question" id="qc_test_question_1">
<field name="name">Overall quality</field>
<field name="test" ref="qc_test_1" />
<field name="type">qualitative</field>
</record>
<record model="qc.test.question.value" id="qc_test_question_value_1">
<field name="name">Good</field>
<field name="ok" eval="True" />
<field name="test_line" ref="qc_test_question_1" />
</record>
<record model="qc.test.question.value" id="qc_test_question_value_2">
<field name="name">Bad</field>
<field name="ok" eval="False" />
<field name="test_line" ref="qc_test_question_1" />
</record>
<record model="qc.test.question" id="qc_test_question_2">
<field name="name">Size</field>
<field name="test" ref="qc_test_1" />
<field name="type">quantitative</field>
<field name="min_value" eval="1.0" />
<field name="max_value" eval="10.0" />
<field name="uom_id" ref="uom.product_uom_unit" />
</record>
</odoo>

View File

@@ -15,7 +15,7 @@
<group name="first" position="after">
<group name="qc" string="Quality control">
<field name="qc_triggers" nolabel="1">
<tree string="Quality control triggers" editable="bottom">
<tree editable="bottom">
<field
name="trigger"
options="{'no_create': True, 'no_edit': True, 'no_open': True}"

View File

@@ -18,7 +18,7 @@
<page name="inventory" position="inside">
<group name="qc" string="Quality control">
<field name="qc_triggers" nolabel="1">
<tree string="Quality control triggers" editable="bottom">
<tree editable="bottom">
<field
name="trigger"
options="{'no_create': True, 'no_edit': True, 'no_open': True}"

View File

@@ -86,12 +86,7 @@
<notebook>
<page string="Questions">
<field name="inspection_lines" nolabel="1">
<tree
string="Inspection lines"
editable="top"
delete="false"
create="false"
>
<tree editable="top" delete="false" create="false">
<field name="name" />
<field name="question_type" />
<field name="possible_ql_values" invisible="1" />
@@ -141,7 +136,7 @@
<field name="name">qc.inspection.tree</field>
<field name="model">qc.inspection</field>
<field name="arch" type="xml">
<tree string="Inspections">
<tree>
<field name="name" />
<field name="user" />
<field name="test" />
@@ -241,7 +236,6 @@
<tree
decoration-danger="success==False"
decoration-info="success==True"
string="Inspection lines"
delete="false"
create="false"
>

View File

@@ -10,7 +10,7 @@
<field name="name">qc.test.category.tree</field>
<field name="model">qc.test.category</field>
<field name="arch" type="xml">
<tree string="Test categories" editable="bottom">
<tree editable="bottom">
<field name="complete_name" />
<field name="name" />
<field name="parent_id" />

View File

@@ -35,7 +35,7 @@
</group>
</group>
<field name="test_lines" nolabel="1">
<tree string="Questions">
<tree>
<field name="sequence" widget="handle" />
<field name="name" />
<field name="type" />
@@ -57,7 +57,7 @@
<field name="name">qc.test.tree</field>
<field name="model">qc.test</field>
<field name="arch" type="xml">
<tree string="Tests">
<tree>
<field name="name" />
<field name="category" />
<field name="type" />
@@ -95,7 +95,7 @@
nolabel="1"
attrs="{'required': [('type','=','qualitative')]}"
>
<tree string="Question value" editable="bottom">
<tree editable="bottom">
<field name="name" />
<field name="ok" />
</tree>

View File

@@ -26,7 +26,7 @@
<field name="name">qc.trigger.tree</field>
<field name="model">qc.trigger</field>
<field name="arch" type="xml">
<tree string="Quality control triggers" editable="bottom">
<tree editable="bottom">
<field name="name" />
<field name="company_id" groups="base.group_multi_company" />
<field name="partner_selectable" />

View File

@@ -1,84 +1,76 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="view_repair_order_form" model="ir.ui.view">
<field name="name">repair.order.form.view</field>
<field name="model">repair.order</field>
<field name="inherit_id" ref="repair.view_repair_order_form" />
<field name="arch" type="xml">
<xpath
expr="//button[@name='action_created_invoice']"
position="before"
<record id="view_repair_order_form" model="ir.ui.view">
<field name="name">repair.order.form.view</field>
<field name="model">repair.order</field>
<field name="inherit_id" ref="repair.view_repair_order_form" />
<field name="arch" type="xml">
<xpath expr="//button[@name='action_created_invoice']" position="before">
<button
name="action_show_sales_order"
type="object"
class="oe_stat_button"
icon="fa-pencil-square-o"
attrs="{'invisible': [('sale_order_count', '=', 0.0)]}"
groups="sales_team.group_sale_salesman"
>
<button
name="action_show_sales_order"
type="object"
class="oe_stat_button"
icon="fa-pencil-square-o"
attrs="{'invisible': [('sale_order_count', '=', 0.0)]}"
groups="sales_team.group_sale_salesman"
>
<field
name="sale_order_count"
widget="statinfo"
string="Sale Order(s)"
/>
</button>
</xpath>
<xpath expr="//field[@name='invoice_state']" position="after">
<field name="create_sale_order" invisible="1" />
</xpath>
<xpath
expr="//button[@name='action_repair_start']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': ['|', ('create_sale_order', '=', True), '&amp;', ('state','!=','confirmed'), '!', '&amp;', ('state','=','ready'), ('invoice_method','=','b4repair')]}</attribute>
</xpath>
<xpath expr="//button[@name='action_repair_start']" position="after">
<button
name="action_create_sale_order"
type="object"
string="Create Sales Order"
attrs="{'invisible': ['|', '|', ('create_sale_order', '=', False), ('sale_order_count', '&gt;', 0), ('state','!=','confirmed')]}"
class="oe_highlight"
<field
name="sale_order_count"
widget="statinfo"
string="Sale Order(s)"
/>
</xpath>
<xpath expr="//field[@name='invoice_method']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath expr="//field[@name='location_id']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='operations']//tree//field[@name='type']"
position="attributes"
>
<attribute
name="attrs"
>{'column_invisible': [('parent.create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='operations']//tree//field[@name='lot_id']"
position="attributes"
>
<attribute
name="attrs"
>{'column_invisible': [('parent.create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath expr="//field[@name='partner_id']" position="attributes">
<attribute
name="attrs"
>{'required': ['|', ('create_sale_order', '=', True), ('invoice_method','!=','none')]}</attribute>
</xpath>
</field>
</record>
</button>
</xpath>
<xpath expr="//field[@name='invoice_state']" position="after">
<field name="create_sale_order" invisible="1" />
</xpath>
<xpath expr="//button[@name='action_repair_start']" position="attributes">
<attribute
name="attrs"
>{'invisible': ['|', ('create_sale_order', '=', True), '&amp;', ('state','!=','confirmed'), '!', '&amp;', ('state','=','ready'), ('invoice_method','=','b4repair')]}</attribute>
</xpath>
<xpath expr="//button[@name='action_repair_start']" position="after">
<button
name="action_create_sale_order"
type="object"
string="Create Sales Order"
attrs="{'invisible': ['|', '|', ('create_sale_order', '=', False), ('sale_order_count', '&gt;', 0), ('state','!=','confirmed')]}"
class="oe_highlight"
/>
</xpath>
<xpath expr="//field[@name='invoice_method']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath expr="//field[@name='location_id']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='operations']//tree//field[@name='type']"
position="attributes"
>
<attribute
name="attrs"
>{'column_invisible': [('parent.create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='operations']//tree//field[@name='lot_id']"
position="attributes"
>
<attribute
name="attrs"
>{'column_invisible': [('parent.create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath expr="//field[@name='partner_id']" position="attributes">
<attribute
name="attrs"
>{'required': ['|', ('create_sale_order', '=', True), ('invoice_method','!=','none')]}</attribute>
</xpath>
</field>
</record>
</data>
</odoo>

View File

@@ -1,54 +1,52 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="view_repair_type_form" model="ir.ui.view">
<field name="name">repair.type.form.view</field>
<field name="model">repair.type</field>
<field name="inherit_id" ref="repair_type.repair_type_view_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='source_location_id']" position="before">
<field name="create_sale_order" />
</xpath>
<xpath expr="//field[@name='source_location_id']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='source_location_add_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='destination_location_add_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='source_location_remove_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='destination_location_remove_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
</field>
</record>
<record id="view_repair_type_form" model="ir.ui.view">
<field name="name">repair.type.form.view</field>
<field name="model">repair.type</field>
<field name="inherit_id" ref="repair_type.repair_type_view_form" />
<field name="arch" type="xml">
<xpath expr="//field[@name='source_location_id']" position="before">
<field name="create_sale_order" />
</xpath>
<xpath expr="//field[@name='source_location_id']" position="attributes">
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='source_location_add_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='destination_location_add_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='source_location_remove_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
<xpath
expr="//field[@name='destination_location_remove_part_id']"
position="attributes"
>
<attribute
name="attrs"
>{'invisible': [('create_sale_order', '=', True)]}</attribute>
</xpath>
</field>
</record>
</data>
</odoo>

View File

@@ -1,29 +1,27 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<data>
<record id="view_sale_order_form" model="ir.ui.view">
<field name="name">sale.order.form.view</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form" />
<field name="arch" type="xml">
<xpath expr="//button[@name='action_view_invoice']" position="before">
<button
name="action_show_repair_order"
type="object"
class="oe_stat_button"
icon="fa-pencil-square-o"
attrs="{'invisible': [('repair_order_count', '=', 0.0)]}"
>
<field
name="repair_order_count"
widget="statinfo"
string="Repair Order(s)"
/>
</button>
</xpath>
</field>
</record>
<record id="view_sale_order_form" model="ir.ui.view">
<field name="name">sale.order.form.view</field>
<field name="model">sale.order</field>
<field name="inherit_id" ref="sale.view_order_form" />
<field name="arch" type="xml">
<xpath expr="//button[@name='action_view_invoice']" position="before">
<button
name="action_show_repair_order"
type="object"
class="oe_stat_button"
icon="fa-pencil-square-o"
attrs="{'invisible': [('repair_order_count', '=', 0.0)]}"
>
<field
name="repair_order_count"
widget="statinfo"
string="Repair Order(s)"
/>
</button>
</xpath>
</field>
</record>
</data>
</odoo>