def insert_at_last_order(delivery_id, date, driver_id): last = db.select( table="delivery_orders", selected_columns=("MAX(num_order)",), conditions={"date": date, "driver_id": driver_id}, multiple=False, ) last = last["MAX(num_order)"] + 1 if isinstance(last["MAX(num_order)"], int) else 1 db.insert( table="delivery_orders", params={"num_order": last, "date": date, "delivery_id": delivery_id, "driver_id": driver_id}, )
def create(): company_id = session["user"]["company_id"] driver = request.get_json(force=True) driver = Driver.parse(driver, "create") if "errors" in driver: return jsonify(errors=driver["errors"]),400 driver = driver["driver"] if db.is_existing(table="users", conditions={"name": driver["name"], "type":"driver", "company_id":company_id}): return jsonify(info="Driver with the same name already exist"),400 if db.is_existing(table="users", conditions={"email": driver["email"], "type":"driver", "company_id": company_id}): return jsonify(info="Driver with the same email already exist"),400 pwd = Generator.password() driver_data={ "name" : driver["name"], "email" : driver["email"], "password" : generate_password_hash(pwd), "company_id" : company_id, "phone" : driver["phone"], "type":"driver" } driverId = db.insert(table="users", params=driver_data) return jsonify(info="Driver created successfully", driverId=driverId, password=pwd),200
def generate_random(): req = request.get_json(force=True) company_id = session["user"]["company_id"] list_content = ["fish", "glass", "vegetables", "fragile", "frozen", "wood", "letter", "material", "electronic"] random_weight = lambda : round(random.uniform(0.10, 2000.00),2) random_area = lambda : round(random.uniform(0.10, 34.00), 2) customer_ids = db.select(table="customers", selected_columns=("id",), conditions={"company_id" : company_id}, multiple=True) random_receiver = lambda id : random.choice([v["id"] for v in customer_ids if v["id"]!=id ]) for x in range(0, 5): delivery = { "customer_id" : random.choice(customer_ids)["id"], "sender_id" : random.choice(customer_ids)["id"], "date_due" : req["date_due"], "date_created" : req["date_due"], "content" : random.choice(list_content), "area" : random_area(), "weight" : random_weight(), "company_id" : company_id } delivery["receiver_id"] = random_receiver(delivery["sender_id"]) er = 3 delivery_id = db.insert(table="deliveries", params=delivery) assign_driver(delivery_id, 3) # if x <3 : # db.update(table="deliveries",params={"state" : "taken"}, conditions={"id": delivery_id, "company_id": company_id}) # # if x>=3 and x<5: # db.update(table="deliveries",params={"state" : "on way"}, conditions={"id": delivery_id, "company_id": company_id}) # # if x==7 : # db.update(table="deliveries",params={"state" : "picked up"}, conditions={"id": delivery_id, "company_id": company_id}) # # if x==8 : # db.update(table="deliveries",params={"state" : "delivered"}, conditions={"id": delivery_id, "company_id": company_id}) return jsonify(info="done"), 200
def create(): company_id = session["user"]["company_id"] rq = request.get_json(force=True) vehicle = Vehicle.parse(rq, "create") if "errors" in vehicle: return jsonify(errors=vehicle["errors"]), 400 vehicle = vehicle["vehicle"] if db.is_existing(table="vehicles", conditions={"registration": vehicle["registration"], "company_id": company_id}): return jsonify(info="Vehicle with the same registration already exist"), 400 vehicle_data = { "registration": vehicle["registration"], "type": vehicle["type"], "max_weight": vehicle["max_weight"], "max_area": vehicle["max_area"], "company_id": company_id, } vehicle_id = db.insert(table="vehicles", params=vehicle_data) return jsonify(info="Vehicle created successfully", vehicleId=vehicle_id)
def create(): args = request.get_json(force=True) delivery = Delivery.parse(args, "create") if "errors" in delivery: return jsonify(errors=delivery["errors"]), 400 delivery = delivery["delivery"] delivery["company_id"] = session["user"]["company_id"] if not db.is_existing(table="customers", conditions={"id": delivery["customer_id"]}): return jsonify(info="Customer not found"), 404 # check existing customer if not db.is_existing(table="customers", conditions={"id": delivery["sender_id"]}): return jsonify(info="Sender not found"), 404 # check existing customer if not db.is_existing(table="customers", conditions={"id": delivery["receiver_id"]}): return jsonify(info="Receiver not found"), 404 delivery_id = db.insert(table="deliveries", params=delivery) return jsonify(info="Delivery created successfully", deliveryId=delivery_id), 200
def create(): req = request.get_json(force=True) customer = Customer.parse(req, "create") if "errors" in customer: return jsonify(errors=customer["errors"]),400 customer = customer["customer"] ### check customer name duplication company_id = session["user"]["company_id"] if db.is_existing(table="customers", conditions={"name":customer["name"], "company_id":company_id}): return jsonify(info="Customer with the same name already exist"),400 # record customer data = { "name" : customer["name"], "address" : customer["address"], "location_lat" : customer["location"]["lat"], "location_lng" : customer["location"]["lng"], "phone" : customer["phone"], "company_id" : company_id } customerId= db.insert(table="customers", params=data) return jsonify(info="Customer created successfully", customerId=customerId),200