feat(fusion_plating_shopfloor): Preferences Set/Change PIN + Manager Reset button (P6.1.7)
Two view inheritances on res.users:
(a) Preferences form — adds a 'Tablet PIN' group with a 'Set / Change
Tablet PIN' button that triggers action_open_tablet_pin_setup → the
fp_tablet_pin_setup OWL client action (Phase 6.2). Shows PIN Last
Set as read-only context.
(b) Standard res.users form — header button 'Reset Tablet PIN' visible
only to the fusion_plating manager group; hidden when no PIN is set
(via the set_date invisible field reference). Confirms before clearing.
Calls the clear_tablet_pin method from the model.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -47,6 +47,7 @@ Copyright (c) 2026 Nexa Systems Inc. All rights reserved.
|
||||
'data/fp_cron_data.xml',
|
||||
'data/fp_tablet_config_data.xml',
|
||||
'views/fp_shopfloor_station_views.xml',
|
||||
'views/res_users_views.xml',
|
||||
'views/fp_bake_oven_views.xml',
|
||||
'views/fp_bake_window_views.xml',
|
||||
'views/fp_first_piece_gate_views.xml',
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2026 Nexa Systems Inc.
|
||||
License OPL-1 (Odoo Proprietary License v1.0)
|
||||
|
||||
Phase 6 tablet PIN gate — surfaces:
|
||||
(a) self-service "Set/Change PIN" on the user's Preferences form
|
||||
(b) manager-only "Reset Tablet PIN" header button on res.users form
|
||||
-->
|
||||
<odoo>
|
||||
|
||||
<!-- =================================================================
|
||||
(a) Preferences form — Set/Change Tablet PIN
|
||||
The actual modal is OWL-side (FpPinSetup, Phase 6.2). Here we
|
||||
just surface a status indicator + the button under a group.
|
||||
================================================================= -->
|
||||
<record id="view_users_form_preferences_tablet_pin" model="ir.ui.view">
|
||||
<field name="name">res.users.preferences.tablet.pin</field>
|
||||
<field name="model">res.users</field>
|
||||
<field name="inherit_id" ref="base.view_users_form_simple_modif"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//sheet" position="inside">
|
||||
<group string="Tablet PIN" name="fp_tablet_pin_group">
|
||||
<field name="x_fc_tablet_pin_set_date" readonly="1"
|
||||
string="PIN Last Set"/>
|
||||
<button name="action_open_tablet_pin_setup"
|
||||
type="object"
|
||||
string="Set / Change Tablet PIN"
|
||||
class="btn-secondary"
|
||||
icon="fa-key"/>
|
||||
</group>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- =================================================================
|
||||
(b) res.users form — Manager-only "Reset Tablet PIN" header
|
||||
================================================================= -->
|
||||
<record id="view_users_form_reset_tablet_pin" model="ir.ui.view">
|
||||
<field name="name">res.users.form.reset.tablet.pin</field>
|
||||
<field name="model">res.users</field>
|
||||
<field name="inherit_id" ref="base.view_users_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//header" position="inside">
|
||||
<button name="clear_tablet_pin"
|
||||
type="object"
|
||||
string="Reset Tablet PIN"
|
||||
class="btn-warning"
|
||||
icon="fa-eraser"
|
||||
groups="fusion_plating.group_fusion_plating_manager"
|
||||
invisible="not x_fc_tablet_pin_set_date"
|
||||
confirm="Reset this user's tablet PIN? They'll need to set a new one on their next unlock."/>
|
||||
<field name="x_fc_tablet_pin_set_date" invisible="1"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user