changes
This commit is contained in:
@@ -0,0 +1,133 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
|
||||
<!-- ============================================================ -->
|
||||
<!-- S19 — Surface Fischerscope thickness PDF on the cert form -->
|
||||
<!-- ============================================================ -->
|
||||
<!-- Without this extension the operator has no way to know, -->
|
||||
<!-- before clicking Issue, whether the QC's Fischerscope PDF -->
|
||||
<!-- will be appended to the CoC. After Issue, no indicator that -->
|
||||
<!-- the merged PDF actually contains it. This extension fixes -->
|
||||
<!-- both gaps with a banner + smart button + clickable file. -->
|
||||
<record id="fp_certificate_view_form_jobs"
|
||||
model="ir.ui.view">
|
||||
<field name="name">fp.certificate.form.inherit.jobs</field>
|
||||
<field name="model">fp.certificate</field>
|
||||
<field name="inherit_id"
|
||||
ref="fusion_plating_certificates.fp_certificate_view_form"/>
|
||||
<field name="arch" type="xml">
|
||||
|
||||
<!-- 1. Smart button: linked Plating Job, and a separate -->
|
||||
<!-- smart button for the Fischerscope-source QC. -->
|
||||
<xpath expr="//div[@name='button_box']" position="inside">
|
||||
<button name="action_open_job"
|
||||
type="object"
|
||||
class="oe_stat_button"
|
||||
icon="fa-cogs"
|
||||
invisible="not x_fc_job_id">
|
||||
<field name="x_fc_job_id" widget="statinfo"
|
||||
string="Plating Job"/>
|
||||
</button>
|
||||
<button name="action_view_thickness_qc"
|
||||
type="object"
|
||||
class="oe_stat_button"
|
||||
icon="fa-microscope"
|
||||
invisible="not x_fc_thickness_qc_id">
|
||||
<div class="o_field_widget o_stat_info">
|
||||
<span class="o_stat_text">
|
||||
<field name="x_fc_thickness_status" widget="badge"
|
||||
decoration-info="x_fc_thickness_status == 'pending'"
|
||||
decoration-success="x_fc_thickness_status == 'merged'"/>
|
||||
</span>
|
||||
<span class="o_stat_text">Fischerscope</span>
|
||||
</div>
|
||||
</button>
|
||||
</xpath>
|
||||
|
||||
<!-- 2. Banner row above the title — explicit, can't miss. -->
|
||||
<!-- Three states with distinct alert classes. -->
|
||||
<xpath expr="//sheet/div[@class='oe_title']" position="before">
|
||||
<div class="alert alert-info" role="alert"
|
||||
invisible="x_fc_thickness_status != 'pending'">
|
||||
<i class="fa fa-info-circle" title="Info"
|
||||
aria-label="Info"/>
|
||||
<strong> Fischerscope thickness PDF is on file.</strong>
|
||||
It will be automatically appended as page 2 of
|
||||
the CoC when you click <strong>Issue</strong>.
|
||||
</div>
|
||||
<div class="alert alert-success" role="alert"
|
||||
invisible="x_fc_thickness_status != 'merged'">
|
||||
<i class="fa fa-check-circle" title="Merged"
|
||||
aria-label="Merged"/>
|
||||
<strong> Fischerscope thickness report merged.</strong>
|
||||
The issued CoC PDF includes the Fischerscope report
|
||||
as page 2 — open the Certificate PDF tab to verify.
|
||||
</div>
|
||||
<div class="alert alert-warning" role="alert"
|
||||
invisible="not x_fc_job_id or state != 'draft' or x_fc_thickness_status != 'none' or not partner_id"
|
||||
style="margin-top:0;">
|
||||
<i class="fa fa-exclamation-triangle" title="Warning"
|
||||
aria-label="Warning"/>
|
||||
<strong> No Fischerscope PDF on the linked QC.</strong>
|
||||
If this customer expects an XRF report with the CoC,
|
||||
have the operator upload the Fischerscope PDF on the
|
||||
QC check before issuing.
|
||||
</div>
|
||||
</xpath>
|
||||
|
||||
<!-- 3. Add a Thickness Report tab right next to the -->
|
||||
<!-- Certificate PDF tab so operator can preview the -->
|
||||
<!-- Fischerscope file before merging into the cert. -->
|
||||
<xpath expr="//notebook/page[@name='pdf']" position="after">
|
||||
<page string="Thickness Report (Fischerscope)"
|
||||
name="thickness_pdf"
|
||||
invisible="not x_fc_job_id">
|
||||
<group>
|
||||
<field name="x_fc_thickness_status" widget="badge"
|
||||
readonly="1"
|
||||
decoration-muted="x_fc_thickness_status == 'none'"
|
||||
decoration-info="x_fc_thickness_status == 'pending'"
|
||||
decoration-success="x_fc_thickness_status == 'merged'"/>
|
||||
<field name="x_fc_thickness_qc_id" readonly="1"
|
||||
invisible="not x_fc_thickness_qc_id"/>
|
||||
<field name="x_fc_thickness_pdf_id" readonly="1"
|
||||
widget="many2one_binary"
|
||||
invisible="not x_fc_thickness_pdf_id"/>
|
||||
</group>
|
||||
<div class="text-muted"
|
||||
invisible="x_fc_thickness_status != 'none'">
|
||||
<p>
|
||||
No Fischerscope thickness PDF has been
|
||||
uploaded on the linked QC yet. The CoC will
|
||||
be issued without an appended thickness
|
||||
report. To attach one:
|
||||
</p>
|
||||
<ol>
|
||||
<li>Open the linked Plating Job (smart
|
||||
button above)</li>
|
||||
<li>Click into the auto-spawned Quality
|
||||
Check</li>
|
||||
<li>Go to the <em>Thickness Report</em> tab
|
||||
and upload the PDF from the Fischerscope
|
||||
/ XDAL 600 export</li>
|
||||
<li>Pass the QC, then come back here and
|
||||
click Issue</li>
|
||||
</ol>
|
||||
</div>
|
||||
<div class="text-muted"
|
||||
invisible="x_fc_thickness_status != 'pending'">
|
||||
<p>
|
||||
<i class="fa fa-arrow-up" title="Action"
|
||||
aria-label="Action"/>
|
||||
Click <strong>Issue</strong> in the header
|
||||
and the Fischerscope PDF above will be
|
||||
merged into page 2 of the CoC.
|
||||
</p>
|
||||
</div>
|
||||
</page>
|
||||
</xpath>
|
||||
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user