Browse Source

Merge pull request #28 from coopiteasy/12.0-loaner-menus

[12.0] is_loaner fields and menus
pull/32/head
Rémy Taymans 5 years ago
committed by GitHub
parent
commit
72c3ee3009
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 31
      easy_my_coop_loan/models/partner.py
  2. 2
      easy_my_coop_loan/views/loan_view.xml
  3. 4
      easy_my_coop_loan/views/menus.xml
  4. 27
      easy_my_coop_loan/views/partner_view.xml

31
easy_my_coop_loan/models/partner.py

@ -1,9 +1,30 @@
from odoo import fields, models
# -*- coding: utf-8 -*-
# Copyright 2019 Coop IT Easy SCRL fs
# Robin Keunen <robin@coopiteasy.be>
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
from odoo import fields, models, api
class ResPartner(models.Model): class ResPartner(models.Model):
_inherit = 'res.partner'
_inherit = "res.partner"
loan_line_ids = fields.One2many(
comodel_name="loan.issue.line",
inverse_name="partner_id",
string="Loans",
)
is_loaner = fields.Boolean(
string="Loaner",
compute="_compute_is_loaner",
store=True,
)
loan_line_ids = fields.One2many('loan.issue.line',
'partner_id',
string="Loans")
@api.multi
@api.depends("loan_line_ids", "loan_line_ids.state")
def _compute_is_loaner(self):
for partner in self:
loans = partner.loan_line_ids.filtered(
lambda l: l.state in ["subscribed", "waiting", "paid"]
)
partner.is_loaner = bool(loans)

2
easy_my_coop_loan/views/loan_view.xml

@ -104,7 +104,7 @@
<field name="view_mode">tree,form</field> <field name="view_mode">tree,form</field>
</record> </record>
<record id="action_follow_individual_loan" model="ir.actions.act_window">
<record id="action_loan_issue_lines" model="ir.actions.act_window">
<field name="name">Loans</field> <field name="name">Loans</field>
<field name="res_model">loan.issue.line</field> <field name="res_model">loan.issue.line</field>
<field name="view_type">form</field> <field name="view_type">form</field>

4
easy_my_coop_loan/views/menus.xml

@ -6,7 +6,9 @@
<odoo> <odoo>
<menuitem name="Loan Management" id="menu_easy_my_coop_main_loan_issue" parent="easy_my_coop.menu_main_easy_my_coop" groups="easy_my_coop.group_easy_my_coop_user" sequence="15"/> <menuitem name="Loan Management" id="menu_easy_my_coop_main_loan_issue" parent="easy_my_coop.menu_main_easy_my_coop" groups="easy_my_coop.group_easy_my_coop_user" sequence="15"/>
<menuitem name="Loan Issues" id="loan_issue_menu" action="action_loan_issue" parent="menu_easy_my_coop_main_loan_issue" sequence="110"/> <menuitem name="Loan Issues" id="loan_issue_menu" action="action_loan_issue" parent="menu_easy_my_coop_main_loan_issue" sequence="110"/>
<menuitem name="Loans" id="individual_loan_menu" action="action_follow_individual_loan" parent="menu_easy_my_coop_main_loan_issue" sequence="120"/>
<menuitem name="Loans" id="loan_issue_line_menu" action="action_loan_issue_lines" parent="menu_easy_my_coop_main_loan_issue" sequence="120"/>
<menuitem name="Loaners" id="loaners_menu" action="action_loaners" parent="easy_my_coop.menu_easy_my_coop_main_coop" sequence="215" />
<menuitem name="Loan Term" id="loan_term_menu" action="action_loan_term" parent="easy_my_coop.menu_easy_my_coop_config" sequence="420"/> <menuitem name="Loan Term" id="loan_term_menu" action="action_loan_term" parent="easy_my_coop.menu_easy_my_coop_config" sequence="420"/>
</odoo> </odoo>

27
easy_my_coop_loan/views/partner_view.xml

@ -1,3 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
Copyright 2019 Coop IT Easy
License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
-->
<odoo> <odoo>
<record id="view_partner_form_loan_issue" model="ir.ui.view"> <record id="view_partner_form_loan_issue" model="ir.ui.view">
<field name="name">res.partner.form.loan.issue</field> <field name="name">res.partner.form.loan.issue</field>
@ -6,6 +11,9 @@
<field name="arch" type="xml"> <field name="arch" type="xml">
<page name="share_subscription" position="after"> <page name="share_subscription" position="after">
<page string="Loan issue lines" name="loan_issue_lines" groups="easy_my_coop.group_easy_my_coop_user"> <page string="Loan issue lines" name="loan_issue_lines" groups="easy_my_coop.group_easy_my_coop_user">
<group>
<field name="is_loaner"/>
</group>
<field name="loan_line_ids"> <field name="loan_line_ids">
<tree create="false" delete="false" edit="false"> <tree create="false" delete="false" edit="false">
<field name="loan_issue_id"/> <field name="loan_issue_id"/>
@ -19,5 +27,24 @@
</page> </page>
</page> </page>
</field> </field>
</record>
<record id="view_res_partner_loaner_filter" model="ir.ui.view">
<field name="name">res.partner.select</field>
<field name="model">res.partner</field>
<field name="inherit_id" ref="base.view_res_partner_filter"/>
<field name="arch" type="xml">
<xpath expr="//filter[@name='supplier']" position='after'>
<filter string="Loaners" name="loaners" domain="[('is_loaner','=',1)]" help="Loaning Partners"/>
</xpath>
</field>
</record>
<record id="action_loaners" model="ir.actions.act_window">
<field name="name">Loaners</field>
<field name="res_model">res.partner</field>
<field name="view_type">form</field>
<field name="view_mode">kanban,tree,form</field>
<field name="context">{'search_default_loaners':1}</field>
</record> </record>
</odoo> </odoo>
Loading…
Cancel
Save