def lambda_handler(event, context):

    query_cmd = "select count(*) from prediction"

    conn = make_conn()

    cur = conn.cursor()

    lastUpdateDate = list(
        fetch_data(
            conn,
            """SELECT submission_date from prediction ORDER BY submission_date DESC Limit 1"""
        )[0])[0]
    cur.execute("""SELECT * from prediction WHERE submission_date = '%s';""" %
                (lastUpdateDate))
    rawData = cur.fetchall()

    arrAverage = []
    for data in rawData:
        json_data = list(data)
        arrAverage.append({
            'year': json_data[0][u'year'],
            'debt': json_data[1]
        })
    conn.close()
    return json.dumps({'averages': arrAverage})
Example #2
0
def getformname(custid):
    conn = make_conn()
    query_cmd = "select TemplateName, TemplateMasterID  from TemplateMaster where UserID = " \
                "" + str(custid) + ';'
    result = fetch_data(conn, query_cmd)
    conn.close()
    return result
Example #3
0
def getformdata(formid):
    conn = make_conn()

    query_cmd = "select FieldMaster.FieldName, FieldDetails.FieldValue from FieldDetails " \
                "INNER JOIN FieldMaster ON FieldMaster.FieldMasterID = FieldDetails.FieldMasterID " \
                "WHERE FieldDetails.TemplateCustomerMappingID = " + str(formid) + ";"
    result = fetch_data(conn, query_cmd)
    conn.close()
    return result
Example #4
0
def getformfields(formnumber):
    conn = make_conn()
    query_cmd = "select FieldMasterID, FieldName from FieldMaster where TemplateMasterID" \
                " = " + str(formnumber) + ";"
    # query_cmd = "select FieldMasterID, FieldName from FieldMaster where TemplateMasterID = 1;"
    result = fetch_data(conn, query_cmd)

    conn.close()
    return result
def lambda_handler(event, context):

    averageObj = []

    query_cmd = "select count(*) from prediction"

    conn = make_conn()

    cur = conn.cursor()

    events = fetch_data(conn, """SELECT event from prediction""")

    dicAverage = {}
    for data in events:
        json_dict = list(data)[0]
        if str(json_dict[u'year']) in dicAverage.keys():
            dicAverage[str(json_dict[u'year'])].append(json_dict[u'debt'])
        else:
            dicAverage[str(json_dict[u'year'])] = [json_dict[u'debt']]

    submission_date = datetime.datetime.now()
    print("---> submission date\n", submission_date, "\n")

    averages = {}

    for data in event['data']:

        def sum_list(items):
            sum_numbers = 0
            for x in items:
                sum_numbers += x
            return sum_numbers

        average = data['debt']
        if dicAverage.get(str(data['year'])) is not None:
            prev_debts = dicAverage[str(data['year'])]
            average = (sum_list(prev_debts) +
                       data['debt']) / (len(prev_debts) + 1)

        averages[str(data['year'])] = average

        cur.execute(
            """INSERT INTO prediction (event, submission_date, average) VALUES (%s::json, %s, %s);""",
            (json.dumps(data), submission_date, average))

    conn.commit()
    conn.close()

    return {
        'statusCode': 200,
        'headers': {
            'Content-Type': 'application/json'
        },
        'body': averages
    }