Code cleanup for excel complete.

This commit is contained in:
lwark
2025-09-04 14:49:21 -05:00
parent 0c20ade65a
commit 1a90543639
2 changed files with 2 additions and 12 deletions

View File

@@ -1,8 +1,5 @@
''' """
Contains pandas and openpyxl convenience functions for interacting with excel workbooks Contains pandas and openpyxl convenience functions for interacting with excel workbooks
''' """
# from .parser import *
from backend.excel.parsers.clientsubmission_parser import ClientSubmissionInfoParser, ClientSubmissionSampleParser from backend.excel.parsers.clientsubmission_parser import ClientSubmissionInfoParser, ClientSubmissionSampleParser
# from .reports import *
# from .writer import *

View File

@@ -7,8 +7,6 @@ from pandas import DataFrame, ExcelWriter
from pathlib import Path from pathlib import Path
from datetime import date from datetime import date
from typing import Tuple, List from typing import Tuple, List
# from backend import Procedure
from backend.db.models import Procedure, Run from backend.db.models import Procedure, Run
from tools import jinja_template_loading, get_first_blank_df_row, row_map, flatten_list from tools import jinja_template_loading, get_first_blank_df_row, row_map, flatten_list
from PyQt6.QtWidgets import QWidget from PyQt6.QtWidgets import QWidget
@@ -47,7 +45,6 @@ class ReportMaker(object):
self.start_date = start_date self.start_date = start_date
self.end_date = end_date self.end_date = end_date
# NOTE: Set page size to zero to override limiting query size. # NOTE: Set page size to zero to override limiting query size.
# self.runs = Run.query(start_date=start_date, end_date=end_date, page_size=0)
self.procedures = Procedure.query(start_date=start_date, end_date=end_date, page_size=0) self.procedures = Procedure.query(start_date=start_date, end_date=end_date, page_size=0)
if organizations is not None: if organizations is not None:
self.procedures = [procedure for procedure in self.procedures if procedure.run.clientsubmission.clientlab.name in organizations] self.procedures = [procedure for procedure in self.procedures if procedure.run.clientsubmission.clientlab.name in organizations]
@@ -63,9 +60,7 @@ class ReportMaker(object):
""" """
if not self.procedures: if not self.procedures:
return DataFrame(), DataFrame() return DataFrame(), DataFrame()
# df = DataFrame.from_records([item.to_dict(report=True) for item in self.runs])
df = DataFrame.from_records([item.details_dict() for item in self.procedures]) df = DataFrame.from_records([item.details_dict() for item in self.procedures])
logger.debug(df.columns)
# NOTE: put procedure with the same lab together # NOTE: put procedure with the same lab together
df = df.sort_values("clientlab") df = df.sort_values("clientlab")
# NOTE: aggregate cost and sample count columns # NOTE: aggregate cost and sample count columns
@@ -203,14 +198,12 @@ class TurnaroundMaker(ReportArchetype):
class ConcentrationMaker(ReportArchetype): class ConcentrationMaker(ReportArchetype):
def __init__(self, start_date: date, end_date: date, submission_type: str = "Bacterial Culture", def __init__(self, start_date: date, end_date: date, submission_type: str = "Bacterial Culture",
# controls_only: bool = True):
include: List[str] = []): include: List[str] = []):
self.start_date = start_date self.start_date = start_date
self.end_date = end_date self.end_date = end_date
# NOTE: Set page size to zero to override limiting query size. # NOTE: Set page size to zero to override limiting query size.
self.subs = Run.query(start_date=start_date, end_date=end_date, self.subs = Run.query(start_date=start_date, end_date=end_date,
submissiontype_name=submission_type, page_size=0) submissiontype_name=submission_type, page_size=0)
# self.sample = flatten_list([sub.get_provisional_controls(controls_only=controls_only) for sub in self.run])
try: try:
self.samples = flatten_list([sub.get_provisional_controls(include=include) for sub in self.subs]) self.samples = flatten_list([sub.get_provisional_controls(include=include) for sub in self.subs])
except AttributeError: except AttributeError: