add employee from wizard

This commit is contained in:
pawan.sharma 2022-08-18 11:49:00 +05:30
parent ba09ef0c11
commit dd60cde243
6 changed files with 78 additions and 4 deletions

View File

@ -24,12 +24,13 @@
# always loaded
'data': [
'wizard/project_resource_wizard.xml',
'security/ir.model.access.csv',
'security/cor_custom_security.xml',
'views/crm_view.xml',
'views/sale_views.xml',
'views/project_view.xml',
#'views/project_hours_view.xml',
# 'views/project_hours_view.xml',
'views/hr_employee_views.xml',
'views/res_users.xml',
'views/hr_timesheet_templates.xml',
@ -41,9 +42,9 @@
'views/templates.xml',
'views/assets.xml',
'data/mail_data.xml',
#'views/menu_show_view.xml',
# 'views/menu_show_view.xml',
'wizard/project_create_sale_order_views.xml',
'wizard/project_multi_budget_assign_view.xml',
'wizard/project_multi_budget_assign_view.xml'
],
# only loaded in demonstration mode
'demo': [

View File

@ -10,4 +10,6 @@ access_model_project_multi_budget_assign_line_pmanager,project.multi.budget.assi
access_project_consultant_hrs_report_puser,project.consultant.hrs.report,model_project_consultant_hrs_report,project.group_project_user,1,0,0,0
access_project_consultant_hrs_report_pmanager,project.consultant.hrs.report,model_project_consultant_hrs_report,project.group_project_manager,1,1,1,1
access_custom_project_tags_puser,custom.project.tags,model_custom_project_tags,project.group_project_user,1,1,1,1
access_project_resource_wizard,project.resource.wizard,model_project_resource_wizard,,1,1,1,0
access_project_resource_line,project.resource.line,model_project_resource_line,,1,1,1,0

1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
10 access_project_consultant_hrs_report_puser project.consultant.hrs.report model_project_consultant_hrs_report project.group_project_user 1 0 0 0
11 access_project_consultant_hrs_report_pmanager project.consultant.hrs.report model_project_consultant_hrs_report project.group_project_manager 1 1 1 1
12 access_custom_project_tags_puser custom.project.tags model_custom_project_tags project.group_project_user 1 1 1 1
13 access_project_resource_wizard project.resource.wizard model_project_resource_wizard 1 1 1 0
14 access_project_resource_line project.resource.line model_project_resource_line 1 1 1 0
15

View File

@ -61,6 +61,7 @@
options="{'no_create': True, 'no_edit': True, 'delete': False}"/>
<field name="is_check" invisible="1"/>
</group>
<button name="%(action_project_resource_wizard)d" string="Add Resource" type="action" class="oe_highlight"/>
<field name="sale_line_employee_ids"
attrs="{'invisible': ['|', ('bill_type', '!=', 'customer_project'), ('pricing_type', '!=', 'employee_rate')]}">
<tree editable="top">

View File

@ -3,4 +3,5 @@
from . import project_create_sale_order
from . import crm_opportunity_to_quotation
from . import project_multi_budget_assign
from . import project_multi_budget_assign
from . import project_resource_wizard

View File

@ -0,0 +1,34 @@
from odoo import api, fields, models
from odoo.exceptions import UserError, AccessError, ValidationError
from datetime import datetime
from dateutil import relativedelta
class ProjectResourceWizard(models.TransientModel):
_name = 'project.resource.wizard'
project_id = fields.Many2one('project.project')
add_project_resource = fields.One2many('project.resource.line', 'wizard_id')
def action_add_project_lines(self):
print('11111111111', self.project_id, self.project_id.sale_line_employee_ids)
for record in self.add_project_resource:
values = {
'project_id':record.project_id.id,
'employee_id': record.employee_id.id,
'start_date':record.start_date,
'end_date':record.end_date,
}
res = self.project_id.sale_line_employee_ids.create(values)
return res
class ProjectResourceLine(models.Model):
_name = "project.resource.line"
_description = "Project Resource Line"
wizard_id = fields.Integer()
project_id = fields.Many2one('project.project')
employee_id = fields.Many2one('hr.employee')
start_date = fields.Date(required=True)
end_date = fields.Date(required=True)

View File

@ -0,0 +1,35 @@
<odoo>
<record id="view_edit_project_resource_lines" model="ir.ui.view">
<field name="name">project.resource.wizard</field>
<field name="model">project.resource.wizard</field>
<field name="arch" type="xml">
<form string="Project Resource Wizard">
<group>
<group>
<field name="project_id" readonly="1"/>
</group>
<field name="add_project_resource">
<tree editable="bottom">
<field name="project_id"/>
<field name="employee_id"/>
<field name="start_date"/>
<field name="end_date"/>
</tree>
</field>
</group>
<footer>
<button string="OK" type="object" name="action_add_project_lines" class="btn-primary"/>
<button string="Cancel" class="btn-default" special="cancel"/>
</footer>
</form>
</field>
</record>
<record id="action_project_resource_wizard" model="ir.actions.act_window">
<field name="name">Project Resource wizard</field>
<field name="res_model">project.resource.wizard</field>
<field name="view_id" ref="cor_custom.view_edit_project_resource_lines"/>
<field name="target">new</field>
<field name="context">{ 'default_project_id': active_id, 'project_id': active_id }</field>
</record>
</odoo>