From 75af1d5615059aae096d4a658a6172a75a84a7cf Mon Sep 17 00:00:00 2001 From: "pawan.sharma" Date: Wed, 22 Jun 2022 15:26:37 +0530 Subject: [PATCH 1/5] add active project filter --- cor_custom/models/analytic.py | 1 + cor_custom/views/analytic_view.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/cor_custom/models/analytic.py b/cor_custom/models/analytic.py index e082d91..a6cbfc9 100755 --- a/cor_custom/models/analytic.py +++ b/cor_custom/models/analytic.py @@ -53,6 +53,7 @@ class AccountAnalyticLine(models.Model): parent_project = fields.Many2one('project.project', related='project_id.parent_project', string='Parent Project') sub_project = fields.Many2one('project.project', domain="[('is_sub_project', '=', True)]", string='Sub Project') + active_project = fields.Boolean(related='project_id.active', store=True) @api.onchange('project_id') def _onchange_sub_project_id(self): diff --git a/cor_custom/views/analytic_view.xml b/cor_custom/views/analytic_view.xml index 64ebee5..7fedeec 100755 --- a/cor_custom/views/analytic_view.xml +++ b/cor_custom/views/analytic_view.xml @@ -81,6 +81,7 @@ + From 314c775c5889cb19fe3585407a033581792e9af5 Mon Sep 17 00:00:00 2001 From: "pawan.sharma" Date: Thu, 28 Jul 2022 17:59:32 +0530 Subject: [PATCH 2/5] remove project create option in timesheet and remove 24 hr validation in timesheet --- cor_custom/models/analytic.py | 4 ++-- cor_custom/views/analytic_view.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cor_custom/models/analytic.py b/cor_custom/models/analytic.py index e082d91..5363463 100755 --- a/cor_custom/models/analytic.py +++ b/cor_custom/models/analytic.py @@ -254,8 +254,8 @@ class AccountAnalyticLine(models.Model): value._onchange_start_end_date_time() if value.unit_amount == 0.0: raise ValidationError(_("Your can not fill 0.0 hour entry")) - if value.unit_amount >= 24.0: - raise ValidationError(_("Your can not fill more than 24.0 hour entry")) + # if value.unit_amount >= 24.0: + # raise ValidationError(_("Your can not fill more than 24.0 hour entry")) return value def write(self, vals): diff --git a/cor_custom/views/analytic_view.xml b/cor_custom/views/analytic_view.xml index 64ebee5..f93cd16 100755 --- a/cor_custom/views/analytic_view.xml +++ b/cor_custom/views/analytic_view.xml @@ -66,7 +66,7 @@ - From b240db41c6cd40c8184237a066b51c37a41ba529 Mon Sep 17 00:00:00 2001 From: "pawan.sharma" Date: Fri, 29 Jul 2022 16:51:13 +0530 Subject: [PATCH 3/5] add timesheet hours context menu in sub-project --- sub_project/models/sub_project.py | 19 +++++++++++++ sub_project/views/sub_project.xml | 46 +++++++++++++++++++++++++++++-- 2 files changed, 62 insertions(+), 3 deletions(-) diff --git a/sub_project/models/sub_project.py b/sub_project/models/sub_project.py index 18b8c91..ae52b6d 100755 --- a/sub_project/models/sub_project.py +++ b/sub_project/models/sub_project.py @@ -9,6 +9,25 @@ class SubProject(models.Model): sub_project = fields.Many2many('project.project', 'project_subproject_rel', 'project_id', 'id', 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') + total_timesheet_time_sub_project = fields.Integer(compute='_compute_total_timesheet_time_sub_project') + + @api.depends('timesheet_ids') + def _compute_total_timesheet_time_sub_project(self): + for project in self: + total_time = 0.0 + value = project.timesheet_ids.search([('sub_project', '!=', False)]) + for timesheet in value: + total_time += timesheet.unit_amount * timesheet.product_uom_id.factor_inv + # Now convert to the proper unit of measure set in the settings + total_time *= project.timesheet_encode_uom_id.factor + #project.total_timesheet_time_sub_project = int(round(total_time)) + project.total_timesheet_time_sub_project = total_time + + def action_view_custom_sub_project(self): + action = self.env["ir.actions.actions"]._for_xml_id("hr_timesheet.timesheet_action_all") + action['domain'] = [('sub_project', '=', self.id)] + action['context'] = {'search_default_sub_project': self.id} + return action # @api.onchange('parent_project', 'sub_project') # def onchange_parent_project_sub_project(self): diff --git a/sub_project/views/sub_project.xml b/sub_project/views/sub_project.xml index 497e85d..20db701 100755 --- a/sub_project/views/sub_project.xml +++ b/sub_project/views/sub_project.xml @@ -8,6 +8,45 @@ + +
+ +
@@ -15,8 +54,9 @@ - + + + project.project.invoice.form.inherit project.project - + - + + + + + + + + project.project.form.inherit + project.project + + +
- + @@ -67,7 +77,6 @@ --> -
From 51bfc960c373f1f4c7f8e7dd965c0f5bd02fda3d Mon Sep 17 00:00:00 2001 From: "pawan.sharma" Date: Mon, 1 Aug 2022 12:14:39 +0530 Subject: [PATCH 5/5] remove project create option from timesheet for all views --- cor_custom/views/analytic_view.xml | 4 ++-- cor_custom/views/project_view.xml | 18 +++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/cor_custom/views/analytic_view.xml b/cor_custom/views/analytic_view.xml index f93cd16..8bae471 100755 --- a/cor_custom/views/analytic_view.xml +++ b/cor_custom/views/analytic_view.xml @@ -163,7 +163,7 @@ - @@ -229,7 +229,7 @@ - + diff --git a/cor_custom/views/project_view.xml b/cor_custom/views/project_view.xml index f4dc19a..879ad51 100755 --- a/cor_custom/views/project_view.xml +++ b/cor_custom/views/project_view.xml @@ -6,12 +6,12 @@ project.project - -
-
-
+ +
+
+