def see_history():
        sql_connection = dbconnection.get_db_connection()
        payments = payment_repository.get_payments_by_order_id(sql_connection,
                                                               txt_order_id.get())
        try:
            order_details = order_repository.get_order_details_by_order_id(
                sql_connection,
                txt_order_id.get())
        except OrderDetailsFoundException as ex:
            tkMessageBox.showinfo("Error", ex.message)
            return
        total_order = order_utils.get_total_order(order_details)
        txt_query.delete(1.0, Tkinter.END)
        count = 0
        for payment in payments:
            count += 1
            readable_date = datetime.datetime.fromtimestamp(int(payment.date)).\
                strftime('%Y-%m-%d')
            payment_str = "payment %d - date:%s - amount:%d" % \
                          (count, readable_date, payment.amount)
            txt_query.insert(Tkinter.INSERT, payment_str)
            txt_query.insert(Tkinter.INSERT, "\n-------------------------------\n")

        total_payments = sum([payment.amount for payment in payments])
        debt = total_order - total_payments
        txt_query.insert(Tkinter.INSERT, "****Total payments up date: %d \n" %
                         total_payments)
        txt_query.insert(Tkinter.INSERT, "****Total order price: %d \n" % total_order)
        txt_query.insert(Tkinter.INSERT, "****Debt up date: %d \n" % debt)
        if debt is 0:
            txt_query.insert(Tkinter.INSERT, "****Congratulations, order Ok! :)\n")

        sql_connection.close()
Example #2
0
    def see_history():
        sql_connection = dbconnection.get_db_connection()
        payments = payment_repository.get_payments_by_order_id(
            sql_connection, txt_order_id.get())
        try:
            order_details = order_repository.get_order_details_by_order_id(
                sql_connection, txt_order_id.get())
        except OrderDetailsFoundException as ex:
            tkMessageBox.showinfo("Error", ex.message)
            return
        total_order = order_utils.get_total_order(order_details)
        txt_query.delete(1.0, Tkinter.END)
        count = 0
        for payment in payments:
            count += 1
            readable_date = datetime.datetime.fromtimestamp(int(payment.date)).\
                strftime('%Y-%m-%d')
            payment_str = "payment %d - date:%s - amount:%d" % \
                          (count, readable_date, payment.amount)
            txt_query.insert(Tkinter.INSERT, payment_str)
            txt_query.insert(Tkinter.INSERT,
                             "\n-------------------------------\n")

        total_payments = sum([payment.amount for payment in payments])
        debt = total_order - total_payments
        txt_query.insert(Tkinter.INSERT,
                         "****Total payments up date: %d \n" % total_payments)
        txt_query.insert(Tkinter.INSERT,
                         "****Total order price: %d \n" % total_order)
        txt_query.insert(Tkinter.INSERT, "****Debt up date: %d \n" % debt)
        if debt is 0:
            txt_query.insert(Tkinter.INSERT,
                             "****Congratulations, order Ok! :)\n")

        sql_connection.close()
def _validate_payment_before_save(sql_connection, payment):
    order_details = order_repository.get_order_details_by_order_id(sql_connection,
                                                                   payment.order_id)
    payments = payment_repository.get_payments_by_order_id(sql_connection,
                                                           payment.order_id)
    total_order = order_utils.get_total_order(order_details)
    total_payments = _get_total_payments_up_date(payments)
    if payment.amount + total_payments > total_order:
        debt = total_order - total_payments
        raise PaymentExceedsValueDebtException("please check the amount, the debt is:%d"
                                               % debt)
    if payment.amount <= 0:
        raise InvalidAmountToSave("Amount needs to be bigger than 0")
Example #4
0
def _validate_payment_before_save(sql_connection, payment):
    order_details = order_repository.get_order_details_by_order_id(
        sql_connection, payment.order_id)
    payments = payment_repository.get_payments_by_order_id(
        sql_connection, payment.order_id)
    total_order = order_utils.get_total_order(order_details)
    total_payments = _get_total_payments_up_date(payments)
    if payment.amount + total_payments > total_order:
        debt = total_order - total_payments
        raise PaymentExceedsValueDebtException(
            "please check the amount, the debt is:%d" % debt)
    if payment.amount <= 0:
        raise InvalidAmountToSave("Amount needs to be bigger than 0")