超市仓库管理系统python+tkinter

一个非常简陋的作业…
结果图片

关于

管理员登录




Python代码

import pymssql
from tkinter import *
import tkinter as tk
import tkinter.font as tkFont
import tkinter.messagebox as messagebox
from PIL import Image, ImageTkclass AdminPage:def __init__(self,window):# top = tk.Toplevel()#self.root1 = Tk()# window.update()window.destroy()self.root1= tk.Toplevel()self.root1.geometry('960x540')self.root1.title('请登录') image = Image.open("C:/acg.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root1,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root1, text='账号',font=('华文行楷', 20),bg='Ivory', width=5, height=1)label.place(x = 100, y=170)self.w = tk.Entry(self.root1, width=20,  font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 175, y = 175)label1 = tk.Label(self.root1, text='密码',font=('华文行楷', 20),bg='Ivory',width=5, height=1)label1.place(x = 100, y=220)self.w1 = tk.Entry(self.root1, width=20,  font=tkFont.Font(size=14), bg='Ivory',show = "*")self.w1.place(x = 175, y = 225)btn1 =  Button(self.root1, text="登陆", bg = 'lightcyan',width=8, font=('华文行楷', 30), command= self.login)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)btn2 = Button(self.root1, text="返回首页", bg = 'lightcyan',width=8, font=('华文行楷', 30), command=lambda: start(self.root1))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root1.mainloop()def login(self):username = self.w.get()password = self.w1.get()if(username == 'h') and (password == '1'):messagebox.showinfo('登录系统', '登录成功')messagebox.showinfo('','正在链接数据库...')conn = pymssql.connect(host='localhost',database='master',charset = 'GBK')cur = conn.cursor()if cur:messagebox.showinfo('',"连接成功!")operatechoice(self.root1)#messagebox.showinfo('登录系统', '登录成功')else:messagebox.showinfo('登录系统', '登录失败,用户名或密码错误')class AdminPage1:def __init__(self,window):window.destroy()self.root1= tk.Toplevel()self.root1.geometry('960x540')self.root1.title('请登录') image = Image.open("C:/acg.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root1,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root1, text='账号',font=('华文行楷', 20),bg='Ivory', width=5, height=1)label.place(x = 100, y=170)self.w = tk.Entry(self.root1, width=20,  font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 175, y = 175)label1 = tk.Label(self.root1, text='密码',font=('华文行楷', 20),bg='Ivory',width=5, height=1)label1.place(x = 100, y=220)self.w1 = tk.Entry(self.root1, width=20,  font=tkFont.Font(size=14), bg='Ivory',show = "*")self.w1.place(x = 175, y = 225)btn1 =  Button(self.root1, text="登陆", bg = 'lightcyan',width=8, font=('华文行楷', 30), command= self.login)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)btn2 = Button(self.root1, text="返回首页", bg = 'lightcyan',width=8, font=('华文行楷', 30), command=lambda: start(self.root1))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root1.mainloop()def login(self):username = self.w.get()password = self.w1.get()if(username == 'c') and (password == '1'):messagebox.showinfo('登录系统', '登录成功')messagebox.showinfo('','正在链接数据库...')conn = pymssql.connect(host='localhost',database='master',charset = 'GBK')cur = conn.cursor()if cur:messagebox.showinfo('',"连接成功!")operatechoice1(self.root1)#messagebox.showinfo('登录系统', '登录成功')else:messagebox.showinfo('登录系统', '登录失败,用户名或密码错误')class operatechoice1:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('操作选择') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="SQL操作", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: operate(self.root))btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: AdminPage1(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn3 = Button(self.root, text="查询操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: select1(self.root))btn3.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn4 = Button(self.root, text="删除操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete1(self.root))btn4.place(relx=0.6, rely=0.2, relwidth=0.2, relheight=0.1)self.root.mainloop()class operatechoice:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('操作选择') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="SQL操作", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: operate(self.root))btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: AdminPage(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn3 = Button(self.root, text="查询操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: select(self.root))btn3.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn4 = Button(self.root, text="插入操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: insert(self.root))btn4.place(relx=0.2, rely=0.4, relwidth=0.2, relheight=0.1)btn4 = Button(self.root, text="删除操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete(self.root))btn4.place(relx=0.6, rely=0.2, relwidth=0.2, relheight=0.1)btn4 = Button(self.root, text="更新操作", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: update(self.root))btn4.place(relx=0.6, rely=0.4, relwidth=0.2, relheight=0.1)self.root.mainloop()class update:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('更新操作') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="更新物品信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: self.up(self.root))btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def up(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('选择更新') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面labe_l = tk.Label(self.root, text='请选择需更新的信息:',font=('华文行楷', 20), width=20, height=1)labe_l.place(x = 0, y=0)labe_2 = tk.Label(self.root, text='物品序号:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe_2.place(relx=0.05, rely=0.1)labe1 = tk.Label(self.root, text='物品名称:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe1.place(relx=0.05, rely=0.2)labe2 = tk.Label(self.root, text='物品数量:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe2.place(relx=0.05, rely=0.3)labe3 = tk.Label(self.root, text='物品进价:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe3.place(relx=0.05, rely=0.4)labe4 = tk.Label(self.root, text='物品售价:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe4.place(relx=0.05, rely=0.5)labe5 = tk.Label(self.root, text='物品规格:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe5.place(relx=0.05, rely=0.6)labe6 = tk.Label(self.root, text='所在仓库:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe6.place(relx=0.05, rely=0.7)labe7 = tk.Label(self.root, text='管理员编号:',font=('华文行楷', 20),bg='Ivory', width=12, height=1)labe7.place(relx=0.05, rely=0.8)labe8 = tk.Label(self.root, text='进货日期:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe8.place(relx=0.05, rely=0.9)labe9 = tk.Label(self.root, text='出货日期:',font=('华文行楷', 20),bg='Ivory', width=10, height=1)labe9.place(relx=0.5, rely=0.1)self.w1 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w1.place(relx=0.25, rely=0.1,height = 32)self.w2 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w2.place(relx=0.25, rely=0.2,height = 32)self.w3 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w3.place(relx=0.25, rely=0.3,height = 32)self.w4 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w4.place(relx=0.25, rely=0.4,height = 32)self.w5 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w5.place(relx=0.25, rely=0.5,height = 32)self.w6 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w6.place(relx=0.25, rely=0.6,height = 32)self.w7 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w7.place(relx=0.25, rely=0.7,height = 32)self.w8 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w8.place(relx=0.25, rely=0.8,height = 32)self.w9 = tk.Entry(self.root, width=20, font=tkFont.Font(size=14), bg='Ivory')self.w9.place(relx=0.25, rely=0.9,height = 32)self.w10 = tk.Entry(self.root, width=15, font=tkFont.Font(size=14), bg='Ivory')self.w10.place(relx=0.7, rely=0.1,height = 32)btn_1 =  Button(self.root, text="执行", width=4, font=('华文行楷', 30),bg = 'lightcyan',command = self.operation1)btn_1.place(relx=0.8, rely=0.8, relwidth=0.2, relheight=0.1)btn_2 = Button(self.root, text="返回", width=8, font=('华文行楷', 30), bg = 'lightcyan',command=lambda: update(self.root))btn_2.place(relx=0.8, rely=0.9, relwidth=0.2, relheight=0.1)btn2 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation2)btn2.place(relx=0.5, rely=0.2, relwidth=0.1, relheight=0.06)btn3 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation3)btn3.place(relx=0.5, rely=0.3, relwidth=0.1, relheight=0.06)btn4 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation4)btn4.place(relx=0.5, rely=0.4, relwidth=0.1, relheight=0.06)btn5 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation5)btn5.place(relx=0.5, rely=0.5, relwidth=0.1, relheight=0.06)btn6 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation6)btn6.place(relx=0.5, rely=0.6, relwidth=0.1, relheight=0.06)btn7 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation7)btn7.place(relx=0.5, rely=0.7, relwidth=0.1, relheight=0.06)btn8 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation8)btn8.place(relx=0.5, rely=0.8, relwidth=0.1, relheight=0.06)btn9 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation9)btn9.place(relx=0.5, rely=0.9, relwidth=0.1, relheight=0.06)btn10 =  Button(self.root, text="更新", width=4, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation10)btn10.place(relx=0.9, rely=0.1, relwidth=0.1, relheight=0.06)self.root.mainloop()def operation1(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gname = ' +"'" + self.w2.get()+ "'"+', gnum = '+ "'"+self.w3.get()+"'"+ ',gpurchase = ' + "'"+self.w4.get()+"'"+',gsale = ' +"'" + self.w5.get()+ "'"+ ',Gspecification = '+"'" + self.w6.get()+ "'"+',wno = '+"'" + self.w7.get()+ "'"+',eno = '+"'" + self.w8.get()+ "'"+',gin = '+"'" + self.w9.get()+ "'"+', gout = '+ "'" + self.w10.get() + "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation2(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gname = ' +"'" + self.w2.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation3(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gnum = ' +"'" + self.w3.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation4(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gpurchase = ' +"'" + self.w4.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation5(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gsale = ' +"'" + self.w5.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation6(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set Gspecification = ' +"'" + self.w6.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation7(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set wno = ' +"'" + self.w7.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation8(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set eno = ' +"'" + self.w8.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation9(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gin = ' +"'" + self.w9.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')def operation10(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'update goods set gout = ' +"'" + self.w10.get()+ "'"+ '\where gno = ' +"'" +self.w1.get()+"'"cur.execute(sql)if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '更新成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '更新失败')class delete1:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除操作') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="删除订单信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: self.deleg(self.root))btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn3 =  Button(self.root, text="删除采购单信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: self.deleg1(self.root))btn3.place(relx=0.2, rely=0.4, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice1(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def deleg(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入要删除的订单编号:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete1(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'delete from Orderform where ono =  ' + "'" + self.w.get() + "'"cur.execute(sql)conn.commit()if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '删除成功')else:messagebox.showinfo('提示', '无此订单')except:messagebox.showinfo('错误', '删除失败')def deleg1(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入采购单编号:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation1)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation1(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur1 = conn.cursor()sql = 'delete from Purchaseorder where Pono = ' + "'" + self.w.get() + "'"cur1.execute(sql)conn.commit()print(cur1.rowcount)if (cur1.rowcount == 1):conn.close()messagebox.showinfo('提示', '删除成功')else:messagebox.showinfo('提示', '无此采购单')except:messagebox.showinfo('错误', '删除失败')class delete:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除操作') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="删除物品信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: self.deleg(self.root))btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn3 =  Button(self.root, text="删除员工信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda: self.deleg1(self.root))btn3.place(relx=0.2, rely=0.4, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def deleg(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入要删除的物品编号:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'delete from goods where Gno =  ' + "'" + self.w.get() + "'"cur.execute(sql)conn.commit()if (cur.rowcount == 1):conn.close()messagebox.showinfo('提示', '删除成功')else:messagebox.showinfo('提示', '无此物品')except:messagebox.showinfo('错误', '删除失败')def deleg1(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('删除') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入要删除的员工编号:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: delete(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation1)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation1(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur1 = conn.cursor()sql = 'delete from employee where Eno = ' + "'" + self.w.get() + "'"cur1.execute(sql)conn.commit()print(cur1.rowcount)if (cur1.rowcount == 1):conn.close()messagebox.showinfo('提示', '删除成功')else:messagebox.showinfo('提示', '查无此人')except:messagebox.showinfo('错误', '删除失败')class insert:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('插入') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 = Button(self.root, text="添加物品信息", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda:self.ins(self.root))btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn3 = Button(self.root, text="添加员工信息", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda:self.ins1(self.root))btn3.place(relx=0.2, rely=0.4, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def ins(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('插入') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入所添加的信息:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: insert(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'insert into goods values ' + '(' + self.w.get()  + ')'cur.execute(sql)conn.commit()conn.close()messagebox.showinfo('提示', '添加成功')except:messagebox.showinfo('错误', '添加失败')def ins1(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('添加员工信息') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入所添加的信息:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: insert(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation1)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation1(self):try:conn = pymssql.connect(host='localhost',database='master',charset='UTF-8',autocommit = True)cur = conn.cursor()sql = 'insert into employee values ' + '(' + self.w.get()  + ')'cur.execute(sql)conn.commit()conn.close()messagebox.showinfo('提示', '添加成功')except:messagebox.showinfo('错误', '添加失败')class select1:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('查询') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="查询员工工资", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.seleg)btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn3 =  Button(self.root, text="查询订单信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.selee)btn3.place(relx=0.6, rely=0.2, relwidth=0.2, relheight=0.1)btn4 =  Button(self.root, text="具体查询", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda:self.selec(self.root))btn4.place(relx=0.2, rely=0.4, relwidth=0.2, relheight=0.1)btn5 =  Button(self.root, text="查询采购单信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.selee1)btn5.place(relx=0.6, rely=0.4, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.4, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def seleg(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = 'select * from salary'cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()def selee1(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = 'select * from Purchaseorder'cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()def selee(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = 'select * from orderform'cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()def selec(self,window):window.update()window.destroy()self.root = tk.Toplevel() self.root.title('具体查询')self.root.geometry('960x540')  image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image= photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入SQL语句:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: select(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = self.w.get()cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()class select:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('查询') image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面btn1 =  Button(self.root, text="查询物品信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.seleg)btn1.place(relx=0.2, rely=0.2, relwidth=0.2, relheight=0.1)btn3 =  Button(self.root, text="查询员工信息", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.selee)btn3.place(relx=0.6, rely=0.2, relwidth=0.2, relheight=0.1)btn4 =  Button(self.root, text="具体查询", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = lambda:self.selec(self.root))btn4.place(relx=0.4, rely=0.4, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.4, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def seleg(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = 'select * from goods'cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()def selee(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = 'select * from employee'cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()def selec(self,window):window.update()window.destroy()self.root = tk.Toplevel() self.root.title('具体查询')self.root.geometry('960x540')  image = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image= photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入SQL语句:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: select(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = self.w.get()cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()class operate:def __init__(self,window):window.update()window.destroy()self.root= tk.Toplevel()self.root.geometry('960x540')self.root.title('SQL操作') image = Image.open("C:/acg.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.root,text='',image = photo)Lab.pack()#设置主界面label = tk.Label(self.root, text='请输入SQL语句:',font=('华文行楷', 20), width=20, height=1)label.place(x = 30, y=170)self.w = tk.Entry(self.root, width=50, font=tkFont.Font(size=14), bg='Ivory')self.w.place(x = 30, y = 200)btn1 =  Button(self.root, text="执行", width=8, font=('华文行楷', 20),bg = 'lightcyan',command = self.operation)btn1.place(relx=0.2, rely=0.6, relwidth=0.2, relheight=0.1)btn2 = Button(self.root, text="返回", width=8, font=('华文行楷', 20), bg = 'lightcyan',command=lambda: operatechoice(self.root))btn2.place(relx=0.6, rely=0.6, relwidth=0.2, relheight=0.1)self.root.mainloop()def operation(self):conn = pymssql.connect(host='localhost',database='master',charset='GBK')cur = conn.cursor()sql = self.w.get()cur.execute(sql)results = cur.fetchall()col = cur.descriptionlist = []for i in range(len(col)):list.append(col[i][0])print(list)for row in results:print(row)conn.close()class About:def __init__(self, parent_window):parent_window.destroy() # 销毁主界面self.window = tk.Toplevel() # 初始框的声明self.window.title('关于')self.window.geometry('960x540')  # 这里的乘是小ximage = Image.open("C:/acg1.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(self.window,text='',image= photo)Lab.pack()#设置主界面label = tk.Label(self.window, text='超市仓库管理系统', bg = 'skyblue' ,font=('华文行楷', 40), width=39, height=1)label.place(x = 0 ,y = 0)label1 = Label(self.window, text='作者:告辞、CDB、leo、dddd', bg = 'skyblue' ,font=('华文行楷', 30),width = 51)label1.place(x = 0 ,y = 200)btn = Button(self.window, text="返回首页", width=8, font=('华文行楷', 28),bg = 'lightcyan', command=lambda: start(self.window))btn.place(relx=0.3, rely=0.6, relwidth=0.4, relheight=0.1)self.window.mainloop()  # 进入消息循环class start:def __init__(self,window):window.update()window.destroy()root= tk.Toplevel()#root = Tk()root.geometry('960x540')root.title('超市仓库管理系统')#global photoimage = Image.open("C:/s.jpg")photo = ImageTk.PhotoImage(image.resize((960,540)))Lab= tk.Label(root,text='',image= photo)Lab.pack()#设置主界面btn1 = Button(root, text='管理员登录',font=('华文行楷', 30),bg = 'lightcyan' ,command = lambda: AdminPage(root))btn1.place(relx=0.3, rely=0.6, relwidth=0.4, relheight=0.1)btn2 = Button(root, text='关于',font=('华文行楷', 30),bg = 'lightcyan' ,command = lambda: About(root))btn2.place(relx=0.3, rely=0.8, relwidth=0.4, relheight=0.1)btn3 = Button(root, text='财务管理员登录',font=('华文行楷', 30),bg = 'lightcyan' ,command = lambda: AdminPage1(root))btn3.place(relx=0.3, rely=0.4, relwidth=0.4, relheight=0.1)root.mainloop()if __name__ == '__main__':root = Tk()start(root)

SQL代码

--销售商表
--销售商(销售商编号,销售商名称,销售商电话,销售商地址,邮箱,邮编)
create table Vendors
(Vno char(4) not null unique,
Vname char(20) not null,
Vpn  char(13) not null,
Vaddress char(20) not null,
Vmailbox char(20) null,
Vzip char(6) null);--订货单表
--订货单(订货单编号,订购时间,预定发货时间,总数量,总价,折扣,预收款,尾款,开票情况,开票时间,收入账单编号,销售商编号)
create table Orderform
(Ono char(10) not null unique,
Otime date not null,
Odtime date not null,
Onumber int not null,
Oprice char(8) not null,
Odiscount char(4),
Oapayment char(8) not null,
Ofpayment char(8) not null,
Invoicestatus char(8),
Invoicetime date,
Incomebillno char(4) not null,
Vno char(4) not null);--销售情况表
--销售情况(订货单编号,货物编号,数量)
create table Sales
(Ono char(10) not null unique,
Gno char(10) not null unique,
Sno int not null);--采购情况表
--采购情况(采购单编号,货物编号,数量)
create table Purchase
(Pono char(10) not null unique,
Gno char(10) not null unique,
Sno int not null);--采购单表
--采购单(采购单编号,预定发货时间,采购时间,总数量,总价,折扣,支出账单编号,供应商编号)
create table Purchaseorder
(Pono char(10) not null unique,
Poestimatedtime date,
Popurchasetime date,
Ponum int,
Popayment numeric,
Podiscount numeric default(1), --0~1的数值型
Exno char(8) not null unique,
Selno char(5) not null unique);--供应商表
--供应商(供应商编号,供应商名称,供应商电话,供应商地址,邮箱,邮编)
create table sellers
(Selno char(5) not null unique,
Selname char(10),
Seltelephone char(15),
Seladress varchar(30),
Selemail char(20),
Selzip char(6));--货物表
--货物(货物编号,货物名称,货物数量,售价,进价,规格,仓库编号,经办人编号,出入库时间)
create table Goods
(Gno char(10),
Gname char(10),
Gnum int,
Gpurchase numeric,
Gsale numeric,
Gspecification char(10), --规格:单位立方米,立方厘米,立方分米
Wno Char(4) NOT NULL UNIQUE,
Eno Char(4) NOT NULL UNIQUE,
Ginout date);--仓库表
--仓库(仓库编号,管理员编号,所在地,联系电话)
create table Warehouse
(Wno Char(4) NOT NULL UNIQUE,
Eno Char(4) NOT NULL,
WAddr Char(10) NOT NULL,
Wphone Char(11) NOT NULL);--员工表
--员工(员工编号,姓名,性别,出生日期,员工类型,入职日期,联系电话,部门编号,仓库编号)
create table Employee
(Eno Char(4) NOT NULL UNIQUE,
Ename Char(8) NOT NULL,
Sex Char(2) NOT NULL default('男'),
Birth Char(8),
Title Char(6),
In_data Char(8),
Ephone Char(11) NOT NULL,
Dno Char(2) NOT NULL,
Wno Char(4) NOT NULL);--部门表
--部门(部门编号,部门名称,部门负责人,联系电话)
create table Department
( Dno Char(2) NOT NULL UNIQUE,
Dname VarChar(10) NOT NULL,
Dphone Char(8) NOT NULL,
Manager Char(4));--创建工资单Salary表
--工资单(员工编号,员工姓名,发放时间,基本工资,奖金,社保)
CREATE TABLE Salary( Eno CHAR(4) NOT NULL UNIQUE ,Ename CHAR(8) NOT NULL ,sal_date date NOT NULL,    --发放日期,如20160505 表示2016年5月5日Basepay int,Price int,Social_security char(1));--创建收入账单Income表
--收入账单(收入账单编号,管理员编号,应收款,总收入,收款时间,收款情况)
CREATE TABLE Income( Inno CHAR(8) NOT NULL UNIQUE,Eno CHAR(4) NOT NULL,In_receivable int,Total_In int,In_date date,Is_receive char(1));--创建支出账单Expense表
--支出账单(支出账单编号,管理员编号,总支出,应付款,付款时间,付款情况)
CREATE TABLE Expense( Exno CHAR(8) NOT NULL UNIQUE,Eno CHAR(4) NOT NULL,Total_pay int,Payables int,Pay_date date,Is_pay char(1));

一个普通的查询展示:

部分借鉴:
[1]:https://blog.csdn.net/kdongyi/article/details/103170876

第一次用CSDN,可能排版的比较一般…以后再改吧,如果我想的话…

超市仓库管理系统python+tkinter相关推荐

  1. 基于springcolud微服务的超市仓库管理系统

    随着信息技术和网络技术的飞速发展,人类已进入全新信息化时代,传统管理技术已无法高效,便捷地管理信息.为了迎合时代需求,优化管理效率,各种各样的管理系统应运而生,各行各业相继进入信息管理时代,超市仓库管 ...

  2. Python+Vue计算机毕业设计超市仓库管理系统15g4i(源码+程序+LW+部署)

    该项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 项目运行环境配置: Python3.7.7+Django+Mysql5.7+pip list+HBuilderX(Vscode也行)+V ...

  3. 【计算机毕业设计】6.超市仓库管理系统+vue

    一.系统截图(需要演示视频可以私聊) 基于B/S的超市进销存管理系统的设计与实现 摘  要:开发本超市进销存管理系统的主要目标是方便企业对商品.客户和员工信息的实时掌控,提高企业的工作效率.本系统是采 ...

  4. php 仓库管理实例,php+mysql超市仓库管理系统

    [实例简介] 自己以前做的课程设计 现在都不忍看 刚学的人可以看下 [实例截图] [核心代码] c1c369ac-ba12-4d69-ac9d-b6243f22dd4a └── 超市仓库管理系统 ├─ ...

  5. [附源码]JSP+ssm计算机毕业设计小型超市仓库管理系统iq6pr【源码、数据库、LW、部署】

    项目运行 项目含有源码.文档.程序.数据库.配套开发软件.软件安装教程 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclisp ...

  6. SSM框架超市进销存出库入库仓库管理系统(idea开发javaweb-javaee-j2ee-springboot) 退货管理 销售管理 供应商管理 客户管理 员工管理 以及库存统计和盘存统计

    0.效果展示 1.概述 2.搭建环境 本文以实现一个超市进销存出库入库仓库管理系统为目标,从环境搭建到编码实现全过程讲述 我们使用javaweb.J2EE来构建超市进销存出库入库仓库管理系统,环境使用 ...

  7. 计算机毕业设计(附源码)python优库仓库管理系统

    项目运行 环境配置: Pychram社区版+ python3.7.7 + Mysql5.7 + HBuilderX+list pip+Navicat11+Django+nodejs. 项目技术: dj ...

  8. python wms系统源码_jeewms仓库管理系统 v2.4.0

    jeewms是一个基于JAVA的仓库管理系统,是由灵鹿谷科技主导的开源项目,WMS在经过多家公司上线运行后,为了降低物流仓储企业的信息化成本,决定全面开源此产品.针对有特殊信息化需求的企业,提供高性价 ...

  9. python基于PHP+MySQL的连锁商店仓库管理系统

    我的得适应当前高速发展的社会环境,很多商店都是以连锁的方式在进行管理.连锁商店相对应的一个管理核心就是对仓库的管理,因为每一个分店可能都会需要进行货物的调拨和进销存,所以如何能够对这些连锁店的库存信息 ...

  10. 仓库管理系统(warehouse management system)

    仓库管理系统(warehouse management system) 目前,许多企业已认识到 企业管理信息对企业发展的战略意义,从财务 软件.进销存软件CIMS,从MRP.MRPII到ERP,代表了 ...

最新文章

  1. ASP.NET2.0数据操作之创建业务逻辑层
  2. Linux 目录详细说明
  3. C++起始(关键字,命名空间,缺省参数,函数重载(c语言为什么不支持函数重载))
  4. QSerialPort线程内接收异常
  5. Postgresql pg_dumppg_restore用法
  6. gifimageview 大小不受控制_大小不变,提示换药?别紧张!三个案例解读“肿瘤大小与疗效关系”...
  7. ISO 12233和SFR
  8. 2021-11-12 应用密码学:协议、算法与C源程序(目录)
  9. H3C Comware V3 端口聚合
  10. 植物大战僵尸修改关卡及金币
  11. Sublime Text介绍
  12. 水安ABC考试多选练习题库(6)
  13. sd和sem啥区别_Mean ± SEM or Mean(SD) 区别
  14. srgan要训练多久_核心训练需要做多久?学会这些动作,5分钟完成核心训练
  15. iVx实现页面简易新闻应用
  16. 30天自制操作系统Day8
  17. 推荐一个免费7天天气预报API服务:和风天气
  18. dg建立linux分区,Linux 下 Oracle 11g DG搭建
  19. 梅科尔工作室E1-张冉-鸿蒙笔记3
  20. 中兴智能视觉大数据在智能视觉司机疲劳监测管理平台的应用

热门文章

  1. java实时推送goeasy_JAVA Web实时消息后台服务器推送技术---GoEasy
  2. 北京理工大学珠海学院中外合作办学计算机,北京理工大学珠海学院
  3. 服务器系统用哪个版本好,windows服务器系统哪个版本好用
  4. mdui前端插件,有菜单对话框等
  5. 增加了ssl证书后websocket连接失败
  6. PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
  7. C++实现设计模式——Builder模式
  8. jsp包含html有乱码,jsp include包含html页面产生的乱码问题
  9. 三对角、五对角追赶法求解线性方程组
  10. 统信UOS使用wine安装“方正ApabiReader_4.5.2.1790(ceb阅读器)”并解决安装过程中文显示成方块问题