Merge branch 'timesheet_report_sorting' into 'master'
Timesheet report sorting See merge request prakash.jain/cor-odoo!203
This commit is contained in:
commit
95ab6d693c
|
@ -10,22 +10,57 @@ class SubProject(models.Model):
|
|||
domain="[('is_sub_project', '=', True),('parent_project', '=', False)]", string='Sub Project')
|
||||
parent_project = fields.Many2one('project.project', domain="[('is_sub_project', '=', False)]", string='Parent Project')
|
||||
|
||||
@api.onchange('parent_project', 'sub_project')
|
||||
def onchange_parent_project_sub_project(self):
|
||||
user_list = []
|
||||
if self.parent_project.sub_project:
|
||||
user_list = self.parent_project.sub_project.ids
|
||||
user_list.append(self._origin.id)
|
||||
self.parent_project.sub_project = user_list
|
||||
if self.sub_project:
|
||||
for rec in self.sub_project:
|
||||
#print('AAAAAAAAAAA', rec, rec._origin.id)
|
||||
sub_project = self.env['project.project'].search([('id', '=', rec._origin.id)], limit=1)
|
||||
#print('BBBBBBBBBBB', sub_project, self._origin.id)
|
||||
sub_project.write({'parent_project': self._origin.id})
|
||||
# @api.onchange('parent_project', 'sub_project')
|
||||
# def onchange_parent_project_sub_project(self):
|
||||
# if self.parent_project.sub_project:
|
||||
# if self.parent_project:
|
||||
# user_list = self.parent_project.sub_project.ids
|
||||
# print('11111111111', self, self.id, self._origin.id)
|
||||
# user_list.append(self._origin.id)
|
||||
# self.parent_project.sub_project = user_list
|
||||
# else:
|
||||
# self.parent_project.sub_project = self.ids
|
||||
# if self.sub_project:
|
||||
# for rec in self.sub_project:
|
||||
# sub_project = self.env['project.project'].search([('id', '=', rec._origin.id)], limit=1)
|
||||
# sub_project.write({'parent_project': self._origin.id})
|
||||
|
||||
@api.model
|
||||
def create(self, vals):
|
||||
value = super(SubProject, self).create(vals)
|
||||
if value and value.parent_project:
|
||||
if value.parent_project.sub_project:
|
||||
user_list = value.parent_project.sub_project.ids
|
||||
user_list.append(value.id)
|
||||
value.parent_project.sub_project = user_list
|
||||
else:
|
||||
value.parent_project.sub_project = value.ids
|
||||
if value and value.sub_project:
|
||||
value.write({'parent_project': value.id})
|
||||
return value
|
||||
|
||||
def write(self, vals):
|
||||
list1 = self.sub_project.ids
|
||||
res = super(SubProject, self).write(vals)
|
||||
if vals.get('parent_project'):
|
||||
parent_prjt = self.env['project.project'].search([('id', '=', vals.get('parent_project'))], limit=1)
|
||||
user_list = parent_prjt.sub_project.ids
|
||||
user_list.append(self.id)
|
||||
parent_prjt.sub_project = user_list
|
||||
if vals.get('sub_project'):
|
||||
list2 = self.sub_project.ids
|
||||
if len(list2) > len(list1):
|
||||
list3 = (set(list2)) - (set(list1))
|
||||
for record in list(list3):
|
||||
self.env['project.project'].search([('id', '=', int(record))], limit=1).write(
|
||||
{'parent_project': self.id})
|
||||
if len(list1) > len(list2):
|
||||
list3 = (set(list1)) - (set(list2))
|
||||
for record in list(list3):
|
||||
self.env['project.project'].search([('id', '=', int(record))], limit=1).write(
|
||||
{'parent_project': False, 'is_sub_project': False})
|
||||
|
||||
return res
|
||||
|
||||
|
||||
class InheritProjectTask(models.Model):
|
||||
|
|
Loading…
Reference in New Issue