132 lines
6.9 KiB
XML
132 lines
6.9 KiB
XML
<?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="Work Order"/>
|
|
</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="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 available.</strong>
|
|
Drop the PDF into the <em>Thickness Report
|
|
(Fischerscope)</em> tab below, or upload it on the
|
|
linked QC check, before issuing. Thickness Report
|
|
certs cannot issue without thickness data.
|
|
</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">
|
|
<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>
|
|
<separator string="Upload Fischerscope PDF here"/>
|
|
<group>
|
|
<field name="x_fc_local_thickness_pdf"
|
|
filename="x_fc_local_thickness_pdf_filename"
|
|
readonly="state != 'draft'"/>
|
|
<field name="x_fc_local_thickness_pdf_filename"
|
|
invisible="1"/>
|
|
</group>
|
|
<div class="text-muted"
|
|
invisible="x_fc_thickness_status != 'none'">
|
|
<p>
|
|
No Fischerscope thickness PDF has been
|
|
uploaded yet. The CoC will be issued without
|
|
an appended thickness report. Either drop the
|
|
PDF into the upload field above, OR upload it
|
|
on the linked QC check and re-open this cert.
|
|
</p>
|
|
</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 will be merged into
|
|
page 2 of the CoC.
|
|
</p>
|
|
</div>
|
|
</page>
|
|
</xpath>
|
|
|
|
</field>
|
|
</record>
|
|
|
|
</odoo>
|