Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import Order
- import BoundedPriorityQueue
- import string
- def main_function():
- orderFile = open("inputFileName", 'r')
- lines = orderFile.readlines()
- myQueue = BoundedPriorityQueue.BoundedPriorityQueue(4)
- orderNumber=0
- totalSales = {"redOrders":0, "redItems":0, "whiteOrders":0, "whiteItems":0, "blueOrders":0, "blueItems":0}
- for item in lines:
- color=""
- name=""
- quantity=0
- priority=0
- print item.number
- if "name:" in item:
- name = item
- if name.isdigit():
- print "you cannot enter a number for the customer name. Order cancelled."
- continue
- if "color:" in item:
- index = string.find(item, ": ")
- color = item[index+1:]
- if color !="red" and color != "white" and color !="blue":
- print "Sorry that's not a color we offer. Order cancelled."
- continue
- if "quantity:" in item:
- index = string.find(item, ": ")
- quantity = item[index+1:]
- # check if the quantity is a negative number or not a number
- if int(quantity) < 0:
- print "You can't order a negative number of our product! Order cancelled. "
- continue
- if "priority:" in item:
- index = string.find(item, ": ")
- priority = item[index+1:]
- order = Order.Order(orderNumber, name, color, quantity, priority)
- if myQueue.isFull:
- print "Clearing the orders queue:"
- while (myQueue.is_empty() != True):
- item = myQueue.dequeue()
- if item.color == "red":
- totalSales["redItems"] = totalSales["redItems"] + quantity
- totalSales["redOrders"] = totalSales["redOrders"] + 1
- if item.color == "white":
- totalSales["whiteItems"] = totalSales["whiteItems"] + quantity
- totalSales["whiteOrders"] = totalSales["whiteOrders"] + 1
- if item.color == "blue":
- totalSales["blueItems"] = totalSales["blueItems"] + quantity
- totalSales["blueOrders"] = totalSales["blueOrders"] + 1
- print " Order shipped:"
- print " Order " + str(item.number) + ": customer " + item.name + " requests " + str(item.quantity) + " " + item.color + " widgets. (priority: "+ str(item.priority)+")"
- print "Queue empty"
- print "Enqueuing order:"
- print " Order " + str(item.number) + ": customer " + item.name + " requests " + str(item.quantity) + " " + item.color + " widgets. (priority: " + str(item.priority) + ")"
- myQueue.enqueue(order)
- orderNumber = orderNumber + 1
- print " "
- print "Total sales"
- print " Red orders: " + totalSales["redOrders"] + " Total red widgets: " + totalSales["redItems"]
- print " White orders: " + totalSales["whiteOrders"] + " Total white widgets: " + totalSales["whiteItems"]
- print " Blue orders: " + totalSales["blueOrders"] + " Total blue widgets: " + totalSales["blueItems"]
- if __name__ == "__main__":
- main_function()
Add Comment
Please, Sign In to add comment