Files
jikimo_sf/stock_barcode/views/stock_picking_views.xml
2024-01-24 17:30:59 +08:00

175 lines
10 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data>
<record id="view_stock_move_line_kanban_inherited" model="ir.ui.view">
<field name="name">stock.move.line.kanban.inherited</field>
<field name="model">stock.move.line</field>
<field name="inherit_id" ref="stock.view_stock_move_line_kanban"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='qty_done']" position="after">
<field name="product_barcode" invisible="1"/>
<field name="location_processed" invisible="1"/>
<field name="result_package_id" invisible="1"/>
<field name="lots_visible" invisible="1"/>
</xpath>
</field>
</record>
<record id="stock_picking_barcode" model="ir.ui.view">
<field name="name">stock.picking.form.view.barcode</field>
<field name="model">stock.picking</field>
<field name="priority">1000</field>
<field name="arch" type="xml">
<form string="Picking Details">
<field name="show_allocation" invisible="1"/>
<field name="company_id" invisible="1"/>
<group>
<button name="action_view_reception_report" string="Allocation" type="object"
context="{'default_picking_ids': [id]}"
class="btn btn-primary o_reception_report" icon="fa-list"
attrs="{'invisible': [('show_allocation', '=', False)]}"
groups="stock.group_reception_report"/>
<field name="partner_id"/>
<field name="scheduled_date" readonly="1"
attrs="{'invisible': [('scheduled_date', '=', False)]}"/>
<field name="origin" readonly="1" attrs="{'invisible': [('origin', '=', False)]}"/>
<field name="state" readonly="1" attrs="{'invisible': [('state', '=', False)]}"/>
<field name="priority" readonly="1" attrs="{'invisible': [('priority', '=', False)]}"/>
<field name="owner_id" readonly="1" attrs="{'invisible': [('owner_id', '=', False)]}"
groups="stock.group_tracking_owner"/>
<field name="company_id" readonly="1" groups="base.group_multi_company"/>
<field name="move_ids" readonly="1" attrs="{'invisible': [('move_ids', '=', False)]}">
<kanban>
<templates>
<t t-name="kanban-box">
<div class="oe_kanban_global_click">
<div class="row">
<div class="col-6 o_kanban_record_title">
<field name="product_id"/>
</div>
<div class="col-6 text-end">
<field name="product_uom_qty"/>
</div>
</div>
<div class="row">
<div class="col-6">
<field name="description_picking"/>
</div>
<div class="col-6 text-end">
<field name="state"/>
</div>
</div>
</div>
</t>
</templates>
</kanban>
</field>
<field name="note" readonly="1" attrs="{'invisible': [('note', '=', False)]}"/>
</group>
<div class="o_barcode_control d-flex fixed-bottom">
<button string="Discard" class="btn btn-secondary o_discard" special="cancel"/>
<button string="Confirm" class="btn btn-primary o_save" special="save"/>
</div>
</form>
</field>
</record>
<record id="open_picking" model="ir.actions.act_window">
<field name="name">Open picking form</field>
<field name="res_model">stock.picking</field>
<field name="view_mode">form</field>
<field name="context">{
'res_id': active_id,
}
</field>
</record>
<record id="picking_view_kanban_inherit_barcode" model="ir.ui.view">
<field name="name">stock.picking.view.kanban.barcode</field>
<field name="model">stock.picking</field>
<field name="inherit_id" ref="stock.stock_picking_kanban"/>
<field name="arch" type="xml">
<!-- Use the form view -->
<xpath expr="//div[hasclass('o_kanban_record_headings')]" position="after">
<button style="padding: 0px 10px;" class="btn btn-link fa fa-desktop" title="Open picking"
name="action_open_picking" type="object"/>
</xpath>
<!-- Use mobile view-->
<xpath expr="//strong[hasclass('o_kanban_record_title')]" position="replace">
<button style="padding: 0px 0px;" class="btn btn-link o_kanban_record_title"
name="action_open_picking_client_action"
type="object">
<span>
<t t-esc="record.name.value"/>
</span>
</button>
</xpath>
</field>
</record>
<record id="view_picking_type_form_inherit_stock_barcode" model="ir.ui.view">
<field name="name">Operation Types</field>
<field name="model">stock.picking.type</field>
<field name="inherit_id" ref="stock.view_picking_type_form"/>
<field name="arch" type="xml">
<xpath expr="//field[@name='warehouse_id']" position="after">
<field name="barcode"/>
</xpath>
</field>
</record>
<record id="stock_barcode_view_picking_type_form" model="ir.ui.view">
<field name="name">Operation Types</field>
<field name="model">stock.picking.type</field>
<field name="inherit_id" ref="stock.view_picking_type_form"/>
<field name="arch" type="xml">
<xpath expr="//sheet//group[@name='first']" position="before">
<notebook>
<page name="general" string="General">
</page>
<page name="barcode_app" string="Barcode App">
<group name="restrict_scan_settings" string="Mandatory Scan">
<field name="restrict_scan_source_location" string="Source Location"
groups="stock.group_stock_multi_locations"
attrs="{'invisible': [('code', '=', 'incoming')]}"/>
<field name="restrict_scan_product" string="Product"/>
<field name="restrict_scan_tracking_number" string="Lot/Serial"
groups="stock.group_production_lot"/>
<field name="restrict_put_in_pack"
groups="stock.group_tracking_lot" string="Put in Pack"/>
<field name="restrict_scan_dest_location" string="Destination Location"
groups="stock.group_stock_multi_locations"
attrs="{'invisible': [('code', '=', 'outgoing')]}"/>
</group>
<field name="show_barcode_validation" invisible="1"/>
<group name="barcode_validation" string="Final Validation"
attrs="{'invisible': [('show_barcode_validation', '=', False)]}">
<!-- show_barcode_validation handles combined groups/invisible complexity -->
<field name="barcode_validation_full"
attrs="{'invisible': [('restrict_scan_product', '=', True)]}"/>
<field name="barcode_validation_all_product_packed"
groups="stock.group_tracking_lot"
attrs="{'invisible': [('restrict_put_in_pack', '!=', 'optional')]}"/>
<field name="barcode_validation_after_dest_location"
groups="stock.group_stock_multi_locations"
attrs="{'invisible': ['|',
('code', '=', 'outgoing'),
('restrict_scan_dest_location', '!=', 'optional'),
]}"/>
</group>
</page>
</notebook>
</xpath>
<xpath expr="//page[@name='general']" position="inside">
<xpath expr="//sheet//group[@name='first']" position="move"/>
</xpath>
<xpath expr="//page[@name='general']" position="inside">
<xpath expr="//sheet//group[@name='second']" position="move"/>
</xpath>
</field>
</record>
</data>
</odoo>