aboutsummaryrefslogtreecommitdiffstats
path: root/datamaps/api/api.py
blob: c9f9a64f4cf08c631a80977e784ab4585edfb7c6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
from ..core import Quarter
from ..plugins.dft.master import Master


def project_data_from_master_api(master_file: str, quarter: int, year: int):
    """Create a Master object directly without the need to explicitly pass
    a Quarter object.

    Args:
        master_file (str): the path to a master file
        quarter (int): an integer representing the financial quarter
        year (int): an integer representing the year
    """
    m = Master(Quarter(quarter, year), master_file)
    return m

def project_data_from_master_month_api(master_file: str, month: int, year: int):
    """Create a Master object directly without the need to explicitly pass
    a Month object.

    Args:
        master_file (str): the path to a master file
        month (int): an integer representing the month
        year (int): an integer representing the year
    """
    # we need to work out what Quarter we are dealing with from the month
    if month in [1, 2, 3]:
        quarter = 4
    elif month in [4, 5, 6]:
        quarter = 1
    elif month in [7, 8, 9]:
        quarter = 2
    elif month in [10, 11, 12]:
        quarter = 3
    else:
        pass
        # TODO: raise exception here
    m = Master(Quarter(quarter, year), master_file)
    return m