某销售公司当前的销售业务为无人店销售。现该公司开发一个信息化管理系统。请根据公司现有业务及需求完成该系统的数据库设计。

1、该系统需要记录所有会员的信息,记录所有商品的信息,记录所有供应信息和供货商信息

表的含义表的字段
Vendor供应商供货商编号,供货商名称,供货商电话,供货商地址
Staff员工卡员工编员、员工姓名、员工性别、员工年龄、员工工龄、员工电话、身份证号、工资、健康码。
Goods商品商品编号、商品名称、商品类别、商品单价,商品进价、库存量,供货商编号
Member会员卡会员卡卡号,会员姓名,电话,注册日期,累计金额,余额、会员密码
Trade交易记录交易流水号、交易日期、员工编号、商品编号、交易数量、交易金额、会员卡号。
Infer退货信息单交易流水号,商品编号,退货数量,退款金额,退货日期

2、所有的配送商品均由仓库统一发挥,允许每位顾客在系统中提供多组收货地址、收货人及联系电话,以及熟练掌握数据库DBMS的使用。

表的含义表的字段说明
Ware仓库仓库编号,仓库管理员编号,仓库名称,仓库地址仓库管理员编号是表staff的外键
Entry入库入库单编号、商品编号、入库量、总金额、供应商编号、入库日期、仓库管理员编号
Exist出库出库单编号、商品编号、出库量、总金额、出库日期、仓库管理员编号
Check1安全问题健康码,灭火器,自动灭火喷淋装置,仓库管理员编号

要求:

1、合理安排每个表中的外键。【很多主键并没有表明,需要同学们思考】

2、设置触发器

触发器:

1、购买的商品数量要在库存里减去

2、要在会员卡的总消费和余额里改变相应的数值。

3、使用pythonGui进行界面的开发。

4、课程设计答辩时间6月19号,需要准备课程设计PPT。

5、课程设计报告,需要涉及到需求分析,功能分析,数据库设计,ER图等。

简介🥰

基于pyside6构建的一个无人售货店管理系统🥰 使用了PyQt-Fluent-Widgets组件 可以实现无人售货店信息的增删改查和数据可视化

最新版本支持的功能如下:

  • 供应商管理: 添加供应商信息,删除供应商信息,修改供应商信息,查找供应商信息

  • 员工管理: 添加员工信息,删除员工信息,修改员工信息,查找员工信息

  • 商品管理: 添加商品信息,删除商品信息,修改商品信息,查找商品信息

  • 会员管理: 添加会员信息,删除会员信息,修改会员信息,查找会员信息

  • 交易记录管理: 添加交易记录信息,查看交易记录信息

  • 数据可视化: 员工信息可视化,会员信息可视化,商品信息可视化,交易信息可视化

  • 主题切换: 根据当前window主题自动切换

快速开始🚀

一、环境准备

1.建立数据库

在项目根目录下有一个mydb1.sql文件,将这个sql导入到数据库中

将app/util这个路径下的dbconnection.py改为本地数据库的账号和密码

2.配置运行环境

python版本在3.8以上

在根目录下运行

pip3 install -r requirements.txt

二、运行

cd myrj
python main.py

运行成功后出现📢 Tips: QFluentWidgets Pro is now released. Click https://qfluentwidgets.com/pages/pro to learn more about it.

演示

1.登录页面

image-20240628094051056

2.首页折叠

image-20240628094117785

3.首页展开

image-20240628094141020

4.管理功能(商品为例)

image-20240707202051202

image-20240707202328649

image-20240707202353124

image-20240707202423069

image-20240707202015132

五.数据可视化(商品为例)

image-20240707202516653

六.暗色主题

image-20240628215851803

打包

用Anaconda创建一个虚拟环境,

conda create -n myxm python==3.8

然后激活环境

conda activate myxm

安装pyside6-Fluent-Widgets

pip install PySide6-Fluent-Widgets -i https://pypi.org/simple/   # 安装轻量版
pip install "PySide6-Fluent-Widgets[full]" -i https://pypi.org/simple/  # 安装完整版

在根目录下运行

pip3 install -r requirements.txt

安装pyinstaller

pip install pyinstaller

打包

pyinstaller -w -i reourece/images/logo.ico main.py  #reourece/images/logo.ico为图标的路径

pyinstaller -F -w -i reourece/images/logo.ico main.py  #reourece/images/logo.ico为图标的路径

选项
-h, --help
显示此帮助消息并退出

-v, --version
显示程序版本信息并退出。

--workpath WORKPATH
捆绑应用的放置位置(默认值:./dist)

--workpath 工作路径
将所有临时工作文件(.log、.pyz)放在哪里 等等(默认值:./build)

-y, --noconfirm
替换输出目录(默认值: SPECPATH/dist/SPECNAME) 而不要求 确认

--upx-dir UPX_DIR
UPX 实用程序的路径(默认:搜索执行 路径)

--clean
清理 PyInstaller 缓存并删除临时文件 在建造之前。

--log-level 级别
生成时控制台消息中的详细信息量。水平 可能是 TRACE、DEBUG、INFO、WARN、DEPRECATION、 ERROR,FATAL(默认值:INFO)。也可通过 和 覆盖 PYI_LOG_LEVEL 环境变量。

-D, --onedir
创建包含可执行文件的单文件夹捆绑包 (默认)

-F, --onefile
创建一个文件捆绑的可执行文件。

-i  --icon
用于exe文件的图标

--specpath DIR
用于存储生成的规范文件的文件夹(默认: 当前目录)

-n NAME, --name 名称
要分配给捆绑的应用和规范文件的名称 (默认值:第一个脚本的 basename)

--contents-directory CONTENTS_DIRECTORY
仅对于 onedir 构建,请指定所有 支持文件(即除可执行文件本身之外的所有文件)将是 放入。使用“.”重新启用没有内容的旧 onedir 布局 目录。