forked from Yaltik/golem
[ADD]GOLEM Activity Custom Price : service user analysis
* New option for service user analysis with fquotient slices.
This commit is contained in:
parent
408dc00e1b
commit
7254c2f737
@ -1,6 +1,6 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
# Copyright 2018 Fabien Bourgeois <fabien@yaltik.com>
|
# Copyright 2018-2019 Fabien Bourgeois <fabien@yaltik.com>
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
@ -24,7 +24,7 @@
|
|||||||
- allow set price per area and slice ;
|
- allow set price per area and slice ;
|
||||||
- computes automatically applicable price ;
|
- computes automatically applicable price ;
|
||||||
- anticipate ruleset to be implemented for computing.''',
|
- anticipate ruleset to be implemented for computing.''',
|
||||||
'version': '10.0.0.2.0',
|
'version': '10.0.0.3.0',
|
||||||
'category': 'GOLEM',
|
'category': 'GOLEM',
|
||||||
'author': 'Fabien Bourgeois',
|
'author': 'Fabien Bourgeois',
|
||||||
'license': 'AGPL-3',
|
'license': 'AGPL-3',
|
||||||
@ -36,5 +36,6 @@
|
|||||||
'views/golem_payment_rule_quotient_slice_views.xml',
|
'views/golem_payment_rule_quotient_slice_views.xml',
|
||||||
'views/golem_member_views.xml',
|
'views/golem_member_views.xml',
|
||||||
'views/golem_activity_views.xml',
|
'views/golem_activity_views.xml',
|
||||||
'wizard/golem_activity_registration_invoicing_views.xml']
|
'wizard/golem_activity_registration_invoicing_views.xml',
|
||||||
|
'wizard/golem_member_analysis_views.xml']
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
# Copyright 2018 Fabien Bourgeois <fabien@yaltik.com>
|
# Copyright 2018-2019 Fabien Bourgeois <fabien@yaltik.com>
|
||||||
#
|
#
|
||||||
# This program is free software: you can redistribute it and/or modify
|
# This program is free software: you can redistribute it and/or modify
|
||||||
# it under the terms of the GNU Affero General Public License as
|
# it under the terms of the GNU Affero General Public License as
|
||||||
@ -15,4 +15,5 @@
|
|||||||
# You should have received a copy of the GNU Affero General Public License
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
from . import golem_activity_registration_invoicing
|
from . import (golem_activity_registration_invoicing,
|
||||||
|
golem_member_analysis, golem_member_analysis_wizard)
|
||||||
|
@ -0,0 +1,47 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
#
|
||||||
|
# Copyright 2019 Fabien Bourgeois <fabien@yaltik.com>
|
||||||
|
# Copyright 2019 Youssef El Ouahby <youssef@yaltik.com>
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as
|
||||||
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
""" GOLEM Members Analysis Pivot Adaption """
|
||||||
|
|
||||||
|
from odoo import models, fields, api
|
||||||
|
|
||||||
|
|
||||||
|
class GolemMemberAnalysisPivot(models.TransientModel):
|
||||||
|
""" GOLEM Members Analysis Pivot Adaption """
|
||||||
|
_inherit = 'golem.member.analysis'
|
||||||
|
_description = 'GOLEM Members Analysis Adaption'
|
||||||
|
|
||||||
|
|
||||||
|
family_quotient_slice_id = fields.Many2one(
|
||||||
|
'golem.payment.rule.familyquotient.slice', index=True, ondelete='cascade',
|
||||||
|
store=True, compute='_compute_family_quotient_slice_id'
|
||||||
|
)
|
||||||
|
|
||||||
|
@api.depends('family_quotient')
|
||||||
|
def _compute_family_quotient_slice_id(self):
|
||||||
|
""" Computes family quotient slice """
|
||||||
|
for rec in self:
|
||||||
|
if rec.family_quotient:
|
||||||
|
fq_int = int(rec.family_quotient)
|
||||||
|
domain = [('family_quotient_from', '<=', fq_int),
|
||||||
|
('family_quotient_to', '>=', fq_int)]
|
||||||
|
rule_slice_id = self.env['golem.payment.rule.familyquotient.slice'].search(
|
||||||
|
domain, limit=1
|
||||||
|
)
|
||||||
|
if rule_slice_id:
|
||||||
|
rec.family_quotient_slice_id = rule_slice_id
|
@ -0,0 +1,37 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Copyright 2019 Fabien Bourgeois <fabien@yaltik.com>
|
||||||
|
Copyright 2019 Youssef El Ouahby <youssef@yaltik.com>
|
||||||
|
|
||||||
|
This program is free software: you can redistribute it and/or modify
|
||||||
|
it under the terms of the GNU Affero General Public License as published by
|
||||||
|
the Free Software Foundation, either version 3 of the License, or
|
||||||
|
(at your option) any later version.
|
||||||
|
|
||||||
|
This program is distributed in the hope that it will be useful,
|
||||||
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
GNU Affero General Public License for more details.
|
||||||
|
|
||||||
|
You should have received a copy of the GNU Affero General Public License
|
||||||
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<odoo>
|
||||||
|
<data>
|
||||||
|
|
||||||
|
<!-- Pivot -->
|
||||||
|
<record id="golem_member_analysis_pivot_fquotientslice_area" model="ir.ui.view">
|
||||||
|
<field name="name">Golem Member Analysis Fquotient Slice and Area Pivot</field>
|
||||||
|
<field name="model">golem.member.analysis</field>
|
||||||
|
<field name="arch" type="xml">
|
||||||
|
<pivot string="Service User Analysis">
|
||||||
|
<field name="area_id" type="row"/>
|
||||||
|
<field name="family_quotient_slice_id" type="col"/>
|
||||||
|
</pivot>
|
||||||
|
</field>
|
||||||
|
</record>
|
||||||
|
|
||||||
|
</data>
|
||||||
|
</odoo>
|
@ -0,0 +1,48 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
#
|
||||||
|
# Copyright 2019 Fabien Bourgeois <fabien@yaltik.com>
|
||||||
|
# Copyright 2019 Youssef El Ouahby <youssef@yaltik.com>
|
||||||
|
#
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU Affero General Public License as
|
||||||
|
# published by the Free Software Foundation, either version 3 of the
|
||||||
|
# License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU Affero General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU Affero General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
""" GOLEM Members Analysis Adaptation """
|
||||||
|
|
||||||
|
from odoo import models, fields, api
|
||||||
|
|
||||||
|
|
||||||
|
class GolemMemberAnalysis(models.TransientModel):
|
||||||
|
""" GOLEM Members Analysis Adaptation """
|
||||||
|
_inherit = 'golem.member.analysis.wizard'
|
||||||
|
_description = 'GOLEM Members Analysis Wizard Adaptation'
|
||||||
|
|
||||||
|
analyse_type = fields.Selection(
|
||||||
|
selection_add=[('fquotientslice_area',
|
||||||
|
'By family quotient slice and area')]
|
||||||
|
)
|
||||||
|
|
||||||
|
@api.multi
|
||||||
|
def get_pivot_view(self):
|
||||||
|
""" override get_pivot_view function """
|
||||||
|
self.ensure_one()
|
||||||
|
rec = self[0]
|
||||||
|
pivot_view = super(GolemMemberAnalysis, self).get_pivot_view()
|
||||||
|
if pivot_view:
|
||||||
|
return pivot_view
|
||||||
|
if rec.analyse_type == 'fquotientslice_area':
|
||||||
|
return self.env.ref(
|
||||||
|
('golem_activity_registration_custom_price.'
|
||||||
|
'golem_member_analysis_pivot_fquotientslice_area'),
|
||||||
|
False
|
||||||
|
)
|
||||||
|
return False
|
Loading…
Reference in New Issue
Block a user