def queryOne(self): '''前台:查询一个商品信息''' com_num=input("请输入需要查询商品的编号:") res=Basic.queryOneCommodity(com_num) if not res:#res为空 print("没有该商品") else: table=comm=Commodity.getTableaHead() table.add_row(res) print(table,end="\n\n")
def delOneCommodity(self): '''''' com_no=input("请输入要移除的商品的编号:").strip() com=Basic.queryOneCommodity(com_no) if com==[]: print("不存在该商品.") return cmd=input("确认移除该商品?(移除后所有与该商品有关的进出货记录都会删除.y/n)").strip() if cmd[0]=='y'or cmd[0]=='Y': Basic.delOneCommodity(com_no) print("操作成功.") else: print("操作失败.")
def addCom(self): '''前台: 添加购物车 ''' com_num=input("请输入商品编号:").strip() com_info=Basic.queryOneCommodity(com_num) if not com_info: print("商品不存在.") return com=Commodity(com_info) com_cnt=int(input("请输入商品数量:").strip()) if com_cnt <=0: print("购买数量必须大于0.") return if com_cnt>com.getQuantiy() : print("商品库存不足.") else : self.car.addCommodity(com,com_cnt) print("添加进入购物车成功.")
def modifyOneCommodity(self): com_num = input("请输入要修改的商品编号:").strip() com = Basic.queryOneCommodity(com_num) if com == []: print("该商品不存在.") return com_name = input("请输入修改后的商品名称:").strip() com_type = input("请输入修改后的商品类型:").strip() com_size = input("请输入修改后的规格:").strip() com_price = float(input("请输入修改后的单价:").strip()) com_mdate = input("请输入修改后的生产日期(格式 年-月-日):").strip() com_edate = input("请输入修改后的过期日期(格式 年-月-日):").strip() com_quantity = int(input("请输入修改后的库存数量:").strip()) try: Basic.modifyOneCommodity(com_num, com_name, com_type, com_size, com_price, com_mdate, com_edate, com_quantity) print("修改商品成功") except Exception as e: print("修改商品失败,原因:", e)
def purchase(self): '''前台 进货''' com_num = input("请输入要进货的商品编号:").strip() com = Basic.queryOneCommodity(com_num) if com == []: print("该商品不存在,请先添加该商品.") return com_cnt = int(input("请输入进货的数量:").strip()) com_price = float(input("请输入进货的单价:").strip()) in_date = input("请输入进货日期(格式 年-月-日):").strip() try: num = self.getFlowNum() Basic.addOneStock(self.admin.getNo(), com_num, num, com_price, com_cnt, in_date) Basic.addOneCommodityCnt(com_num, com_cnt) print("操作成功.") except Exception as e: print("操作失败,原因:", e)
def addOneCommodity(self): '''''' com_num = input("请输入要添加的商品编号:").strip() com = Basic.queryOneCommodity(com_num) if com != []: print("该商品已存在不能重复添加.") return com_name = input("请输入商品名称:").strip() com_type = input("请输入商品类型:").strip() com_size = input("请输入规格:").strip() com_price = float(input("请输入单价:").strip()) com_mdate = input("请输入生产日期(格式 年-月-日):").strip() com_edate = input("请输入过期日期(格式 年-月-日):").strip() com_quantity = int(input("请输入库存数量:").strip()) try: Basic.addOneCommodity(com_num, com_name, com_type, com_size, com_price, com_mdate, com_edate, com_quantity) print("添加商品成功") except Exception as e: print("添加商品失败,原因:", e)
def getBothTopStatic(left, right, com_no): '''返回列表 每个元素是一个商品对象和cnt''' all_sell = Basic.queryAllSell() cnt_dict = {} for DA in all_sell: sell = Sell(DA) com_no = sell.getComNo() if com_no == None: continue now_date = sell.getTime().date() if now_date >= left and now_date <= right: cnt_dict.setdefault(com_no, 0) cnt_dict[com_no] += 1 cnt_list = [] for com_num in cnt_dict: #key 编号,value is cnt ob = Basic.queryOneCommodity(com_num) cnt_list.append(pair(Commodity(ob), cnt_dict[com_num])) cnt_list.sort(key=lambda x: (x.cnt), reverse=True) return cnt_list