""" Presentation of account fact sales data Presents fact_sales model data with specific response format. """ from ows_accounting import features def revenues(results): """Get proper format of list of account revenues. Args: results (list): revenue data from model fact_sales. Returns: list: list of account revenue dictionaries. """ return [revenue(result) for result in results] def revenue(result): """Get proper format of account revenue. Args: result (dict): single account revenue data. Returns: dict: account revenue dictionary. """ data = { 'period_id': int(result[0]), 'revenue': float(result[1]), 'num_transactions': int(result[2]) } if features.is_vendor_gross_net_enabled(): try: data['gross_revenue'] = float(result[3]) except IndexError: data['gross_revenue'] = 0 return data