超市管理系统制作

这次我教大家做一个超市管理系统,我个人已经搞到2.1版本了,大家先提前安装mysql数据库!!!

直接上代码!

import pymysql
import time
import random
print("欢迎来到超市管理系统")
#广告部分(这个是代码的一部分,教大家如何在开头插入广告)-------------------------------------------------------------------------------------------
cscs=random.randint(1,3)
if cscs==1:
	print("恭喜你,可以为我们做测试了,测试内容是调查系统Bata 1.0,调查系统Bata 1.0是恰到好处a第一款图形化软件,这次测试是难得的机会,请好好珍惜!按取消继续运行超市管理系统2.1")
	import PySimpleGUI as sg
	layout=[
	[sg.Text("请输入基本信息",font=('宋体',15),relief='raised',border_width=4,right_click_menu=["1",["示例",["姓名示例","性别示例","国藉示例"],["为什么要输入个人信息"]]])],
	[sg.Text('姓名',relief='raised',border_width=4,right_click_menu=["1",["姓名示例"]]),sg.In(None)],
	[sg.Text('性别',relief='raised',border_width=4,right_click_menu=["1",["性别示例"]]),sg.In(None)],
	[sg.Text('国藉',relief='raised',border_width=4,right_click_menu=["1",["国藉示例"]]),sg.In(None)],
	[sg.B('确认'),sg.B("取消")],
	]
	window=sg.Window('基本信息调查',layout)
	while True:
		event,values=window.read()
		if event==None:
			break
		if event=='确认':
			if values[1]=="女":
				sg.Popup("------信息提交成功!,姓名:"+values[0]+",性别:"+values[1]+",国藉:"+values[2]+"------")
			elif values[1]=="男":
				sg.Popup("------信息提交成功!,姓名:"+values[0]+",性别:"+values[1]+",国藉:"+values[2]+"------")
			else:
				sg.Popup("个人信息不符合要求")
		if event=='取消':
			break
		if event=='姓名示例':
			sg.Popup("张XX")
		if event=='性别示例':
			sg.Popup("男")
		if event=='国藉示例':
			sg.Popup("中国")
		if event=="为什么要输入个人信息":
			sg.Popup("这个调查仅仅是在在测试,不会保存你的任何信息")
	window.close()
	print("谢谢参与!")
#----------------------------------------------------------------------
def ld():
	qq=input("请输入密码")
	if qq=="超市管理系统收银员密码":#需要填写
		return "y"
	else:
		print("密码错误,登录失败")
		return "n"
print("正在启动…………")
host = 'localhost'
port = 3306
db = 'csglxt'#新建csglxt这个数据库
user = '你的mysql用户名'
password = '你的mysql密码'

def sjk(host,port,db,user,password):
	try:
		conn = pymysql.connect(host=host, port=port, db=db, user=user, password=password)
		return conn
	except Exception as e:
		print("出现错误,错误码",e,",请联系工作人员处理")
		input("按回车退出")
		exit()
b=sjk(host,port,db,user,password)
b.close()
while 1==1:
	print("--序号--------名称--")
	print("--1.----查看商品信息-")
	print("--2.--------增加商品-")
	print("--3.--------下架商品-")
	print("--4.--------增加库存-")
	print("--5.--------购买商品-")
	print("--6.--------退换商品-")
	print("--7.--------修改价格-")
	print("--8.--------退出系统-")
	try:
		a=int(input("请输入项目编号"))
		if a==1:
			b=sjk(host,port,db,user,password)

			cursor=b.cursor()
			
			sql="select * from pm;"#创建品名表
			cursor.execute(sql)
			c=cursor.fetchall()
			f=0
			for d in c:
				f=0
				print("----------------------")
				for e in d:
				
					f+=1
					if f==1:
						print("品名",e)
					elif f==2:
						print("价格",e)
					else:
						print("库存",e)
			print("----------------------")				
			a=list(c[0])

			b.close()
		elif a==2:
			z=ld()
			if z=="y":
				b=sjk(host,port,db,user,password)
				g=input("请输入品名")
				try:
					h=float(input("请输入价格"))
				except Exception as e:
					print("请输入数字!")
				try:
					j=float(input("新商品目前库存"))
				except Exception as e:
					print("请输入数字!")
				sql='insert into pm(品名,价格,库存) values (%s,%s,%s)'
				cursor=b.cursor()
				
				cursor.execute(sql,(g,h,j))
				b.commit()
				b.close()
		elif a==3:
			z=ld()
			if z=="y":
				b=sjk(host,port,db,user,password)
				k=input("请输入品名")
				sql="delete from pm where 品名=%s;"
				cursor=b.cursor()
				
				cursor.execute(sql,k)
				b.commit()
				b.close()
		elif a==4:
			z=ld()
			if z=="y":
				b=sjk(host,port,db,user,password)
				t=input("请输入品名")
				r=int(input("请输入进了多少货"))
				sql="select * from pm;"
				cursor=b.cursor()
				cursor.execute(sql)
				
				l=cursor.fetchall()
			
				for m in l:
					n=0
					p=0
					
					for o in m:
					
						
						if o==t:
							
							q=m[2]
							break
						n+=1	


			sql="update pm set 库存=%s where 品名=%s"

			cursor=b.cursor()
			u=r+q
			cursor.execute(sql,(u,t))
			
			b.commit()
			b.close()

		elif a==5:
			b=sjk(host,port,db,user,password)
			t=input("请输入品名")
			r=int(input("请输入购买多少"))

			sql="select * from pm;"
			cursor=b.cursor()
			cursor.execute(sql)
			
			l=cursor.fetchall()
			
			for m in l:
				n=0
				p=0
				
				for o in m:
				
					
					if o==t:
						
						q=m[2]
						z=m[1]
						break
					n+=1	


			sql="update pm set 库存=%s where 品名=%s"
			u=q-r
			
			cursor=b.cursor()
			if r<=q:
				cursor.execute(sql,(u,t))
				print("请扫描机器上的二维码,并支付",z*r,"元")
			else:
				
				print("库存不足")
			b.commit()
			b.close()
				
		elif a==6:
			print("请联系工作人员处理")
		elif a==7:
			z=ld()
			if z=="y":
				b=sjk(host,port,db,user,password)
				t=input("请输入品名")
				r=int(input("请输入新的价格"))
				sql="select * from pm;"
				cursor=b.cursor()
				cursor.execute(sql)
				
				l=cursor.fetchall()
				
				for m in l:
					n=0
					p=0
					
					for o in m:
					
						
						if o==t:
							
							q=m[2]
							break
						n+=1	


				sql="update pm set 价格=%s where 品名=%s"

				cursor=b.cursor()
				
				cursor.execute(sql,(r,t))
				
				b.commit()
				b.close()
		elif a==8:
			zzz=input("你是否要退出(1:是,2:否)")
			if zzz=="1":
				print("正在退出…………")
				time.sleep(2)
				exit()
		else:
			print("编号不存在")
	except Exception as e:
		print("请输入数字!")
		

运行效果:

 

 

 

全部代码链接:

cxglxt 2.1.py 等文件 https://www.aliyundrive.com/s/GiX3ipNjoa4icon-default.png?t=M85Bhttps://www.aliyundrive.com/s/GiX3ipNjoa4

感谢关注! 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值