[NEW] Add grade models and grade management
This commit is contained in:
@@ -61,6 +61,7 @@ This module is maintained by ELABORE.
|
||||
"data": [
|
||||
"views/vote.xml",
|
||||
"views/candidate.xml",
|
||||
"views/grade_model.xml",
|
||||
"views/menus.xml",
|
||||
"security/ir.model.access.csv",
|
||||
],
|
||||
|
@@ -9,6 +9,7 @@ class MajorityJudgementGradeModel(models.Model):
|
||||
|
||||
name = fields.Char(string=_("Name"), required=True)
|
||||
color = fields.Integer("Color Index", default=0)
|
||||
sequence = fields.Integer()
|
||||
|
||||
|
||||
class MajorityJudgementGrade(models.Model):
|
||||
@@ -17,4 +18,5 @@ class MajorityJudgementGrade(models.Model):
|
||||
|
||||
name = fields.Char(string=_("Name"), required=True)
|
||||
color = fields.Integer("Color Index", default=0)
|
||||
sequence = fields.Integer()
|
||||
vote_id = fields.Many2one("vote", string=_("Vote"))
|
||||
|
@@ -26,6 +26,25 @@ class MajorityJudgementVote(models.Model):
|
||||
copy=False,
|
||||
)
|
||||
|
||||
@api.model
|
||||
def create(self, values):
|
||||
record = super(MajorityJudgementVote, self).create(values)
|
||||
record.generate_default_grades()
|
||||
return record
|
||||
|
||||
def generate_default_grades(self):
|
||||
for grade in self.grade_ids:
|
||||
grade.unlink()
|
||||
grade_models = self.env["grade.model"].search([])
|
||||
for model in grade_models:
|
||||
vals = {
|
||||
"name": model.name,
|
||||
"color": model.color,
|
||||
"sequence": model.sequence,
|
||||
"vote_id": self.id,
|
||||
}
|
||||
self.env["grade"].create(vals)
|
||||
|
||||
def action_open_vote(self):
|
||||
self.state = "opened"
|
||||
|
||||
|
@@ -2,4 +2,5 @@ id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
|
||||
access_vote_manager,access_vote_manager,model_vote,base.group_user,1,1,1,1
|
||||
access_voter_manager,access_voter_manager,model_voter,base.group_user,1,1,1,1
|
||||
access_grade_manager,access_grade_manager,model_grade,base.group_user,1,1,1,1
|
||||
access_grade_model_manager,access_grade_model_manager,model_grade_model,base.group_user,1,1,1,1
|
||||
access_candidate_manager,access_candidate_manager,model_candidate,base.group_user,1,1,1,1
|
|
16
majority_judgement/views/grade_model.xml
Normal file
16
majority_judgement/views/grade_model.xml
Normal file
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<odoo>
|
||||
<record id="grade_model_tree_view" model="ir.ui.view">
|
||||
<field name="name">grade.model.tree.view</field>
|
||||
<field name="model">grade.model</field>
|
||||
<field name="priority">0</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Grade Models" editable="top">
|
||||
<field name="sequence" widget="handle" />
|
||||
<field name="name" />
|
||||
<field name="color" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
@@ -12,9 +12,23 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="action_view_grade_models_list">
|
||||
<field name="name">Grade Models</field>
|
||||
<field name="res_model">grade.model</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="help" type="html">
|
||||
<p class="o_view_nocontent_smiling_face">
|
||||
Create a grade model
|
||||
</p>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<menuitem id="majority_judgement_menu_root" name="Majority Judgements" sequence="60" web_icon="majority_judgement,static/description/icon.png" />
|
||||
|
||||
<menuitem id="majority_judgement_men" name="Majority Judgements" parent="majority_judgement_menu_root" sequence="1" action="action_view_vote_list" />
|
||||
<menuitem id="majority_judgement_menu" name="Majority Judgements" parent="majority_judgement_menu_root" sequence="1" action="action_view_vote_list" />
|
||||
<menuitem id="majority_judgement_configuration_menu" name="Configuration" parent="majority_judgement_menu_root" sequence="2" />
|
||||
<menuitem id="majority_judgement_grade_models_menu" name="Grade Models" parent="majority_judgement_configuration_menu" sequence="1" action="action_view_grade_models_list" />
|
||||
|
||||
|
||||
</odoo>
|
@@ -44,11 +44,13 @@
|
||||
</page>
|
||||
<page name="grades" string="Grades">
|
||||
<field name="grade_ids" create="true">
|
||||
<tree default_order="name">
|
||||
<tree default_order="sequence">
|
||||
<field name="sequence" widget="handle" />
|
||||
<field name="name" />
|
||||
<field name="color" />
|
||||
</tree>
|
||||
</field>
|
||||
<button name="generate_default_grades" string="Re-initialize" class="oe_highlight" type="object" />
|
||||
</page>
|
||||
<page name="voters" string="Voters">
|
||||
<field name="voter_ids" create="true">
|
||||
|
Reference in New Issue
Block a user