From 19d0e6e73d2d7f86f61343abe71bc2cc82062336 Mon Sep 17 00:00:00 2001 From: Danny Barajas Date: Fri, 18 Mar 2022 17:51:33 -0500 Subject: [PATCH] test cron to table history --- __init__.py | 3 ++- ir.py | 12 ++++++++++++ party_validation.py | 32 ++++++++++++++++++++++++++++++-- party_validation.xml | 10 +++++----- 4 files changed, 49 insertions(+), 8 deletions(-) create mode 100644 ir.py diff --git a/__init__.py b/__init__.py index 2ff5cd2..d9961fd 100644 --- a/__init__.py +++ b/__init__.py @@ -12,6 +12,7 @@ from . import opportunity from . import party_validation from . import exceptions from . import contract +from . import ir def register(): @@ -37,7 +38,7 @@ def register(): opportunity.OpportunityKind, opportunity.OpportunityKindConcept, opportunity.OpportunityCancelledReason, - + ir.Cron, # opportunity.PartyEvaluationConcept, # opportunity.PartyEvaluation, # party_validation.Validation, diff --git a/ir.py b/ir.py new file mode 100644 index 0000000..a2c6501 --- /dev/null +++ b/ir.py @@ -0,0 +1,12 @@ +from trytond.pool import Pool, PoolMeta + +class Cron(metaclass=PoolMeta): + __name__ = 'ir.cron' + + @classmethod + def __setup__(cls): + super().__setup__() + cls.method.selection.extend([ + ('crm.opportunity.validation.history|table_query_consult', + "Prueba") + ]) diff --git a/party_validation.py b/party_validation.py index 3804596..983456f 100644 --- a/party_validation.py +++ b/party_validation.py @@ -38,6 +38,7 @@ class ValidationTemplateAsk(ModelSQL, ModelView): class ValidationAsk(ModelSQL, ModelView): "Validation Ask" __name__ = "crm.opportunity.validation" + _history = True opportunity = fields.Many2One('crm.opportunity', 'Opportunity', required=True) party = fields.Many2One('party.party', @@ -76,15 +77,42 @@ class ValidationAsk(ModelSQL, ModelView): else: self.date_validation = None -class ValidationHistoryAsk(ModelView, metaclass=PoolMeta): +class ValidationHistoryAsk(ModelView, ModelSQL): "Validation History Ask" - __name__ = "crm.opportunity.validation._history" + __name__ = "crm.opportunity.validation.history" line_ask = fields.Char('Ask', required=True, select=True) # response = fields.Boolean('Response') # sort=False, readonly=True comment = fields.Text('Comments') validated_by = fields.Many2One('res.user', 'User') + @classmethod + def table_query_consult(cls): + Opportunity = Pool().get('crm.opportunity.validation') + print(Opportunity.__name__) + print(Opportunity._history) + opportunity = Opportunity.__table_history__() + query = opportunity.select( + opportunity.line_ask, + opportunity.validated_by + ) + print(opportunity,'tabla') + cursor = Transaction().connection.cursor() + cursor.execute(*query) + result = cursor.fetchall() + print(len(result),'result') + + return opportunity.select( + + # Max(opportunity.create_uid).as_('create_uid'), + # Max(opportunity.create_date).as_('create_date'), + # Max(opportunity.write_uid).as_('write_uid'), + # Max(opportunity.write_date).as_('write_date'), + opportunity.line_ask, + opportunity.validated_by + ) + + # class PartyValidationTraceability(ModelSQL, ModelView): # ''' Model to save traceability of the Party Validation''' # 'Party Validation Traceability' diff --git a/party_validation.xml b/party_validation.xml index 67bf05e..4927b26 100644 --- a/party_validation.xml +++ b/party_validation.xml @@ -95,7 +95,7 @@ this repository contains the full copyright notices and license terms. --> - + - + --> - crm.opportunity.validation._history + crm.opportunity.validation.history tree 10 validation_history_tree - crm.opportunity.validation._history + crm.opportunity.validation.history form validation_history_form Validation Hystory - crm.opportunity.validation._history + crm.opportunity.validation.history