def create_new_company(): security.has_csrf_token(session["csrf_token"]) security.has_role([4, 5, 6]) compname = request.form["compname"] address = request.form["address"] email = request.form["email"] country = request.form["country"] route = request.form["route"] success = companies.create_company(compname, address, email, country, route) if success == False: if security.has_auth([4, 6]): return render_template("/sale/sale_create_company.html", compname=compname, address=address, route=route, email=email, country=country) if security.has_auth([5]): return render_template("/buyer/buyer_create_new_supplier.html", compname=compname, address=address, route=route, email=email, country=country) else: if security.has_auth([4, 6]): return redirect("/create_company") if security.has_auth([5]): return redirect("/create_new_supplier")
def sales_by_month(): security.has_role([4, 6]) security.has_csrf_token(request.form["csrf_token"]) year = request.form["year"] return orders.get_sales_by_year(year)
def create_new_company_user(): security.has_role([4, 6]) security.has_csrf_token(request.form["csrf_token"]) username = request.form["username"] password = request.form["password"] password_check = request.form["password_check"] company_id = request.form["company_id"] company = companies.get_company(company_id) if company_id == None or company_id == '' or company == None: flash("A company must be selected.", "danger") return render_template("sale/sale_create_company_user.html", username=username, company_id=company_id, companies=companies.get_all_companies()) if password != password_check: flash("Passwords doesn't match.", "danger") return render_template("sale/sale_create_company_user.html", username=username, company_id=company_id, companies=companies.get_all_companies()) else: users.create_user(username, password, 1, company_id) return redirect("/create_company_user")
def delete_order(): security.has_role([4, 6]) security.has_csrf_token(request.form["csrf_token"]) order_id = request.form["order_id"] orders.delete_order_by_order_id(order_id) return redirect("/list_orders")
def change_password(): security.has_csrf_token(request.form["csrf_token"]) old_password = request.form["old_password"] new_password = request.form["new_password"] validate = request.form["validate"] users.change_password(old_password, validate, new_password) return redirect("/company_info")
def change_user_password(): security.has_role([6]) security.has_csrf_token(request.form["csrf_token"]) username = request.form["username"] old_password = request.form["old_password"] new_password = request.form["new_password"] validate = request.form["validate"] users.change_password(old_password, validate, new_password, username) return render_template("controller/controller_change_user_password.html", users=users.get_all_users())
def create_batch(): security.has_role([2, 6]) security.has_csrf_token(request.form["csrf_token"]) order_id = request.form["order_id"] qty = request.form["qty"] logistics.create_new_batch(order_id, qty) return redirect("/#form")
def create_shipment(): security.has_role([3, 6]) security.has_csrf_token(request.form["csrf_token"]) order_id = request.form["order_id"] logistics.create_new_shipment(order_id) return redirect("/")
def collect_batch(): security.has_role([3, 6]) security.has_csrf_token(request.form["csrf_token"]) order_id = request.form["order_id"] batch_nr = request.form["batch_nr"] qty = request.form["qty"] logistics.collect_to_batchorder(order_id, qty, batch_nr) return redirect("/collect_order/%s#form" % (order_id))
def update_sale_order(): security.has_role([1, 4, 6]) security.has_csrf_token(request.form["csrf_token"]) item_id = request.form["item_id"] qty = request.form["qty"] order_id = request.form["order_id"] company_id = request.form["company_id"] orders.update_sale_order_item_qty(order_id, item_id, company_id, qty) return "OK"
def add_item_to_order(): security.has_role([1, 4, 6]) security.has_csrf_token(request.form["csrf_token"]) item_id = request.form["item_id"] order_id = request.form["order_id"] company_id = request.form["company_id"] qty = request.form["qty"] orders.add_item_to_sale_order(order_id, company_id, item_id, qty) return redirect("/modify_order/%s" % order_id)
def update_supply_order(): security.has_role([2, 6]) security.has_csrf_token(request.form["csrf_token"]) order_id = request.form["order_id"] qty = request.form["qty"] logistics.update_supply_order_qty(order_id, qty) if security.has_auth([6]): return redirect("/controller_supply_orders") return redirect("/supply_order_inventory#form")
def update_batch(): security.has_role([2, 6]) security.has_csrf_token(request.form["csrf_token"]) batchnr = request.form["batchnr"] qty = request.form["qty"] logistics.update_batch_qty(batchnr, qty) if security.has_auth([6]): return redirect("/controller_batches") return redirect("/batch_inventory#form")
def update_cart_item_qty(): security.has_csrf_token(request.form["csrf_token"]) security.has_role([1, 4, 5, 6]) item_id = request.form["item_id"] qty = request.form["qty"] cart = list(session["cart"]) for i in range(len(cart)): if cart[i]["item_id"] == item_id: cart[i]["qty"] = qty session["cart"] = cart return "OK"
def remove_item_from_cart(): security.has_csrf_token(request.form["csrf_token"]) security.has_role([1, 4, 5, 6]) item_id = request.form["item_id"] cart = list(session["cart"]) new_list = [] for i in range(len(cart)): if cart[i]["item_id"] != item_id: new_list.append(cart[i]) session["cart"] = new_list return "OK"
def add_new_item(): security.has_role([5, 6]) security.has_csrf_token(request.form["csrf_token"]) itemname = request.form["name"] price = request.form["price"] item.add_item(itemname, price) if security.has_auth([6]): return redirect("/controller_list_items#form") return redirect("/items#form")
def create_new_user(): security.has_role([6]) security.has_csrf_token(request.form["csrf_token"]) username = request.form["username"] password = request.form["password"] validate = request.form["password_check"] auth_lvl = request.form["auth_lvl"] success = users.create_user(username, password, validate, auth_lvl) if success == False: return render_template("controller/controller_create_new_user.html", auth_lvl=auth_lvl, username=username) return redirect("/controller_create_new_user")
def remove_item_From_sale_order(): security.has_role([1, 4, 6]) security.has_csrf_token(request.form["csrf_token"]) item_id = request.form["item_id"] order_id = request.form["order_id"] order_deleted = orders.remove_item_from_sale_order(item_id, order_id) removed_item = item.get_item_by_id(item_id) if order_deleted: flash("Last item removed from order %s" % (order_id), "warning") return redirect("/list_orders") flash("%s removed from order" % removed_item[1], "success") return redirect("/modify_order/%s" % order_id)
def finalize_order(): security.has_csrf_token(request.form["csrf_token"]) security.has_role([1, 4, 5, 6]) company_id = None if session["auth_lvl"] == 4: company_id = request.form["company_id"] random_number = str(randint(0, 9999999)) order_id = random_number.zfill(7) user_id = users.get_user_id() cart = session["cart"] orderList = [] for i in range(len(cart)): order = None if security.has_auth([4]): order = {'order_id': order_id, 'company_id': company_id, 'item_id': cart[i]["item_id"], 'qty': cart[i]["qty"], 'user_id': user_id, 'price': cart[i]["price"]} if security.has_auth([1, 5, 6]): order = {'order_id': order_id, 'company_id': cart[i]["company_id"], 'item_id': cart[i]["item_id"], 'qty': cart[i]["qty"], 'user_id': user_id, 'price': cart[i]["price"]} orderList.append(order) session["cart"] = [] if security.has_auth([5, 6]): orders.create_supply_order(orderList) flash("Order was successful", "success") return order_id if security.has_auth([1, 4]): success = orders.create_sale_order(order_id, orderList) if success: return order_id else: flash("Sale order unsuccessful", "danger")
def add_item_to_cart(): security.has_csrf_token(request.form["csrf_token"]) security.has_role([1, 4, 5, 6]) item = None if session["auth_lvl"] == 1: company_id = users.get_company_id() else: company_id = request.form["company_id"] item_name = request.form["item_name"] item_id = request.form["item_id"] qty = request.form["qty"] price = request.form["price"] user_id = users.get_user_id() cart = list(session["cart"]) if session["auth_lvl"] == 6 or session["auth_lvl"] == 5 or session["auth_lvl"] == 1: item = {"company_id": company_id, "item_id": item_id, "item_name": item_name, "qty": qty, "price": price, "user_id": user_id} if session["auth_lvl"] == 4: item = {"item_id": item_id, "item_name": item_name, "qty": qty, "price": price, "user_id": user_id} new_item = True for i in range(len(cart)): if cart[i]["item_id"] == item_id: cart[i]["qty"] = int(cart[i]["qty"]) + int(qty) cart[i]["price"] = price new_item = False if new_item: cart.append(item) session["cart"] = cart return str(len(cart))
def clear_cart(): security.has_csrf_token(request.form["csrf_token"]) security.has_role([1, 4, 5, 6]) session["cart"] = {} return "OK"
def inventory_report(): security.has_role([5, 6]) security.has_csrf_token(request.form["csrf_token"]) return logistics.inventory_data()