folder rename

This commit is contained in:
gsinghpal
2026-04-16 20:53:53 -04:00
parent 3f3ddcbab4
commit 7c7ef06057
634 changed files with 0 additions and 0 deletions

View File

@@ -0,0 +1,115 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_compliance_event_list" model="ir.ui.view">
<field name="name">fp.compliance.event.list</field>
<field name="model">fusion.plating.compliance.event</field>
<field name="arch" type="xml">
<list string="Compliance Calendar" decoration-danger="state == 'overdue'" decoration-warning="state == 'due'" decoration-success="state == 'done'">
<field name="due_date"/>
<field name="name"/>
<field name="event_type"/>
<field name="facility_id"/>
<field name="permit_id"/>
<field name="regulator_id"/>
<field name="owner_id"/>
<field name="state" widget="badge"/>
</list>
</field>
</record>
<record id="view_fp_compliance_event_form" model="ir.ui.view">
<field name="name">fp.compliance.event.form</field>
<field name="model">fusion.plating.compliance.event</field>
<field name="arch" type="xml">
<form string="Compliance Event">
<header>
<button name="action_mark_done" string="Mark Done" type="object" invisible="state in ('done', 'skipped')" class="oe_highlight"/>
<button name="action_skip" string="Skip" type="object" invisible="state in ('done', 'skipped')"/>
<field name="state" widget="statusbar" statusbar_visible="upcoming,due,overdue,done"/>
</header>
<sheet>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Submit Annual ECA Report"/></h1>
</div>
<group>
<group>
<field name="event_type"/>
<field name="facility_id"/>
<field name="due_date"/>
<field name="owner_id"/>
</group>
<group>
<field name="permit_id"/>
<field name="regulator_id"/>
</group>
</group>
<group string="Notes"><field name="notes" nolabel="1"/></group>
</sheet>
<chatter/>
</form>
</field>
</record>
<record id="view_fp_compliance_event_kanban" model="ir.ui.view">
<field name="name">fp.compliance.event.kanban</field>
<field name="model">fusion.plating.compliance.event</field>
<field name="arch" type="xml">
<kanban class="o_fp_event_kanban" default_group_by="state">
<field name="id"/>
<field name="name"/>
<field name="event_type"/>
<field name="facility_id"/>
<field name="due_date"/>
<field name="owner_id"/>
<field name="state"/>
<templates>
<t t-name="card">
<div class="o_fp_card" t-att-data-state="record.state.raw_value">
<div class="d-flex align-items-start justify-content-between">
<div>
<strong class="o_fp_card_title"><field name="name"/></strong>
<div class="text-muted small"><field name="event_type"/></div>
</div>
<i class="fa fa-calendar text-muted" aria-hidden="true"/>
</div>
<div class="mt-2 small">Due: <field name="due_date"/></div>
<div t-if="record.facility_id.value" class="mt-1 small">
<field name="facility_id"/>
</div>
<div t-if="record.state.raw_value == 'overdue'" class="o_fp_overdue_indicator mt-2">
Overdue
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="view_fp_compliance_event_search" model="ir.ui.view">
<field name="name">fp.compliance.event.search</field>
<field name="model">fusion.plating.compliance.event</field>
<field name="arch" type="xml">
<search string="Compliance Calendar">
<field name="name"/>
<field name="facility_id"/>
<field name="permit_id"/>
<field name="owner_id"/>
<filter string="Overdue" name="overdue" domain="[('state', '=', 'overdue')]"/>
<filter string="Due" name="due" domain="[('state', '=', 'due')]"/>
<filter string="Upcoming" name="upcoming" domain="[('state', '=', 'upcoming')]"/>
<filter string="My Events" name="mine" domain="[('owner_id', '=', uid)]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Type" name="group_type" context="{'group_by': 'event_type'}"/>
<filter string="Status" name="group_state" context="{'group_by': 'state'}"/>
<filter string="Owner" name="group_owner" context="{'group_by': 'owner_id'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_compliance_event" model="ir.actions.act_window">
<field name="name">Compliance Calendar</field>
<field name="res_model">fusion.plating.compliance.event</field>
<field name="view_mode">kanban,list,form</field>
<field name="search_view_id" ref="view_fp_compliance_event_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,80 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_discharge_limit_list" model="ir.ui.view">
<field name="name">fp.discharge.limit.list</field>
<field name="model">fusion.plating.discharge.limit</field>
<field name="arch" type="xml">
<list string="Discharge Limits" editable="bottom">
<field name="name"/>
<field name="parameter"/>
<field name="jurisdiction_id"/>
<field name="discharge_point"/>
<field name="limit_type"/>
<field name="min_value"/>
<field name="limit_value"/>
<field name="uom"/>
<field name="regulation_ref"/>
<field name="active" widget="boolean_toggle"/>
</list>
</field>
</record>
<record id="view_fp_discharge_limit_form" model="ir.ui.view">
<field name="name">fp.discharge.limit.form</field>
<field name="model">fusion.plating.discharge.limit</field>
<field name="arch" type="xml">
<form string="Discharge Limit">
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Nickel (total)"/></h1>
</div>
<group>
<group>
<field name="parameter"/>
<field name="jurisdiction_id"/>
<field name="discharge_point"/>
<field name="regulation_ref"/>
</group>
<group>
<field name="limit_type"/>
<field name="min_value" invisible="limit_type != 'range'"/>
<field name="limit_value"/>
<field name="uom"/>
<field name="active" widget="boolean_toggle"/>
</group>
</group>
<group><field name="reference_url" widget="url"/></group>
<group string="Notes"><field name="notes" nolabel="1"/></group>
</sheet>
</form>
</field>
</record>
<record id="view_fp_discharge_limit_search" model="ir.ui.view">
<field name="name">fp.discharge.limit.search</field>
<field name="model">fusion.plating.discharge.limit</field>
<field name="arch" type="xml">
<search string="Discharge Limits">
<field name="name"/>
<field name="parameter"/>
<field name="jurisdiction_id"/>
<field name="regulation_ref"/>
<filter string="Sanitary Sewer" name="sanitary" domain="[('discharge_point', '=', 'sanitary')]"/>
<filter string="Storm Sewer" name="storm" domain="[('discharge_point', '=', 'storm')]"/>
<filter string="Air Emission" name="air" domain="[('discharge_point', '=', 'air')]"/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
<group>
<filter string="Jurisdiction" name="group_jurisdiction" context="{'group_by': 'jurisdiction_id'}"/>
<filter string="Discharge Point" name="group_dp" context="{'group_by': 'discharge_point'}"/>
<filter string="Parameter" name="group_param" context="{'group_by': 'parameter'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_discharge_limit" model="ir.actions.act_window">
<field name="name">Discharge Limits</field>
<field name="res_model">fusion.plating.discharge.limit</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_discharge_limit_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_discharge_sample_list" model="ir.ui.view">
<field name="name">fp.discharge.sample.list</field>
<field name="model">fusion.plating.discharge.sample</field>
<field name="arch" type="xml">
<list string="Discharge Samples" decoration-danger="worst_status == 'out_of_spec'" decoration-warning="worst_status == 'warning'">
<field name="name"/>
<field name="sample_date"/>
<field name="facility_id"/>
<field name="sample_point"/>
<field name="lab_id"/>
<field name="state" widget="badge"/>
<field name="worst_status" widget="badge"/>
</list>
</field>
</record>
<record id="view_fp_discharge_sample_form" model="ir.ui.view">
<field name="name">fp.discharge.sample.form</field>
<field name="model">fusion.plating.discharge.sample</field>
<field name="arch" type="xml">
<form string="Discharge Sample">
<header>
<button name="action_send_to_lab" string="Send to Lab" type="object" invisible="state != 'draft'" class="oe_highlight"/>
<button name="action_results_in" string="Results In" type="object" invisible="state != 'sent_to_lab'" class="oe_highlight"/>
<button name="action_escalate" string="Escalate" type="object" invisible="state not in ('results_in',)"/>
<button name="action_close" string="Close" type="object" invisible="state not in ('results_in', 'escalated')"/>
<field name="state" widget="statusbar" statusbar_visible="draft,sent_to_lab,results_in,closed"/>
</header>
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" readonly="1"/></h1>
</div>
<group>
<group>
<field name="facility_id"/>
<field name="sample_date"/>
<field name="sample_point"/>
<field name="collected_by_id"/>
</group>
<group>
<field name="lab_id"/>
<field name="chain_of_custody_ref"/>
<field name="lab_report_ref"/>
<field name="received_date"/>
<field name="worst_status" readonly="1" widget="badge"/>
</group>
</group>
<notebook>
<page string="Parameters">
<field name="line_ids">
<list editable="bottom">
<field name="limit_id"/>
<field name="parameter"/>
<field name="value"/>
<field name="uom"/>
<field name="status" widget="badge"/>
<field name="notes"/>
</list>
</field>
</page>
<page string="Attachments"><field name="attachment_ids" widget="many2many_binary"/></page>
<page string="Notes"><field name="notes"/></page>
</notebook>
</sheet>
<chatter/>
</form>
</field>
</record>
<record id="view_fp_discharge_sample_kanban" model="ir.ui.view">
<field name="name">fp.discharge.sample.kanban</field>
<field name="model">fusion.plating.discharge.sample</field>
<field name="arch" type="xml">
<kanban class="o_fp_discharge_kanban" default_group_by="state">
<field name="id"/>
<field name="name"/>
<field name="facility_id"/>
<field name="sample_date"/>
<field name="sample_point"/>
<field name="worst_status"/>
<field name="state"/>
<templates>
<t t-name="card">
<div class="o_fp_discharge_card o_fp_card" t-att-data-status="record.worst_status.raw_value">
<div class="d-flex align-items-start justify-content-between">
<div>
<strong class="o_fp_card_title"><field name="name"/></strong>
<div class="text-muted small"><field name="sample_point"/></div>
</div>
<i class="fa fa-tint text-muted" aria-hidden="true"/>
</div>
<div class="mt-2 small"><field name="facility_id"/></div>
<div class="mt-2 small"><field name="sample_date"/></div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="view_fp_discharge_sample_search" model="ir.ui.view">
<field name="name">fp.discharge.sample.search</field>
<field name="model">fusion.plating.discharge.sample</field>
<field name="arch" type="xml">
<search string="Discharge Samples">
<field name="name"/>
<field name="facility_id"/>
<field name="sample_point"/>
<field name="lab_id"/>
<filter string="Out of Spec" name="oos" domain="[('worst_status', '=', 'out_of_spec')]"/>
<filter string="Warning" name="warn" domain="[('worst_status', '=', 'warning')]"/>
<filter string="Open" name="open" domain="[('state', 'not in', ('closed',))]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Status" name="group_state" context="{'group_by': 'state'}"/>
<filter string="Sample Date" name="group_date" context="{'group_by': 'sample_date'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_discharge_sample" model="ir.actions.act_window">
<field name="name">Discharge Samples</field>
<field name="res_model">fusion.plating.discharge.sample</field>
<field name="view_mode">kanban,list,form</field>
<field name="search_view_id" ref="view_fp_discharge_sample_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_facility_form_compliance" model="ir.ui.view">
<field name="name">fp.facility.form.compliance</field>
<field name="model">fusion.plating.facility</field>
<field name="inherit_id" ref="fusion_plating.view_fp_facility_form"/>
<field name="arch" type="xml">
<xpath expr="//div[@name='button_box']" position="inside">
<button name="%(action_fp_permit)d" type="action" class="oe_stat_button" icon="fa-file-text-o"
context="{'search_default_facility_id': id}">
<field name="permit_count" widget="statinfo" string="Permits"/>
</button>
<button name="%(action_fp_discharge_sample)d" type="action" class="oe_stat_button" icon="fa-tint"
context="{'search_default_facility_id': id}">
<field name="discharge_sample_count" widget="statinfo" string="Samples"/>
</button>
<button name="%(action_fp_compliance_event)d" type="action" class="oe_stat_button" icon="fa-calendar"
context="{'search_default_facility_id': id}">
<field name="compliance_event_count" widget="statinfo" string="Events"/>
</button>
<button name="%(action_fp_waste_stream)d" type="action" class="oe_stat_button" icon="fa-trash"
context="{'search_default_facility_id': id}">
<field name="waste_stream_count" widget="statinfo" string="Streams"/>
</button>
<button name="%(action_fp_spill_register)d" type="action" class="oe_stat_button" icon="fa-exclamation-triangle"
context="{'search_default_facility_id': id}">
<field name="spill_count" widget="statinfo" string="Spills"/>
</button>
</xpath>
<xpath expr="//notebook" position="inside">
<page string="Compliance">
<group>
<group string="Identifiers">
<field name="x_fp_eca_number"/>
<field name="x_fp_sewer_permit_number"/>
<field name="x_fp_waste_generator_number"/>
</group>
</group>
<group string="Permits">
<field name="permit_ids" nolabel="1">
<list>
<field name="name"/>
<field name="permit_type"/>
<field name="number"/>
<field name="regulator_id"/>
<field name="expiry_date"/>
<field name="state"/>
</list>
</field>
</group>
<group string="Compliance Notes">
<field name="x_fp_compliance_notes" nolabel="1"/>
</group>
</page>
</xpath>
</field>
</record>
</odoo>

View File

@@ -0,0 +1,75 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_jurisdiction_list" model="ir.ui.view">
<field name="name">fp.jurisdiction.list</field>
<field name="model">fusion.plating.jurisdiction</field>
<field name="arch" type="xml">
<list string="Jurisdictions">
<field name="display_name"/>
<field name="code"/>
<field name="level"/>
<field name="parent_id"/>
<field name="active" widget="boolean_toggle"/>
</list>
</field>
</record>
<record id="view_fp_jurisdiction_form" model="ir.ui.view">
<field name="name">fp.jurisdiction.form</field>
<field name="model">fusion.plating.jurisdiction</field>
<field name="arch" type="xml">
<form string="Jurisdiction">
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Ontario"/></h1>
<div class="text-muted"><field name="code" placeholder="CA-ON"/></div>
</div>
<group>
<group>
<field name="level"/>
<field name="parent_id"/>
</group>
<group><field name="active" widget="boolean_toggle"/></group>
</group>
<notebook>
<page string="Children">
<field name="child_ids">
<list>
<field name="name"/>
<field name="code"/>
<field name="level"/>
</list>
</field>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="view_fp_jurisdiction_search" model="ir.ui.view">
<field name="name">fp.jurisdiction.search</field>
<field name="model">fusion.plating.jurisdiction</field>
<field name="arch" type="xml">
<search string="Jurisdictions">
<field name="name"/>
<field name="code"/>
<field name="parent_id"/>
<filter string="Countries" name="country" domain="[('level', '=', 'country')]"/>
<filter string="Provinces / States" name="province" domain="[('level', '=', 'province')]"/>
<filter string="Municipalities" name="municipality" domain="[('level', '=', 'municipality')]"/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
<group>
<filter string="Level" name="group_level" context="{'group_by': 'level'}"/>
<filter string="Parent" name="group_parent" context="{'group_by': 'parent_id'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_jurisdiction" model="ir.actions.act_window">
<field name="name">Jurisdictions</field>
<field name="res_model">fusion.plating.jurisdiction</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_jurisdiction_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<menuitem id="menu_fp_compliance_root" name="Compliance" parent="fusion_plating.menu_fp_root" sequence="40"/>
<menuitem id="menu_fp_compliance_permit" name="Permits" parent="menu_fp_compliance_root" action="action_fp_permit" sequence="10"/>
<menuitem id="menu_fp_compliance_discharge_sample" name="Discharge Samples" parent="menu_fp_compliance_root" action="action_fp_discharge_sample" sequence="20"/>
<menuitem id="menu_fp_compliance_waste_manifest" name="Waste Manifests" parent="menu_fp_compliance_root" action="action_fp_waste_manifest" sequence="30"/>
<menuitem id="menu_fp_compliance_calendar" name="Compliance Calendar" parent="menu_fp_compliance_root" action="action_fp_compliance_event" sequence="40"/>
<menuitem id="menu_fp_compliance_spill_register" name="Spill Register" parent="menu_fp_compliance_root" action="action_fp_spill_register" sequence="50"/>
<menuitem id="menu_fp_compliance_config" name="Configuration" parent="menu_fp_compliance_root" sequence="100"/>
<menuitem id="menu_fp_compliance_jurisdiction" name="Jurisdictions" parent="menu_fp_compliance_config" action="action_fp_jurisdiction" sequence="10"/>
<menuitem id="menu_fp_compliance_regulator" name="Regulators" parent="menu_fp_compliance_config" action="action_fp_regulator" sequence="20"/>
<menuitem id="menu_fp_compliance_discharge_limit" name="Discharge Limits" parent="menu_fp_compliance_config" action="action_fp_discharge_limit" sequence="30"/>
<menuitem id="menu_fp_compliance_waste_stream" name="Waste Streams" parent="menu_fp_compliance_config" action="action_fp_waste_stream" sequence="40"/>
<menuitem id="menu_fp_compliance_pollutant_inventory" name="Pollutant Inventory" parent="menu_fp_compliance_config" action="action_fp_pollutant_inventory" sequence="50"/>
</odoo>

View File

@@ -0,0 +1,151 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_permit_list" model="ir.ui.view">
<field name="name">fp.permit.list</field>
<field name="model">fusion.plating.permit</field>
<field name="arch" type="xml">
<list string="Permits" decoration-warning="is_expiring_soon" decoration-danger="state == 'expired'">
<field name="name"/>
<field name="permit_type"/>
<field name="number"/>
<field name="facility_id"/>
<field name="regulator_id"/>
<field name="issue_date"/>
<field name="expiry_date"/>
<field name="days_until_expiry"/>
<field name="state" widget="badge"/>
<field name="is_expiring_soon" column_invisible="1"/>
</list>
</field>
</record>
<record id="view_fp_permit_form" model="ir.ui.view">
<field name="name">fp.permit.form</field>
<field name="model">fusion.plating.permit</field>
<field name="arch" type="xml">
<form string="Permit">
<header>
<button name="action_set_pending" string="Set Pending" type="object" invisible="state != 'draft'" class="oe_highlight"/>
<button name="action_activate" string="Activate" type="object" invisible="state not in ('draft', 'pending')" class="oe_highlight"/>
<button name="action_mark_expired" string="Mark Expired" type="object" invisible="state != 'active'"/>
<button name="action_revoke" string="Revoke" type="object" invisible="state in ('draft', 'revoked')"/>
<field name="state" widget="statusbar" statusbar_visible="draft,pending,active,expired"/>
</header>
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. ECA #1234-ABCDEF"/></h1>
<div class="text-muted"><field name="number" placeholder="Permit Number"/></div>
</div>
<group>
<group>
<field name="permit_type"/>
<field name="facility_id"/>
<field name="regulator_id"/>
<field name="jurisdiction_id"/>
</group>
<group>
<field name="issue_date"/>
<field name="expiry_date"/>
<field name="renewal_reminder_days"/>
<field name="days_until_expiry" readonly="1"/>
<field name="active" widget="boolean_toggle"/>
</group>
</group>
<notebook>
<page string="Conditions">
<field name="condition_ids">
<list editable="bottom">
<field name="sequence" widget="handle"/>
<field name="name"/>
<field name="frequency"/>
<field name="next_due_date"/>
<field name="owner_id"/>
<field name="status" widget="badge"/>
</list>
<form>
<sheet>
<group>
<field name="name"/>
<field name="frequency"/>
<field name="next_due_date"/>
<field name="owner_id"/>
<field name="status"/>
</group>
<group string="Description"><field name="description" nolabel="1"/></group>
</sheet>
</form>
</field>
</page>
<page string="Attachments"><field name="attachment_ids" widget="many2many_binary"/></page>
<page string="Notes"><field name="notes"/></page>
</notebook>
</sheet>
<chatter/>
</form>
</field>
</record>
<record id="view_fp_permit_kanban" model="ir.ui.view">
<field name="name">fp.permit.kanban</field>
<field name="model">fusion.plating.permit</field>
<field name="arch" type="xml">
<kanban class="o_fp_permit_kanban" default_group_by="state">
<field name="id"/>
<field name="name"/>
<field name="number"/>
<field name="facility_id"/>
<field name="expiry_date"/>
<field name="days_until_expiry"/>
<field name="state"/>
<field name="is_expiring_soon"/>
<templates>
<t t-name="card">
<div class="o_fp_permit_card o_fp_card" t-att-data-state="record.state.raw_value">
<div class="d-flex align-items-start justify-content-between">
<div>
<strong class="o_fp_card_title"><field name="name"/></strong>
<div class="text-muted small"><field name="number"/></div>
</div>
<i class="fa fa-file-text-o text-muted" aria-hidden="true"/>
</div>
<div class="mt-2 small"><field name="facility_id"/></div>
<div class="mt-2 small">Expires: <field name="expiry_date"/></div>
<div t-if="record.is_expiring_soon.raw_value" class="o_fp_overdue_indicator mt-2">
Renewal due in <field name="days_until_expiry"/> days
</div>
</div>
</t>
</templates>
</kanban>
</field>
</record>
<record id="view_fp_permit_search" model="ir.ui.view">
<field name="name">fp.permit.search</field>
<field name="model">fusion.plating.permit</field>
<field name="arch" type="xml">
<search string="Permits">
<field name="name"/>
<field name="number"/>
<field name="facility_id"/>
<field name="regulator_id"/>
<filter string="Active" name="active" domain="[('state', '=', 'active')]"/>
<filter string="Pending" name="pending" domain="[('state', '=', 'pending')]"/>
<filter string="Expiring Soon" name="expiring" domain="[('is_expiring_soon', '=', True)]"/>
<filter string="Expired" name="expired" domain="[('state', '=', 'expired')]"/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Type" name="group_type" context="{'group_by': 'permit_type'}"/>
<filter string="Regulator" name="group_regulator" context="{'group_by': 'regulator_id'}"/>
<filter string="Status" name="group_state" context="{'group_by': 'state'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_permit" model="ir.actions.act_window">
<field name="name">Permits</field>
<field name="res_model">fusion.plating.permit</field>
<field name="view_mode">kanban,list,form</field>
<field name="search_view_id" ref="view_fp_permit_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_pollutant_inventory_list" model="ir.ui.view">
<field name="name">fp.pollutant.inventory.list</field>
<field name="model">fusion.plating.pollutant.inventory</field>
<field name="arch" type="xml">
<list string="Pollutant Inventory" decoration-warning="threshold_exceeded">
<field name="year"/>
<field name="facility_id"/>
<field name="substance"/>
<field name="cas_number"/>
<field name="manufactured_kg" sum="Manufactured"/>
<field name="processed_kg" sum="Processed"/>
<field name="used_kg" sum="Used"/>
<field name="released_kg" sum="Released"/>
<field name="transferred_kg" sum="Transferred"/>
<field name="threshold_exceeded" widget="boolean_toggle" readonly="1"/>
</list>
</field>
</record>
<record id="view_fp_pollutant_inventory_form" model="ir.ui.view">
<field name="name">fp.pollutant.inventory.form</field>
<field name="model">fusion.plating.pollutant.inventory</field>
<field name="arch" type="xml">
<form string="Pollutant Inventory Entry">
<sheet>
<div class="oe_title">
<label for="substance"/>
<h1><field name="substance" placeholder="e.g. Nickel and its compounds"/></h1>
<div class="text-muted"><field name="cas_number" placeholder="CAS Number"/></div>
</div>
<group>
<group>
<field name="year"/>
<field name="facility_id"/>
</group>
<group>
<field name="threshold_kg"/>
<field name="threshold_exceeded" readonly="1" widget="boolean_toggle"/>
</group>
</group>
<group string="Quantities (kg/year)">
<group>
<field name="manufactured_kg"/>
<field name="processed_kg"/>
<field name="used_kg"/>
</group>
<group>
<field name="released_kg"/>
<field name="transferred_kg"/>
</group>
</group>
<group string="Notes"><field name="notes" nolabel="1"/></group>
</sheet>
</form>
</field>
</record>
<record id="view_fp_pollutant_inventory_search" model="ir.ui.view">
<field name="name">fp.pollutant.inventory.search</field>
<field name="model">fusion.plating.pollutant.inventory</field>
<field name="arch" type="xml">
<search string="Pollutant Inventory">
<field name="substance"/>
<field name="cas_number"/>
<field name="facility_id"/>
<field name="year"/>
<filter string="Threshold Exceeded" name="exceeded" domain="[('threshold_exceeded', '=', True)]"/>
<group>
<filter string="Year" name="group_year" context="{'group_by': 'year'}"/>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Substance" name="group_substance" context="{'group_by': 'substance'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_pollutant_inventory" model="ir.actions.act_window">
<field name="name">Pollutant Inventory</field>
<field name="res_model">fusion.plating.pollutant.inventory</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_pollutant_inventory_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_regulator_list" model="ir.ui.view">
<field name="name">fp.regulator.list</field>
<field name="model">fusion.plating.regulator</field>
<field name="arch" type="xml">
<list string="Regulators">
<field name="name"/>
<field name="code"/>
<field name="jurisdiction_id"/>
<field name="category"/>
<field name="active" widget="boolean_toggle"/>
</list>
</field>
</record>
<record id="view_fp_regulator_form" model="ir.ui.view">
<field name="name">fp.regulator.form</field>
<field name="model">fusion.plating.regulator</field>
<field name="arch" type="xml">
<form string="Regulator">
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Ministry of Environment"/></h1>
</div>
<group>
<group>
<field name="code"/>
<field name="jurisdiction_id"/>
<field name="category"/>
</group>
<group>
<field name="website" widget="url"/>
<field name="active" widget="boolean_toggle"/>
</group>
</group>
<group string="Contact"><field name="contact_info" nolabel="1"/></group>
</sheet>
</form>
</field>
</record>
<record id="view_fp_regulator_search" model="ir.ui.view">
<field name="name">fp.regulator.search</field>
<field name="model">fusion.plating.regulator</field>
<field name="arch" type="xml">
<search string="Regulators">
<field name="name"/>
<field name="code"/>
<field name="jurisdiction_id"/>
<filter string="Environmental" name="environmental" domain="[('category', '=', 'environmental')]"/>
<filter string="Water" name="water" domain="[('category', '=', 'water')]"/>
<filter string="Waste" name="waste" domain="[('category', '=', 'waste')]"/>
<filter string="Health and Safety" name="hs" domain="[('category', '=', 'health_safety')]"/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
<group>
<filter string="Jurisdiction" name="group_jurisdiction" context="{'group_by': 'jurisdiction_id'}"/>
<filter string="Category" name="group_category" context="{'group_by': 'category'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_regulator" model="ir.actions.act_window">
<field name="name">Regulators</field>
<field name="res_model">fusion.plating.regulator</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_regulator_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_spill_register_list" model="ir.ui.view">
<field name="name">fp.spill.register.list</field>
<field name="model">fusion.plating.spill.register</field>
<field name="arch" type="xml">
<list string="Spill Register">
<field name="name"/>
<field name="spill_date"/>
<field name="facility_id"/>
<field name="substance"/>
<field name="quantity"/>
<field name="uom"/>
<field name="regulator_notified" widget="boolean_toggle"/>
<field name="state" widget="badge"/>
</list>
</field>
</record>
<record id="view_fp_spill_register_form" model="ir.ui.view">
<field name="name">fp.spill.register.form</field>
<field name="model">fusion.plating.spill.register</field>
<field name="arch" type="xml">
<form string="Spill Register">
<header>
<button name="action_contain" string="Contained" type="object" invisible="state != 'reported'" class="oe_highlight"/>
<button name="action_investigate" string="Investigate" type="object" invisible="state not in ('contained',)"/>
<button name="action_close" string="Close" type="object" invisible="state in ('reported', 'closed')"/>
<field name="state" widget="statusbar" statusbar_visible="reported,contained,investigation,closed"/>
</header>
<sheet>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" readonly="1"/></h1>
</div>
<group>
<group>
<field name="facility_id"/>
<field name="spill_date"/>
<field name="reported_by_id"/>
<field name="location"/>
</group>
<group>
<field name="substance"/>
<field name="quantity"/>
<field name="uom"/>
<field name="capa_ref"/>
</group>
</group>
<group string="Regulator Notification">
<field name="regulator_notified"/>
<field name="regulator_notification_date" invisible="not regulator_notified"/>
</group>
<notebook>
<page string="Containment"><field name="containment_action" nolabel="1"/></page>
<page string="Root Cause"><field name="root_cause" nolabel="1"/></page>
<page string="Corrective Action"><field name="corrective_action" nolabel="1"/></page>
<page string="Attachments"><field name="attachment_ids" widget="many2many_binary"/></page>
</notebook>
</sheet>
<chatter/>
</form>
</field>
</record>
<record id="view_fp_spill_register_search" model="ir.ui.view">
<field name="name">fp.spill.register.search</field>
<field name="model">fusion.plating.spill.register</field>
<field name="arch" type="xml">
<search string="Spill Register">
<field name="name"/>
<field name="facility_id"/>
<field name="substance"/>
<filter string="Open" name="open" domain="[('state', '!=', 'closed')]"/>
<filter string="Regulator Notified" name="notified" domain="[('regulator_notified', '=', True)]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Status" name="group_state" context="{'group_by': 'state'}"/>
<filter string="Substance" name="group_substance" context="{'group_by': 'substance'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_spill_register" model="ir.actions.act_window">
<field name="name">Spill Register</field>
<field name="res_model">fusion.plating.spill.register</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_spill_register_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_waste_manifest_list" model="ir.ui.view">
<field name="name">fp.waste.manifest.list</field>
<field name="model">fusion.plating.waste.manifest</field>
<field name="arch" type="xml">
<list string="Waste Manifests">
<field name="name"/>
<field name="ship_date"/>
<field name="waste_stream_id"/>
<field name="facility_id"/>
<field name="quantity"/>
<field name="uom"/>
<field name="carrier_id"/>
<field name="receiver_id"/>
<field name="manifest_number"/>
<field name="state" widget="badge"/>
</list>
</field>
</record>
<record id="view_fp_waste_manifest_form" model="ir.ui.view">
<field name="name">fp.waste.manifest.form</field>
<field name="model">fusion.plating.waste.manifest</field>
<field name="arch" type="xml">
<form string="Waste Manifest">
<header>
<button name="action_ship" string="Ship" type="object" invisible="state != 'draft'" class="oe_highlight"/>
<button name="action_receive" string="Mark Received" type="object" invisible="state != 'shipped'" class="oe_highlight"/>
<button name="action_close" string="Close" type="object" invisible="state != 'received'"/>
<field name="state" widget="statusbar" statusbar_visible="draft,shipped,received,closed"/>
</header>
<sheet>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" readonly="1"/></h1>
</div>
<group>
<group>
<field name="waste_stream_id"/>
<field name="facility_id" readonly="1"/>
<field name="ship_date"/>
</group>
<group>
<field name="quantity"/>
<field name="uom"/>
<field name="manifest_number"/>
</group>
</group>
<group string="Carrier and Receiver">
<field name="carrier_id"/>
<field name="receiver_id"/>
</group>
<notebook>
<page string="Attachments"><field name="attachment_ids" widget="many2many_binary"/></page>
<page string="Notes"><field name="notes"/></page>
</notebook>
</sheet>
<chatter/>
</form>
</field>
</record>
<record id="view_fp_waste_manifest_search" model="ir.ui.view">
<field name="name">fp.waste.manifest.search</field>
<field name="model">fusion.plating.waste.manifest</field>
<field name="arch" type="xml">
<search string="Waste Manifests">
<field name="name"/>
<field name="manifest_number"/>
<field name="waste_stream_id"/>
<field name="carrier_id"/>
<field name="receiver_id"/>
<filter string="Draft" name="draft" domain="[('state', '=', 'draft')]"/>
<filter string="Shipped" name="shipped" domain="[('state', '=', 'shipped')]"/>
<filter string="Received" name="received" domain="[('state', '=', 'received')]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Waste Stream" name="group_stream" context="{'group_by': 'waste_stream_id'}"/>
<filter string="Status" name="group_state" context="{'group_by': 'state'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_waste_manifest" model="ir.actions.act_window">
<field name="name">Waste Manifests</field>
<field name="res_model">fusion.plating.waste.manifest</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_waste_manifest_search"/>
</record>
</odoo>

View File

@@ -0,0 +1,92 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="view_fp_waste_stream_list" model="ir.ui.view">
<field name="name">fp.waste.stream.list</field>
<field name="model">fusion.plating.waste.stream</field>
<field name="arch" type="xml">
<list string="Waste Streams">
<field name="code"/>
<field name="name"/>
<field name="facility_id"/>
<field name="waste_class"/>
<field name="physical_state"/>
<field name="approved_carrier_id"/>
<field name="active" widget="boolean_toggle"/>
</list>
</field>
</record>
<record id="view_fp_waste_stream_form" model="ir.ui.view">
<field name="name">fp.waste.stream.form</field>
<field name="model">fusion.plating.waste.stream</field>
<field name="arch" type="xml">
<form string="Waste Stream">
<sheet>
<widget name="web_ribbon" title="Archived" bg_color="text-bg-danger" invisible="active"/>
<div class="oe_title">
<label for="name"/>
<h1><field name="name" placeholder="e.g. Spent nickel bath"/></h1>
<div class="text-muted"><field name="code" placeholder="WS-001"/></div>
</div>
<group>
<group>
<field name="facility_id"/>
<field name="waste_class"/>
<field name="physical_state"/>
</group>
<group>
<field name="generation_rate"/>
<field name="generation_uom"/>
<field name="disposal_method"/>
<field name="active" widget="boolean_toggle"/>
</group>
</group>
<group string="Approved Vendors">
<field name="approved_carrier_id"/>
<field name="approved_facility_id"/>
</group>
<notebook>
<page string="Description"><field name="description" nolabel="1"/></page>
<page string="Manifests">
<field name="manifest_ids">
<list>
<field name="name"/>
<field name="ship_date"/>
<field name="quantity"/>
<field name="uom"/>
<field name="manifest_number"/>
<field name="state"/>
</list>
</field>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<record id="view_fp_waste_stream_search" model="ir.ui.view">
<field name="name">fp.waste.stream.search</field>
<field name="model">fusion.plating.waste.stream</field>
<field name="arch" type="xml">
<search string="Waste Streams">
<field name="name"/>
<field name="code"/>
<field name="facility_id"/>
<field name="waste_class"/>
<filter string="Liquid" name="liquid" domain="[('physical_state', '=', 'liquid')]"/>
<filter string="Sludge" name="sludge" domain="[('physical_state', '=', 'sludge')]"/>
<filter string="Solid" name="solid" domain="[('physical_state', '=', 'solid')]"/>
<filter string="Archived" name="inactive" domain="[('active', '=', False)]"/>
<group>
<filter string="Facility" name="group_facility" context="{'group_by': 'facility_id'}"/>
<filter string="Physical State" name="group_state" context="{'group_by': 'physical_state'}"/>
</group>
</search>
</field>
</record>
<record id="action_fp_waste_stream" model="ir.actions.act_window">
<field name="name">Waste Streams</field>
<field name="res_model">fusion.plating.waste.stream</field>
<field name="view_mode">list,form</field>
<field name="search_view_id" ref="view_fp_waste_stream_search"/>
</record>
</odoo>