示例#1
0
def get_order_product(product_name, price):
    order_product = OrderProduct(Product.query.filter_by(
        event_id=6, name=product_name).one(),
                                 price=price,
                                 status='accepted')
    order_product.registration = registration
    return order_product
示例#2
0
    def get_order_product_model(self, product_model, product_form, form):
        price = self.get_total_price(product_model, product_form, form)
        ws = self.get_waiting_lists(product_model)
        dance_role = product_form.dance_role.data

        if product_form.add_partner.data or product_form.partner_token.data:
            status = ORDER_PRODUCT_STATUS_WAITING if ws else ORDER_PRODUCT_STATUS_ACCEPTED
        else:
            status = ORDER_PRODUCT_STATUS_WAITING

        order_product = OrderProduct(
            product_model,
            price,
            dict(dance_role=dance_role),
            status=status
        )

        # register partner
        if product_form.add_partner.data:
            dance_role = flip_role(dance_role)
            status = ORDER_PRODUCT_STATUS_WAITING if ws else ORDER_PRODUCT_STATUS_ACCEPTED
            order_product2 = OrderProduct(product_model, price,
                                         dict(dance_role=dance_role), status=status)

            return [order_product, order_product2]
        return order_product
示例#3
0
    def get_order_product_model(self, product_model, product_form, form):
        price = self.get_total_price(product_model, product_form, form)
        ws = self.get_waiting_lists(product_model)
        dance_role = self._get_buyer_role(product_form, form)

        if product_form.add.data == WORKSHOP_OPTIONS.COUPLE or product_form.partner_token.data:
            status = ORDER_PRODUCT_STATUS_WAITING if ws[1][dance_role] else ORDER_PRODUCT_STATUS_ACCEPTED
        else:
            status = ORDER_PRODUCT_STATUS_WAITING if ws[0][dance_role] else ORDER_PRODUCT_STATUS_ACCEPTED

        order_product = OrderProduct(
            product_model,
            price,
            dict(dance_role=dance_role),
            status=status
        )

        # register partner
        if product_form.add.data == WORKSHOP_OPTIONS.COUPLE:
            partner_name = form.partner_name.data
            price2 = self.get_total_price(product_model, product_form, form, partner_name)
            dance_role2 = flip_role(dance_role)
            status2 = ORDER_PRODUCT_STATUS_WAITING if ws[1][dance_role2] else ORDER_PRODUCT_STATUS_ACCEPTED
            order_product2 = OrderProduct(product_model, price2,
                                         dict(dance_role=dance_role2), status=status2)

            return [order_product, order_product2]
        return order_product
示例#4
0
    def get_order_product_model(self, product_model, product_form, form):
        price = self.get_total_price(product_model, product_form, form)
        order_product = OrderProduct(product_model, price, status=ORDER_PRODUCT_STATUS_ACCEPTED)

        # register partner
        ticket_form = self._get_selected_included_product_form(form)
        if ticket_form and ticket_form.add.data == FESTIVAL_TICKET.COUPLE:
            order_product2 = OrderProduct(product_model, price, status=ORDER_PRODUCT_STATUS_ACCEPTED)
            return [order_product, order_product2]

        return order_product
示例#5
0
    def get_order_product_model(self, product_model, product_form, form):
        price = self.get_total_price(product_model, product_form, form)
        order_product = OrderProduct(product_model, price, status=ORDER_PRODUCT_STATUS_ACCEPTED)

        # register partner
        if product_form.add.data == FESTIVAL_TICKET.COUPLE:
            partner_name = form.partner_name.data
            price2 = self.get_total_price(product_model, product_form, form)
            order_product2 = OrderProduct(product_model, price2, status=ORDER_PRODUCT_STATUS_ACCEPTED)
            return [order_product, order_product2]

        return order_product
示例#6
0
def test_OrderSummaryController_show_order_summary():
    order = Order(total_price=100, transaction_fee=1.5)
    order_controller = OrderSummaryController(order=order)
    assert order_controller.show_order_summary == False

    product = Product('Test', 'Test')
    order.order_products.append(OrderProduct(product, 10))
    order_controller = OrderSummaryController(order=order)
    assert order_controller.show_order_summary == True
示例#7
0
 def get_order_product_model(self, product_model, product_form, form):
     price = self.get_total_price(product_model, product_form, form)
     partner_name = form.partner_name.data
     partner_email = form.partner_email.data
     ws = self.get_waiting_lists(product_model)
     status = ORDER_PRODUCT_STATUS_WAITING if ws else ORDER_PRODUCT_STATUS_ACCEPTED
     order_product = OrderProduct(product_model, price, status=status,
                                  details_dict={'partner_name':partner_name, 'partner_email':partner_email})
     return order_product
示例#8
0
patrick_private = Product.query.filter_by(id=5).one()

registration1 = Registration(
    name='Aleksandr Vinokurov',
    email='*****@*****.**',
    comment='Good luck with getting the MA! All the best!',
    registered_datetime='2017-05-28 18:18:57')
registration1.crowdfunding_registration_properties = \
                CrowdfundingRegistrationProperties(anonymous=1)
order1 = Order(total_price=20,
               transaction_fee=0.5,
               status='paid',
               order_datetime='2017-05-28 18:18:57',
               stripe_charge_id='ch_1AOVyfHQoe2Uj5fJugrd2ZhT')
order1.registration = registration1
order1_product = OrderProduct(price=order1.total_price, product=donate_product)
order1.order_products.append(order1_product)
event.orders.append(order1)

registration2 = Registration(
    name='Noelle',
    email='*****@*****.**',
    comment='Happy Birthday gorgeous and enjoy your MA!! ',
    registered_datetime='2017-05-29 13:41:31')
registration2.crowdfunding_registration_properties = \
                CrowdfundingRegistrationProperties(anonymous=0)
order2 = Order(total_price=25,
               transaction_fee=0.575,
               status='paid',
               order_datetime='2017-05-29 13:41:31',
               stripe_charge_id='ch_1AOo7iHQoe2Uj5fJ78wy9Z3p')
示例#9
0
event = models.Event.query.filter_by(
    event_key='salty_recipes_with_simona_rokas').one()
print(event.name)

NAME = 'Louis Carruthers'
EMAIL = '*****@*****.**'
PRICE = 0
ROLE = DANCE_ROLE_LEADER
#ROLE = DANCE_ROLE_FOLLOWER

registration = Registration(name=NAME, email=EMAIL, comment='Manually added')

user_order = Order()
for product_model in event.products:
    order_product = OrderProduct(product_model,
                                 PRICE,
                                 dict(dance_role=ROLE),
                                 status=ORDER_PRODUCT_STATUS_ACCEPTED)
    order_product.registrations.append(registration)
    user_order.order_products.append(order_product)

user_order.transaction_fee = 0
user_order.total_price = user_order.products_price

user_order.registration = registration
add_payment_to_user_order(user_order)

total_paid = sum([p.amount for p in user_order.payments]) or 0
user_order.payment_due = user_order.total_price - total_paid

# has_paid = any([p.status == PAYMENT_STATUS_PAID for p in user_order.payments])
user_order.status = ORDER_STATUS_PAID
示例#10
0
 def get_order_product_model(self, product_model, product_form, form):
     price = self.get_total_price(product_model, product_form, form)
     status =  ORDER_PRODUCT_STATUS_ACCEPTED
     order_product = OrderProduct(product_model, price, status=status)
     return order_product