def get_price(self): """ 录入新添商品进价,售价 :return: 商品进价,售价 """ while True: source_price = get_number_input("请输入新添商品进价:", is_float=True) price = get_number_input("请输入新添商品售价:", is_float=True) if not self.price_compare(source_price, price): print("售价有误") continue else: return source_price, price
def change_product_count(self): """ 修改库存 :return: """ while True: product_id = get_number_input("请输入更改库存的商品的ID(输入q退出):") if product_id == "q": break if self.db.judge_product_id(product_id): change_count = get_number_input("调整商品库存为:") self.db.change_product_count_db(product_id, change_count) else: continue
def paying(self): """ 发起结算 :return: """ self.create_tcp_socket() request_data = "REQUEST {}".format(self.transform_shopping_cards()) self.skfd.send(request_data.encode()) status_code, msg = get_request(self.skfd.recv(1024).decode()) if status_code == "200": self.send_shopping_cards() status_code, msg = get_request(self.skfd.recv(1024).decode()) if status_code == "200": total_price = Decimal( get_number_input("请输入付款金额:", is_float=True)) if total_price < Decimal(msg): print("金额不足") else: request_data = "PAYING {}$${}".format( self.transform_shopping_cards(), total_price) self.skfd.send(request_data.encode()) status_code, msg = get_request( self.skfd.recv(1024).decode()) print(msg) # 清空购物车 self.shopping_cart.reset_product_list() else: self.aph.paying_error(msg) else: self.aph.paying_error(msg)
def remove_product(self): """ 从购物车中移除商品 :return: """ product_id = get_number_input("请输入需要移除的商品ID:") status, msg = self.shopping_cart.remove_product(product_id) print(msg)
def get_order_detail(self): """ 获取订单详情 :return: """ order_id = get_number_input("请输入订单ID:") data = self.db.get_order_details_db(order_id) for order_detail in data: self.aph.get_order_detail(order_detail)
def get_add_product_input(self): """ 获取用户添加到购物车的输入商品 :return: """ while True: product_id = get_number_input("请输入购买的商品ID:") result = self.db.get_product_msg(product_id) if not result: print("您输入的商品ID有误!") continue else: product_id, name, description, source_price, price, count = result user_input_count = get_number_input("请输入购买的商品个数:") if int(count) < user_input_count: print("商品库存不足!") continue else: return product_id, name, price, user_input_count
def add_product(self): """ 添加新商品 :return:商品信息(名称,描述,进价,售价,数量,ID) """ name = self.get_name() source_price, price = self.get_price() count = get_number_input("请输入数量:") description = self.check_product_desc(input("请输入新添商品描述:")) product_id = self.product_id_str(name) print( self.db.add_db_product( (name, description, source_price, price, count, product_id)))
def remove_product(self): product_id = get_number_input("请输入下架商品的ID:") print(self.db.remove_db_product(product_id))