def induction():
    return redirect("approval")
    form = InductionForm()

    if request.method == 'POST':
        if form.validate():
            if form.correct_to_invoice.data == 'y':
                correct = True
            else:
                correct = False

            if form.replacement_available.data == 'y':
                replacement = True
            else:
                replacement = False

            if form.light_noted.data == 'y':
                noted = True
            else:
                noted = False

            if correct:
                r = models.Order(
                    invoice_num=form.invoice_num.data,
                    side=form.side.data,
                    light_type=form.light_type.data,
                    correct_to_invoice=correct,
                    induction_employee_code=form.induction_employee_code.data,
                    light_noted=noted,
                    induction_date=datetime.now(),
                    status='Pending',
                    light_type_comments=form.light_type_comments.data)
            else:
                r = models.Order(
                    invoice_num=form.invoice_num.data,
                    side=form.side.data,
                    light_type=form.light_type.data,
                    correct_to_invoice=correct,
                    induction_employee_code=form.induction_employee_code.data,
                    induction_date=datetime.now(),
                    status='Rejected',
                    replacement_available=replacement,
                    replacement_comments=form.replacement_comments.data,
                    light_type_comments=form.light_type_comments.data)

            db.session.add(r)
            db.session.commit()

            #return render_template('thanks.html')
            flash('Record saved.')
            return redirect("induction")
        else:
            print(form.errors)

    return render_template('induction.html', form=form)
def post_booking(request):
    print(request.POST)
    property_id = request.POST['property_id']
    start_date = request.POST['start_date']
    end_date = request.POST['end_date']
    guest_number = request.POST['guest_number']
    sd = datetime.datetime.strptime(start_date, '%m/%d/%Y').date()
    ed = datetime.datetime.strptime(end_date, '%m/%d/%Y').date()
    if not models.Order.objects.filter(start_date__lte=ed,
                                       end_date__gte=sd,
                                       propertyID_id=property_id).exists():
        order = models.Order()
        order.propertyID = models.Property.objects.get(id=property_id)
        # order.propertyID.rent_times += 1
        # order.propertyID.save()
        order.tenantID = request.user
        order.start_date = sd
        order.end_date = ed
        order.tenant_number = guest_number
        order.save()
        return HttpResponse(1)
    else:
        return HttpResponse(2)

    return HttpResponse(3)
def add_order():
    order_id = request.json['order_id']
    qty = request.json['qty']
    number = request.json['number']
    customer = request.json['customer']
    email = request.json['email']
    product = request.json['product']
    status = request.json['status']
    note = request.json['note']
    identification = request.json['identification']
    city = request.json['city']
    province = request.json['province']
    
    new_order = md.Order(
        order_id = order_id,
        qty = qty,
        number = number,
        customer = customer,
        email = email,
        product = product,
        status = status,
        note = note,
        identification = identification,
        city = city,
        province = province
    )

    md.db.session.add(new_order)
    md.db.session.commit()
    return md.order_schema.jsonify(new_order)
示例#4
0
def create_order():
    params = request.get_json()
    new_order = models.Order(params.get('customer_id'), params.get('weight'),
                             params.get('price_per_kilo'), datetime.now())
    db.session.add(new_order)
    db.session.commit()

    return jsonify({"message": "OK"})
    def test_create(self, session_maker):
        session = session_maker()
        assert 0 == session.query(models.Order).count()

        user = self.create_fake_user(session)
        order = models.Order(user_id=user.id)
        session.add(order)
        session.commit()
        assert 1 == session.query(models.Order).count()
        assert order == session.query(models.Order).first()
示例#6
0
 def post(self):
     """Create a new order"""
     data = request.json
     order = models.Order(title=data['title'], payer_id=data['contactId'])
     db.session.add(order)
     for appointment in data['appointments']:
         app = models.Appointment(customer_id=appointment['customerId'], order_id=order.id,
                                  timeslot_id=appointment['slotId'])
         app.order = order
         db.session.add(app)
     db.session.commit()
     db.session.refresh(order, ['id'])
     return order, 201
示例#7
0
文件: routes.py 项目: MikelDB/veygo
def checkout(cart_code):
    cart = models.Cart.query.filter(models.Cart.code == cart_code).first()
    order_code = uuid.uuid1()
    order = models.Order(code=str(order_code),
                         final_price=calculateTotalPriceFromCart(cart),
                         elements=transformCartElementsToOrderElements(
                             cart.elements, order_code),
                         discounts=cart.discounts,
                         final_price_decimals=2)
    cart.checked_out = True
    db.session.add(order)
    db.session.commit()

    return {'code': order_code}
示例#8
0
    def create_fake_order(self, session, user=None, create_items=True):
        if not user:
            user = self.create_fake_user(session)

        order = models.Order(user_id=user.id)
        session.add(order)
        session.commit()

        if create_items:
            order_item = self.create_fake_order_item(session, order=order)
            order.items = order_item

        session.add(order)
        session.commit()
        return order
    def post(cls):
        data = api.payload

        new_order = models.Order()
        if data["cart_id"] > 0:
            cart_id = data["cart_id"]
            cart = models.Cart.query.get(cart_id)
            if cart:
                for cartline in cart.cart_lines:
                    new_orderline = models.OrderLine()
                    new_orderline.order = new_order
                    new_orderline.product_id = cartline.product_id
                    new_orderline.quantity = cartline.quantity
                    db.session.add(new_orderline)

            if data["user_id"] > 0:
                user_id = data["user_id"]
                user = models.User.query.get(user_id)
                if user:
                    new_order.user = user

            new_order.billing_address1 = data["billing_address1"]
            new_order.billing_address2 = data["billing_address2"]
            new_order.billing_city = data["billing_city"]
            new_order.billing_state = data["billing_state"]
            new_order.billing_zip = data["billing_zip"]
            new_order.shipping_address1 = data["shipping_address1"]
            new_order.shipping_address2 = data["shipping_address2"]
            new_order.shipping_city = data["shipping_city"]
            new_order.shipping_state = data["shipping_state"]
            new_order.shipping_zip = data["shipping_zip"]
            new_order.contact = data["contact"]
            new_order.date_created = datetime.now()
            cart.status = models.Cart.CartStatus.CLOSE
        else:
            return api.abort(400)

        try:
            db.session.add(new_order)
            db.session.add(cart)
            db.session.commit()
        except Exception as ex:
            db.session.rollback()
            return api.abort(500, ex)
        return {"order_id": new_order.id}, 200
示例#10
0
def populate_samples():
    """Creates default content in the database"""
    vgr = models.Customer(firstname='Vincent',
                          lastname='Girard-Reydet',
                          phone='06.13.283.000',
                          email='vincent;girardreydet___@gmail___.com')
    sd = models.Customer(firstname='Sara',
                         lastname='Doukkali',
                         phone='06.09.40.00.00',
                         email='sara_doukkali___@yahoo___.fr')
    ts1 = models.TimeSlot(start=datetime.datetime(2017, 12, 1, 8, 45),
                          duration=7200,
                          trainers='JP,Germain',
                          capacity=8,
                          free_capacity=8)
    ts2 = models.TimeSlot(start=datetime.datetime(2017, 12, 1, 11, 55),
                          duration=7200,
                          trainers='JP',
                          capacity=4,
                          free_capacity=4)
    ts3 = models.TimeSlot(start=datetime.datetime(2017, 12, 1, 14, 30),
                          duration=7200,
                          trainers='JP,Germain',
                          capacity=8,
                          free_capacity=8)
    ts4 = models.TimeSlot(start=datetime.datetime(2017, 12, 1, 17, 00),
                          duration=7200,
                          trainers='JP,Germain',
                          capacity=8,
                          free_capacity=8)
    vgr.create()
    sd.create()
    ts1.create()
    ts2.create()
    ts3.create()
    ts4.create()

    o1 = models.Order(payer=vgr, title='vgr: Sample order')
    o1.create()

    a1 = models.Appointment(customer=vgr, order=o1, timeslot=ts1)
    a2 = models.Appointment(customer=vgr, order=o1, timeslot=ts2)
    a1.create()
    a2.create()
示例#11
0
def create_order(
    request: schemas.OrderRequestType,
    db: Session = Depends(db.db_connection),
    current_user: schemas.UserRequestType = Depends(oauth2.get_current_user),
):
    customer = db.query(m.Customer).first()
    if db.query(m.Order).filter_by(code=request.code).first():
        raise HTTPException(status_code=status.HTTP_403_FORBIDDEN,
                            detail="Order already existed")
    else:
        new_order: m.Order = m.Order(
            code=request.code,
            customer_id=customer.id,
        )
        db.add(new_order)
        db.commit()
        db.refresh(new_order)

        return new_order
示例#12
0
def place_order():
    r = request.get_json()
    account = models.Account.query.filter_by(name=r['account']).first()
    o = models.Order(owner=account,
                     stock=r['stock'],
                     type=r['type'],
                     side=r['side'],
                     volume=r['volume'],
                     limit=r['limit'])
    db.session.add(o)
    db.session.commit()
    response = {
        "id": o.id,
        "side": o.side,
        "volume": o.volume,
        "limit": o.limit,
        "status": "open"
    }
    while (catan_ex.trade(r['stock'])):
        pass
    return make_response(jsonify({"response": response}), 200)
    def test_create_with_multiple_items(self, session_maker):
        session = session_maker()
        user = self.create_fake_user(session)
        items = self.create_fake_items(session, _quantity=10)

        assert 0 == session.query(models.Order).count()
        order = models.Order(user_id=user.id)
        session.add(order)
        session.commit()

        order = session.query(models.Order).first()
        order_item = self.create_fake_order_item(
            session, order=order, items=items
        )
        session.add(order)
        session.commit()
        assert 1 == session.query(models.Order).count()
        assert order == session.query(models.Order).first()

        assert 10 == len(items)
        assert 10 == len(order.items)
        for item, order_item in zip(items, order.items):
            assert item.id == int(order_item.item_id)
示例#14
0
def order_fixture(_create_fake_user_and_item, session_maker):
    session = session_maker()

    order = models.Order(user_id=_create_fake_user_and_item.user.id, )
    session.add(order)
    session.flush()

    items = _create_fake_user_and_item.items
    for item in items:
        order_item = models.OrderItem(
            order_id=order.id,
            item_id=item.id,
            price=round(random.uniform(1, 100), 2),
            discount=round(random.uniform(1, 100), 2),
            quantity=random.randint(1, 20),
        )
        session.add(order_item)

    session.flush()
    session.commit()

    info = collections.namedtuple('info', 'order session')
    return info(order=order, session=session)
def approval():
    form = ApprovalForm()

    if request.method == 'POST':
        if form.validate():
            #Add any images to S3_Bucket
            s3 = boto3.resource('s3')
            """
			if image_URI_list[len(image_URI_list)-1] == None or image_URI_list[len(image_URI_list)-1] == '':
				image_URI_list = image_URI_list[:-1]
				print
				print
				print("FOUND BLANK IMAGE")
				print("length of list is..")
				print(len(image_URI_list))
			"""
            s3_image_list = []
            files = request.files.getlist('files[]')
            if files:
                for f in files:
                    if (f.content_type == 'image/png'):
                        base64_URI = f.stream
                        s3_filename = uuid4(
                        ).hex + '.png'  #Generate random filename
                        s3.Bucket(S3_BUCKET).put_object(
                            Key=s3_filename,
                            Body=base64_URI,
                            ContentType='image/png',
                            ACL='public-read')
                        i = models.Image(file_name=s3_filename,
                                         s3_bucket=S3_BUCKET,
                                         approval_date=datetime.now())
                        s3_image_list.append(i)
            """
			if form.approval_type.data == 'Recon':

				r = Order.query.filter_by(invoice_num=form.invoice_num.data).first()

				for s3_image in s3_image_list:
					r.images.append(s3_image)

				r.approval_employee_code = form.approval_employee_code.data
				r.tracking_number = form.tracking_number.data

				if form.have_repair.data == 'y':
					r.have_repair = True
					r.repair_comments = form.repair_comments.data
				else:
					r.have_repair = False
				
				if form.stickered_engraved.data == 'y':
					r.stickered_engraved = True
				else:
					r.stickered_engraved = False

				r.light_approved = form.light_approved.data
				if form.light_approved.data != 'Yes':
					r.approval_comments = form.approval_comments.data

				r.approval_type = 'Recon'
				r.notes = form.notes.data
				r.approval_date = datetime.now()
				r.status = 'Approved'

			else:
			"""
            print("SWAP: " + str(form.swap_out.data))

            if form.light_approved.data != 'Yes':
                comm = form.approval_comments.data
            else:
                comm = ''

            r = models.Order(
                invoice_num=form.invoice_num.data,
                tracking_number=form.tracking_number.data,
                approval_employee_code=form.approval_employee_code.data,
                light_approved=form.light_approved.data,
                notes=form.notes.data,
                approval_comments=comm,
                approval_type=form.approval_type.data,
                light_type=form.light_type.data,
                interchange=form.interchange.data,
                approval_date=datetime.now(),
                tested_bare=form.tested_bare.data,
                repair_comments=form.repair_comments.data,
                have_repair=form.have_repair.data,
                swap_out=form.swap_out.data,
                bake_wash=form.bake_wash.data,
                light_noted=form.light_noted.data,
                status='Approved')

            for s3_image in s3_image_list:
                r.images.append(s3_image)

            db.session.add(r)

            db.session.commit()

            flash('Record saved.')
            return redirect("approval")
        else:
            return json.dumps(form.errors)

    return render_template('approval.html', form=form)
示例#16
0
 def create_order(self, data):
     order = models.Order(customer=data['customer'])
     for detail in data['detail']:
         order.add_product(detail['product'], detail['quantity'])
     return order
示例#17
0
def create_order():
    return jsonify(
        models.Order(id=uuid.uuid4(), img=None, prd=None, box=None, price=0))