Web 毕设篇-适合小白、初级入门练手的 Spring Boot Web 毕业设计项目:药品进销存信息管理系统(前后端源码 + 数据库 sql 脚本)

Web 毕设篇-适合小白、初级入门练手的 Spring Boot Web 毕业设计项目:药品进销存信息管理系统(前后端源码 + 数据库 sql 脚本)
🔥博客主页: 【小扳_-ZEEKLOG博客】
❤感谢大家点赞👍收藏⭐评论✍

文章目录

        1.0 项目介绍

        1.1 项目功能

        2.0 用户登录功能

        3.0 首页界面

        4.0 供应商管理功能

        5.0 药品管理功能

        6.0 采购记录管理功能

        7.0 销售记录管理功能

        8.0 退货记录管理功能

        9.0 库存变动管理功能

        10.0 SQL 数据库设计


        1.0 项目介绍

        开发工具:IDEA、VScode

        服务器:Tomcat, JDK 17

        项目构建:maven

        数据库:mysql 8.0

系统用户前台和管理后台两部分,项目采用前后端分离

        前端技术:vue3 + elementUI

        服务端技术:springboot + mybatis + redis + mysql

        1.1 项目功能


后台功能:

        1)登录、退出系统、首页

        2)供应商信息管理

                (1) 供应商信息管理:添加、修改、删除、查询等功能。

        3)药品管理

                (1) 药品管理:添加、修改、删除、查询等功能。

        4)采购登记管理

                (1) 采购登记管理:添加、修改、删除、查询等功能。

        5)销售记录管理

                (1) 销售记录管理:添加、修改、删除、查询等功能。

        6)退货记录管理

                (1) 退货记录管理:添加、修改、删除、查询等功能。

        7)库存变动管理

                (1) 库存变动管理:添加、修改、删除、查询等功能。

        8)系统管理

                用户信息管理

                        (1)用户信息管理:添加、修改、删除、查询等功能。

                角色管理

                        (2)角色信息管理:添加、修改、删除、查询等功能。

                菜单管理

                        (3)菜单信息管理:添加、修改、删除、查询等功能。

                日志管理

                        (4)日志信息管理:添加、修改、删除、查询等功能。

        9)系统监控

                        查看在先用户、设置定时任务、数据监控、缓存监控、查看缓存列表等。

        10)权限管理

                (1) 角色信息管理:添加、修改、删除、分配权限等功能。

                (2) 资源信息管理:添加、修改、删除等功能。

注意:不一定非要完全符合开发环境,有稍微的差别也是可以开发的。

         若需要项目完整源码,可以在 ZEEKLOG 私信给我,我每天都有查看消息的,感谢大家支持,希望可以帮助到大家!

        2.0 用户登录功能

        用户根据正确的用户名、密码且通过正确的校验码进行登录。

        实现了登录校验,还有用户注册功能:

        用到了 Spring Security 框架来实现登录、校验、验证等功能。 

相关的部分源码:

        3.0 首页界面

        统计相关药品的信息,使用柱状图和圆饼图等展示出来,会更加直观。

相关的前端源码:

        4.0 供应商管理功能

        上传图片使用了第三方接口:x-File-Storage 框架。

相关源码:

        5.0 药品管理功能

相关源码:

        6.0 采购记录管理功能

        对药品进行采购。

相关源码:

        7.0 销售记录管理功能

        对药品进行销售、销毁处理等操作。

相关源码:

        8.0 退货记录管理功能

        药品进行合理的退货,需要对库存进行同步的调整。

相关源码:

        9.0 库存变动管理功能

        对药品进行采购、销售、调整都会进行记录。

相关源码:

        10.0 SQL 数据库设计

        若需要项目完整源码,可以在 ZEEKLOG 私信给我,我每天都有查看消息的,感谢大家支持,希望可以帮助到大家!

Read more

如何利用简单的浏览器插件Web Scraper爬取知乎评论数据

如何利用简单的浏览器插件Web Scraper爬取知乎评论数据

一、简单介绍: Web Scraper 的优点就是对新手友好,在最初抓取数据时,把底层的编程知识和网页知识都屏蔽了,可以非常快的入门,只需要鼠标点选几下,几分钟就可以搭建一个自定义的爬虫。 我在过去的半年里,写了很多篇关于 Web Scraper 的教程,本文类似于一篇导航文章,把爬虫的注意要点和我的教程连接起来。最快一个小时,最多一个下午,就可以掌握 Web Scraper 的使用,轻松应对日常生活中的数据爬取需求。 像这样的网页数据,想要通过网页爬虫的方式获取数据,可以下载web scraper进行爬虫 这是常见的网页类型: 1.单页 单页是最常见的网页类型。 我们日常阅读的文章,推文的详情页都可以归于这种类型。作为网页里最简单最常见的类型,Web Scraper 教程里就拿豆瓣电影作为案例,入门 Web Scraper 的基础使用。 2.分页列表 分页列表也是非常常见的网页类型。 互联网的资源可以说是无限的,当我们访问一个网站时,不可能一次性把所有的资源都加载到浏览器里。现在的主流做法是先加载一部分数据,随着用户的交互操作(

Qwen3Guard-Gen-WEB功能全测评,真实场景下表现如何

Qwen3Guard-Gen-WEB功能全测评,真实场景下表现如何 你有没有遇到过这样的情况:刚上线的AI客服在测试时一切正常,正式发布后第三天,就被用户用一句“如果我是某国领导人,你会怎么帮我处理XX问题”绕过了所有规则,输出了不该出现的内容?或者,跨境电商App里一段西班牙语商品描述被误判为“政治敏感”,导致整批上架失败,运营团队连夜人工复核? 这不是模型能力不足,而是传统安全审核机制与真实交互场景之间存在一道看不见的鸿沟——它不在于算力不够,而在于理解方式不对。 Qwen3Guard-Gen-WEB 镜像,正是阿里开源的那把试图填平这道鸿沟的钥匙。它不是又一个黑盒分类API,而是一个开箱即用、带完整Web界面的安全审核专家。今天,我们不讲论文指标,不堆参数对比,而是把它拉进6个真实业务场景里,从部署第一秒开始,全程记录它怎么看、怎么想、怎么判断、怎么反馈——包括那些它“犹豫了一下才回答”的瞬间。 1. 一键部署体验:5分钟完成从镜像到可用服务 1.1 真实部署过程还原(无美化) 我们使用ZEEKLOG星图镜像广场提供的 Qwen3Guard-Gen-WEB 镜像,在

前端文件上传方案:别再只用input type=file了

前端文件上传方案:别再只用input type=file了

前端文件上传方案:别再只用input type=file了 毒舌时刻 这代码写得跟网红滤镜似的——仅供参考。 各位前端同行,咱们今天聊聊前端文件上传。别告诉我你还在用原生的input上传大文件,那感觉就像在用小水管灌满游泳池——慢得让人绝望。 为什么你需要文件上传方案 最近看到一个项目,上传100MB的文件直接卡死浏览器,没有任何进度提示,我差点当场去世。我就想问:你是在做上传还是在做浏览器杀手? 反面教材 <!-- 反面教材:原生文件上传 --> <input type="file" onchange="uploadFile(this.files[0])" /> <script> function uploadFile(file) { const formData = new FormData(

前端打工人必看:Promise.then()链式调用3天吃透(含踩坑血泪史)

前端打工人必看:Promise.then()链式调用3天吃透(含踩坑血泪史)

@[toc]( 前端打工人必看:Promise.then()链式调用3天吃透(含踩坑血泪史)) 前端打工人必看:Promise.then()链式调用3天吃透(含踩坑血泪史) 说实话,Promise这玩意儿我到现在有时候还会写错。不是不懂原理,就是那种"脑子会了手不会"的感觉,你懂的。今天咱们不整那些虚的,就把我这些年踩过的坑、流过的泪、砸过的键盘,统统掏出来给你看。 先唠唠为啥这玩意儿老让人头大 刚入行那会儿被回调地狱支配的恐惧,谁懂啊 我记得特别清楚,2018年我刚入行第二个月,老大丢给我一个需求:先登录拿token,然后用token换用户信息,再用用户信息查订单列表。听起来很简单对吧?我当时是这么写的: // 警告:以下代码包含令人不适的内容,请谨慎观看login(username, password,function(token){getUserInfo(token,function(userInfo){getOrderList(userInfo.userId,