Skip to content

Commit 0f40497

Browse files
committed
[IMP] vcp_management: allow to delete pull requests
1 parent 911460c commit 0f40497

3 files changed

Lines changed: 23 additions & 1 deletion

File tree

vcp_management/models/vcp_comment.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ class VcpComment(models.Model):
3838
comodel_name="vcp.request",
3939
string="Request",
4040
readonly=True,
41+
required=True,
42+
ondelete="cascade",
4143
)
4244
_sql_constraints = [
4345
("external_id_uniq", "unique(external_id)", "External ID must be unique.")

vcp_management/models/vcp_request_label.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33

44
from random import randint
55

6-
from odoo import fields, models, tools
6+
from odoo import _, api, fields, models, tools
7+
from odoo.exceptions import UserError
78

89

910
class VcpRequestLabel(models.Model):
@@ -14,6 +15,12 @@ class VcpRequestLabel(models.Model):
1415

1516
color = fields.Char(default=lambda x: x._default_color())
1617

18+
request_ids = fields.Many2many(
19+
comodel_name="vcp.request",
20+
string="Requests",
21+
readonly=True,
22+
)
23+
1724
_sql_constraints = [("name_uniq", "unique(name)", "Label name must be unique.")]
1825

1926
def _default_color(self):
@@ -25,3 +32,13 @@ def _get_label(self, name):
2532
if not label:
2633
label = self.sudo().create({"name": name})
2734
return label.id
35+
36+
@api.ondelete(at_uninstall=False)
37+
def _check_requests(self):
38+
if self.mapped("request_ids"):
39+
raise UserError(
40+
_(
41+
"You can not delete labels that are related to Requests. "
42+
"You should first delete the related requests."
43+
)
44+
)

vcp_management/security/ir.model.access.csv

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,13 @@ manage_repository_branch,Access Repository Branch,model_vcp_repository_branch,gr
1111
access_rule_information,Access Repository Branch Rule information,model_vcp_rule_information,group_vcp_user,1,0,0,0
1212
manage_rule_information,Access Repository Branch Rule information,model_vcp_rule_information,group_vcp_manager,1,1,1,1
1313
access_request,Access Pull Requests,model_vcp_request,group_vcp_user,1,0,0,0
14+
manage_request,Access Pull Requests,model_vcp_request,group_vcp_manager,1,1,1,1
1415
access_request_label,Access Pull Requests Labels,model_vcp_request_label,group_vcp_user,1,0,0,0
1516
manage_request_label,Access Pull Requests Labels,model_vcp_request_label,group_vcp_manager,1,1,1,1
1617
access_review,Access Reviews,model_vcp_review,group_vcp_user,1,0,0,0
18+
manage_review,Access Reviews,model_vcp_review,group_vcp_manager,1,1,1,1
1719
access_comment,Access Comments,model_vcp_comment,group_vcp_user,1,0,0,0
20+
manage_comment,Access Comments,model_vcp_comment,group_vcp_manager,1,1,1,1
1821
access_vcp_host_type,Access Host Type,model_vcp_host_type,group_vcp_user,1,0,0,0
1922
access_vcp_host,Access Hosts,model_vcp_host,group_vcp_user,1,0,0,0
2023
manage_vcp_host,Nabage Hosts,model_vcp_host,group_vcp_manager,1,1,1,1

0 commit comments

Comments
 (0)