Skip to content

Commit

Permalink
[MIG] business_requirement: Migration to v12
Browse files Browse the repository at this point in the history
  • Loading branch information
Victor Martin committed Jul 22, 2019
1 parent 194556c commit a525304
Show file tree
Hide file tree
Showing 13 changed files with 79 additions and 90 deletions.
11 changes: 6 additions & 5 deletions business_requirement/README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ Business Requirement
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fbusiness--requirement-lightgray.png?logo=github
:target: https://github.com/OCA/business-requirement/tree/11.0/business_requirement
:target: https://github.com/OCA/business-requirement/tree/12.0/business_requirement
:alt: OCA/business-requirement
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/business-requirement-11-0/business-requirement-11-0-business_requirement
:target: https://translation.odoo-community.org/projects/business-requirement-12-0/business-requirement-12-0-business_requirement
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/222/11.0
:target: https://runbot.odoo-community.org/runbot/222/12.0
:alt: Try me on Runbot

|badge1| |badge2| |badge3| |badge4| |badge5|
Expand Down Expand Up @@ -69,7 +69,7 @@ Bug Tracker
Bugs are tracked on `GitHub Issues <https://github.com/OCA/business-requirement/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
`feedback <https://github.com/OCA/business-requirement/issues/new?body=module:%20business_requirement%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
`feedback <https://github.com/OCA/business-requirement/issues/new?body=module:%20business_requirement%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Expand All @@ -80,6 +80,7 @@ Authors
~~~~~~~

* Elico Corp
* Tecnativa

Contributors
~~~~~~~~~~~~
Expand Down Expand Up @@ -119,6 +120,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/business-requirement <https://github.com/OCA/business-requirement/tree/11.0/business_requirement>`_ project on GitHub.
This module is part of the `OCA/business-requirement <https://github.com/OCA/business-requirement/tree/12.0/business_requirement>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
2 changes: 1 addition & 1 deletion business_requirement/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# © 2017-2019 Elico Corp (https://www.elico-corp.com).
# Copyright 2017-2019 Elico Corp (https://www.elico-corp.com).
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import models
from . import tests
Expand Down
5 changes: 3 additions & 2 deletions business_requirement/__manifest__.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
# © 2017-2019 Elico Corp (https://www.elico-corp.com).
# Copyright 2017-2019 Elico Corp (https://www.elico-corp.com).
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Business Requirement",
"category": "Business Requirements Management",
"summary": "Manage the Business Requirements (stories, scenarios, gaps\
and test cases) for your customers",
"version": "11.0.1.0.0",
"version": "12.0.1.0.0",
"website": "https://github.com/OCA/business-requirement",
"author": "Elico Corp, "
"Tecnativa, "
"Odoo Community Association (OCA)",
"depends": [
"product",
Expand Down
2 changes: 1 addition & 1 deletion business_requirement/controllers/portal.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
class CustomerPortal(CustomerPortal):

def _prepare_portal_layout_values(self):
values = super(CustomerPortal, self)._prepare_portal_layout_values()
values = super()._prepare_portal_layout_values()
br_count = request.env['business.requirement'].search_count(
self._prepare_br_base_domain())
values.update({
Expand Down
14 changes: 7 additions & 7 deletions business_requirement/data/business_requirement_demo.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@

<record id="business_requirement_1" model="business.requirement">
<field name="description">Corporate Website</field>
<field name="responsible_user_id" ref="base.user_root"/>
<field name="responsible_user_id" ref="base.user_admin"/>
<field name="priority">2</field>
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_1'),ref('business_requirement_category_3')])]"/>
Expand Down Expand Up @@ -130,7 +130,7 @@ pulvinar et, cursus sed purus.
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_2')])]"/>
<field name="reviewer_ids"
eval="[(6, 0, [ref('base.user_root')])]"/>
eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="to_be_reviewed" eval="0"/>
<field name="state">approved</field>
<field name="partner_id" ref="base.main_partner"/>
Expand All @@ -142,7 +142,7 @@ pulvinar et, cursus sed purus.
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_2')])]"/>
<field name="reviewer_ids"
eval="[(6, 0, [ref('base.user_root')])]"/>
eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="to_be_reviewed" eval="0"/>
<field name="state">approved</field>
<field name="partner_id" ref="base.main_partner"/>
Expand Down Expand Up @@ -245,7 +245,7 @@ pulvinar et, cursus sed purus.
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_2'),ref('business_requirement_category_4')])]"/>
<field name="reviewer_ids"
eval="[(6, 0, [ref('base.user_root')])]"/>
eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="to_be_reviewed" eval="0"/>
<field name="state">approved</field>
<field name="partner_id" ref="base.main_partner"/>
Expand Down Expand Up @@ -335,10 +335,10 @@ pulvinar et, cursus sed purus.
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_2')])]"/>
<field name="reviewer_ids"
eval="[(6, 0, [ref('base.user_root')])]"/>
eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="to_be_reviewed" eval="0"/>
<field name="state">in_progress</field>
<field name="partner_id" ref="base.res_partner_12"/>
<field name="partner_id" ref="base.res_partner_18"/>
<field name="business_requirement"><![CDATA[
<h1>Lorem Ipsum</h1>
<h4>"Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit..."</h4>
Expand Down Expand Up @@ -425,7 +425,7 @@ pulvinar et, cursus sed purus.
<field name="category_ids"
eval="[(6, 0, [ref('business_requirement_category_2')])]"/>
<field name="reviewer_ids"
eval="[(6, 0, [ref('base.user_root')])]"/>
eval="[(6, 0, [ref('base.user_admin')])]"/>
<field name="to_be_reviewed" eval="0"/>
<field name="state">confirmed</field>
<field name="partner_id" ref="base.main_partner"/>
Expand Down
2 changes: 1 addition & 1 deletion business_requirement/models/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# © 2017 Elico Corp (https://www.elico-corp.com).
# Copyright 2017 Elico Corp (https://www.elico-corp.com).
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import business
56 changes: 25 additions & 31 deletions business_requirement/models/business.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,15 @@ def _get_default_company(self):
states={'draft': [('readonly', False)]}
)
state = fields.Selection(
selection=lambda self: self._selection_get_states(),
selection=[
('draft', 'Draft'),
('confirmed', 'Confirmed'),
('approved', 'Approved'),
('in_progress', 'In progress'),
('done', 'Done'),
('cancel', 'Cancel'),
('drop', 'Drop'),
],
string='State',
default='draft',
copy=False,
Expand Down Expand Up @@ -191,18 +199,17 @@ def create(self, vals):
if vals.get('name', '/') == '/':
vals['name'] = self.env['ir.sequence'].next_by_code(
'business.requirement')
return super(BusinessRequirement, self).create(vals)
return super().create(vals)

@api.multi
def write(self, vals):
if vals.get('state'):
br_xml_id = self.env.ref(
user = self.env.user
user_manager = user.has_group(
'business_requirement.group_business_requirement_manager')
user = self.env['res.users']
grps = self.env.user.groups_id.ids
date = fields.Datetime.now()
if vals['state'] == 'confirmed':
vals.update({'confirmed_user_id': user,
vals.update({'confirmed_user_id': user.id,
'confirmation_date': date})
if vals['state'] == 'draft':
vals.update({'confirmed_user_id': False,
Expand All @@ -211,33 +218,20 @@ def write(self, vals):
'approval_date': False
})
if vals['state'] == 'approved':
if br_xml_id.id in grps:
vals.update({'approved_id': user,
'approval_date': date})
if user_manager:
vals.update({
'approved_id': user.id, 'approval_date': date})
else:
raise ValidationError(_(
'You can only move to the following stage: '
'draft/confirmed /cancel/drop.'))
if vals['state'] in ('approved', 'in_progress',
'done'):
if br_xml_id.id not in grps:
if vals['state'] in {'approved', 'in_progress',
'done'}:
if not user_manager:
raise ValidationError(_(
'You can only move to the following stage: '
'draft/confirmed/cancel/drop.'))
return super(BusinessRequirement, self).write(vals)

@api.model
def _selection_get_states(self):
states = [
('draft', 'Draft'),
('confirmed', 'Confirmed'),
('approved', 'Approved'),
('in_progress', 'In progress'),
('done', 'Done'),
('cancel', 'Cancel'),
('drop', 'Drop'),
]
return states
return super().write(vals)

@api.multi
def name_get(self):
Expand All @@ -254,7 +248,7 @@ def name_get(self):
def name_search(self, name, args=None, operator='ilike', limit=100):
"""Search BR based on Name or Description"""
# Make a search with default criteria
names = super(BusinessRequirement, self).name_search(
names = super().name_search(
name=name, args=args, operator=operator, limit=limit)
# Make the other search
descriptions = []
Expand All @@ -265,7 +259,7 @@ def name_search(self, name, args=None, operator='ilike', limit=100):
return list(set(names) | set(descriptions))[:limit]

@api.multi
@api.returns('self', lambda value: value.id)
@api.returns('mail.message', lambda value: value.id)
def message_post(self, body='', subject=None, message_type='notification',
subtype=None, parent_id=False, attachments=None,
content_subtype='html', **kwargs):
Expand Down Expand Up @@ -303,7 +297,7 @@ def read_group(self, domain, fields, groupby, offset=0,
'state_count': 0}
for state_value, state_name in states]
# Get standard results
read_group_res = super(BusinessRequirement, self).\
read_group_res = super().\
read_group(domain, fields, groupby, offset=offset,
limit=limit, orderby=orderby)
# Update standard results with default results
Expand All @@ -321,7 +315,7 @@ def read_group(self, domain, fields, groupby, offset=0,
res[0]['state'] = [state_value, state_name]
result.append(res[0])
return result
return super(BusinessRequirement, self).\
return super().\
read_group(domain, fields, groupby,
offset=offset, limit=limit, orderby=orderby, lazy=lazy)

Expand All @@ -331,7 +325,7 @@ def get_portal_confirmation_action(self):
default='none')

def _compute_portal_url(self):
super(BusinessRequirement, self)._compute_portal_url()
super()._compute_portal_url()
for br in self:
br.portal_url = '/my/business_requirement/%s' % br.id

Expand Down
4 changes: 2 additions & 2 deletions business_requirement/security/security.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
<field name="category_id"
ref="business_requirement.module_category_business_requirement"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
<field name="users" eval="[(4, ref('base.user_admin'))]"/>
</record>

<record id="group_business_requirement_manager" model="res.groups">
Expand All @@ -15,7 +15,7 @@
eval="[(4, ref('business_requirement.group_business_requirement_user'))]"/>
<field name="category_id"
ref="business_requirement.module_category_business_requirement"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
<field name="users" eval="[(4, ref('base.user_admin'))]"/>
</record>

<record id="rule_business_requirement" model="ir.rule">
Expand Down
7 changes: 4 additions & 3 deletions business_requirement/static/description/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -367,7 +367,7 @@ <h1 class="title">Business Requirement</h1>
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/business-requirement/tree/11.0/business_requirement"><img alt="OCA/business-requirement" src="https://img.shields.io/badge/github-OCA%2Fbusiness--requirement-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/business-requirement-11-0/business-requirement-11-0-business_requirement"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/222/11.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p><a class="reference external" href="https://odoo-community.org/page/development-status"><img alt="Beta" src="https://img.shields.io/badge/maturity-Beta-yellow.png" /></a> <a class="reference external" href="http://www.gnu.org/licenses/agpl-3.0-standalone.html"><img alt="License: AGPL-3" src="https://img.shields.io/badge/licence-AGPL--3-blue.png" /></a> <a class="reference external" href="https://github.com/OCA/business-requirement/tree/12.0/business_requirement"><img alt="OCA/business-requirement" src="https://img.shields.io/badge/github-OCA%2Fbusiness--requirement-lightgray.png?logo=github" /></a> <a class="reference external" href="https://translation.odoo-community.org/projects/business-requirement-12-0/business-requirement-12-0-business_requirement"><img alt="Translate me on Weblate" src="https://img.shields.io/badge/weblate-Translate%20me-F47D42.png" /></a> <a class="reference external" href="https://runbot.odoo-community.org/runbot/222/12.0"><img alt="Try me on Runbot" src="https://img.shields.io/badge/runbot-Try%20me-875A7B.png" /></a></p>
<p>A <strong>Business requirement</strong> (BR) is the expression of a business need by a customer
or internal project user.</p>
<p>A BR contains multiple different parts to explain the stakeholder need and how to
Expand Down Expand Up @@ -418,7 +418,7 @@ <h1><a class="toc-backref" href="#id1">Bug Tracker</a></h1>
<p>Bugs are tracked on <a class="reference external" href="https://github.com/OCA/business-requirement/issues">GitHub Issues</a>.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed
<a class="reference external" href="https://github.com/OCA/business-requirement/issues/new?body=module:%20business_requirement%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<a class="reference external" href="https://github.com/OCA/business-requirement/issues/new?body=module:%20business_requirement%0Aversion:%2012.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">feedback</a>.</p>
<p>Do not contact contributors directly about support or help with technical issues.</p>
</div>
<div class="section" id="credits">
Expand All @@ -427,6 +427,7 @@ <h1><a class="toc-backref" href="#id2">Credits</a></h1>
<h2><a class="toc-backref" href="#id3">Authors</a></h2>
<ul class="simple">
<li>Elico Corp</li>
<li>Tecnativa</li>
</ul>
</div>
<div class="section" id="contributors">
Expand Down Expand Up @@ -463,7 +464,7 @@ <h2><a class="toc-backref" href="#id6">Maintainers</a></h2>
<p>OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/business-requirement/tree/11.0/business_requirement">OCA/business-requirement</a> project on GitHub.</p>
<p>This module is part of the <a class="reference external" href="https://github.com/OCA/business-requirement/tree/12.0/business_requirement">OCA/business-requirement</a> project on GitHub.</p>
<p>You are welcome to contribute. To learn how please visit <a class="reference external" href="https://odoo-community.org/page/Contribute">https://odoo-community.org/page/Contribute</a>.</p>
</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion business_requirement/tests/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
# © 2017-2019 Elico Corp (https://www.elico-corp.com).
# Copyright 2017-2019 Elico Corp (https://www.elico-corp.com).
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from . import test_br
Loading

0 comments on commit a525304

Please sign in to comment.