lims: services unplanned report: code refactoring

This commit is contained in:
Adrián Bernardi 2021-07-27 11:45:46 -03:00
parent 35981162e0
commit af7d0fa1f6

View file

@ -6185,21 +6185,7 @@ class PendingServicesUnplannedReport(Report):
else:
labs = [l.id for l in Laboratory.search([])]
clause = [
('plannable', '=', True),
('state', '=', 'unplanned'),
('analysis.behavior', '!=', 'internal_relation'),
('service.fraction.confirmed', '=', True),
]
if data['start_date']:
clause.append(
('service.confirmation_date', '>=', data['start_date']))
if data['end_date']:
clause.append(
('service.confirmation_date', '<=', data['end_date']))
if data['party']:
clause.append(('party', '=', data['party']))
clause = cls._get_details_clause(data)
objects = {}
with Transaction().set_user(0):
details = EntryDetailAnalysis.search(clause)
@ -6308,6 +6294,24 @@ class PendingServicesUnplannedReport(Report):
report_context['objects'] = objects
return report_context
@classmethod
def _get_details_clause(cls, data):
clause = [
('plannable', '=', True),
('state', '=', 'unplanned'),
('analysis.behavior', '!=', 'internal_relation'),
('service.fraction.confirmed', '=', True),
]
if data['start_date']:
clause.append(
('service.confirmation_date', '>=', data['start_date']))
if data['end_date']:
clause.append(
('service.confirmation_date', '<=', data['end_date']))
if data['party']:
clause.append(('party', '=', data['party']))
return clause
@classmethod
def _get_estimated_waiting(cls, detail_id):
cursor = Transaction().connection.cursor()