基于springboot的张仲景药房(药店)管理系统

简介: 张仲景药房管理系统在设计过程中使用的程序设计更加人性化,如果出现了错误信息系统可以及时处理和反应。其中系统的主要内容是数据库设计的具体分析数据采用MySQL数据库,选择maven作为版本管理工具,系统后端使用了Spring Boot框架,前端使用了Layui框架进行了开发,整体结构为非前后端分离。

项目介绍:



张仲景药房管理系统在设计过程中使用的程序设计更加人性化,如果出现了错误信息系统可以及时处理和反应。其中系统的主要内容是数据库设计的具体分析数据采用MySQL数据库,选择maven作为版本管理工具,系统后端使用了Spring Boot框架,前端使用了Layui框架进行了开发,整体结构为非前后端分离。


项目功能:



针对张仲景药房管理系统,主要包括系统管理员、操作员、普通用户三个用户角色,由于用户角色不同,所对应的功能模块不同。普通用户可以根据自己的需求进行查看药品信息、购买药品等操作;操作员可以根据中自己的需求对药品信息进行维护和对前台普通用户购买的订单进行处理;系统管理员主要是综合光明药店管理系统中的所有的药品数据信息,按照自己的需求进行操作,例如:对普通用户管理、权限管理、药品信息管理、公告管理、统计管理、订单管理等操作;张仲景药房管理系统的整体结构就是围绕普通用户的购买以及系统管理员和操作员对库存的药品信息及不同用户的权限进行相应的管理操作。


6f02d7bb5654422e9ef6931e912f9672.png


系统主要分为八个功能模块:


药品管理:系统管理员和操作员对所进货的药品创建新的药品信息,可以选择入库操作之后更新库存信息。

类型管理:对添加的药品进行药品的分类。

销售管理:添加完成的药品可以在用户购买界面显示购买。

订单管理:系统管理员和操作员可以浏览前台的销售情况,同时还可以统计已经销售的药品情况。

统计管理:系统管理员和操作员在此模块统计药品的销售情况。

用户管理:系统管理员在这个模块下可以维护用户的信息。

权限管理:针对用户的角色不同,系统管理员在这个模块下给予他们不同的使用权限。

公告管理:针对用户的角色不同,系统管理员在系统界面发布不同的公告信息并进行管理。


系统包含技术:



后端:springboot,mybatis

前端:layui、js、css等

开发工具:idea

数据库:mysql 5.7

JDK版本:jdk1.8


部分截图说明:



下面是销售页面


4f7b06be56134473bbea53d1c8912431.png


登录页面


553a787a025241be81fe271a5ff50c3e.png


管理员首页


33bc90f704254e55b009ae277742c60b.png


管理员对用户操作


cff45cf7daff4b0bbd3f9339f8482d18.png


管理员对药品进行维护


745b84b0b43b47cc87a7ed7327221033.png


管理员对药品类型维护


9616141167cb4a96933bff1eb211dfbf.png


管理员对库存维护


a6e3c5bfdaa64375987c1ac2c72066c8.png


统计管理


91d3fa2978394a5c98b3b2c162bee620.png


管理员对角色进行管理


d32585317f974c1f8b579729cd09e0ac.png


管理员对菜单进行维护


3fee156083f945f1b7f084d984924dc6.png


用户对药材进行查看


8e199bdd054242dfaa74c18f18fa6c8f.png


用户可以查看处方


b016bd648fee42f79139fec8c7587380.png


部分代码:



配置拦截器等


public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        if (!(handler instanceof HandlerMethod)) {
            return true;
        }
        //判断用户的token信息是否满足
        User user = (User) request.getSession().getAttribute("user");
        if (user != null){
            return true;
        }
        //当前不满足条件,直接跳转拦截
        response.sendRedirect("/loginPage");
        return false;
    }


药房维护


 @RequestMapping("/get")
    public Object get(Integer page,Integer limit){
        DrugsExample drugsExample = new DrugsExample();
        drugsExample.createCriteria().andStatusEqualTo(1);
        List<Drugs> drugs = drugsMapper.selectByExample(drugsExample);
        Pager<Drugs> pager = new Pager<>();
        pager.setCurentPageIndex(page);
        pager.setCountPerpage(limit);
        pager.setBigList(drugs);
        return LayuiResult.LayuiData(0,"success",pager.getSmallList(),pager.getRecordCount());
    }
    @RequestMapping("/getAll")
    public Object getAll(){
        DrugsExample drugsExample = new DrugsExample();
        drugsExample.createCriteria().andStatusEqualTo(1);
        List<Drugs> drugsList = drugsMapper.selectByExample(drugsExample);
        return LayuiResult.LayuiData(0,"success",drugsList);
    }
    @RequestMapping("/update")
    public Object update(@RequestBody Drugs drugs){
        drugsMapper.updateByPrimaryKeySelective(drugs);
        return LayuiResult.LayuiData(0,"药材信息修改成功",null);
    }
    @RequestMapping("/delete/{id}")
    public Object delete(@PathVariable Integer id){
        Drugs drugs = new Drugs();
        drugs.setId(id);
        drugs.setStatus(0);
        drugsMapper.updateByPrimaryKeySelective(drugs);
        return LayuiResult.LayuiData(0,"该记录删除成功",null);
    }
    @RequestMapping("/search/{drugParam}")
    public Object search(@PathVariable String drugParam,Integer page,Integer limit){
        DrugParam dp = JsonUtils.jsonToPojo(drugParam,DrugParam.class);
        DrugsExample drugsExample = new DrugsExample();
        DrugsExample.Criteria criteria = drugsExample.createCriteria().andStatusEqualTo(1);
        if (!dp.getDrugName().equals("")) {
            criteria = criteria.andDrugNameLike("%" + dp.getDrugName() + "%");
        }
        if(!dp.getDrugType().equals("")){
            criteria = criteria.andDrugTypeEqualTo(dp.getDrugType());
        }
        if(!dp.getAnotherName().equals("")){
            criteria = criteria.andAnotherNameLike("%" + dp.getAnotherName() + "%");
        }
        if(!dp.getFeatures().equals("")){
            criteria = criteria.andFeaturesLike("%" + dp.getFeatures() + "%");
        }
        List<Drugs> drugs = drugsMapper.selectByExample(drugsExample);
        Pager<Drugs> pager = new Pager<>();
        pager.setCurentPageIndex(page);
        pager.setCountPerpage(limit);
        pager.setBigList(drugs);
        return LayuiResult.LayuiData(0,"success",pager.getSmallList(),pager.getRecordCount());
    }


以上就是部分功能展示,从整体上来看,本系统功能是十分完整的,界面设计简洁大方,交互友好,数据库设计也很合理,规模适中,代码工整,清晰,适合学习使用。


好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,下期见~~



相关文章
|
9天前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
18天前
|
存储 安全 Java
打造智能合同管理系统:SpringBoot与电子签章的完美融合
【10月更文挑战第7天】 在数字化转型的浪潮中,电子合同管理系统因其高效、环保和安全的特点,正逐渐成为企业合同管理的新宠。本文将分享如何利用SpringBoot框架实现一个集电子文件签字与合同管理于一体的智能系统,探索技术如何助力合同管理的现代化。
48 4
|
19天前
|
前端开发 Java Apache
SpringBoot实现电子文件签字+合同系统!
【10月更文挑战第15天】 在现代企业运营中,合同管理和电子文件签字成为了日常活动中不可或缺的一部分。随着技术的发展,电子合同系统因其高效性、安全性和环保性,逐渐取代了传统的纸质合同。本文将详细介绍如何使用SpringBoot框架实现一个电子文件签字和合同管理系统。
39 1
|
21天前
|
文字识别 安全 Java
SpringBoot3.x和OCR构建车牌识别系统
本文介绍了一个基于Java SpringBoot3.x框架的车牌识别系统,详细阐述了系统的设计目标、需求分析及其实现过程。利用Tesseract OCR库和OpenCV库,实现了车牌图片的识别与处理,确保系统的高准确性和稳定性。文中还提供了具体的代码示例,展示了如何构建和优化车牌识别服务,以及如何处理特殊和异常车牌。通过实际应用案例,帮助读者理解和应用这一解决方案。
|
2月前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的大学竞赛报名管理系统
基于Java+Springboot+Vue开发的大学竞赛报名管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的大学竞赛报名管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
196 3
基于Java+Springboot+Vue开发的大学竞赛报名管理系统
|
2月前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的蛋糕商城管理系统
基于Java+Springboot+Vue开发的蛋糕商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的蛋糕商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
128 3
基于Java+Springboot+Vue开发的蛋糕商城管理系统
|
2月前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的美容预约管理系统
基于Java+Springboot+Vue开发的美容预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的美容预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
50 3
基于Java+Springboot+Vue开发的美容预约管理系统
|
5天前
|
JavaScript NoSQL Java
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
CC-ADMIN后台简介一个基于 Spring Boot 2.1.3 、SpringBootMybatis plus、JWT、Shiro、Redis、Vue quasar 的前后端分离的后台管理系统
23 0
|
27天前
|
机器学习/深度学习 移动开发 自然语言处理
基于人工智能技术的智能导诊系统源码,SpringBoot作为后端服务的框架,提供快速开发,自动配置和生产级特性
当身体不适却不知该挂哪个科室时,智能导诊系统应运而生。患者只需选择不适部位和症状,系统即可迅速推荐正确科室,避免排错队浪费时间。该系统基于SpringBoot、Redis、MyBatis Plus等技术架构,支持多渠道接入,具备自然语言理解和多输入方式,确保高效精准的导诊体验。无论是线上医疗平台还是大型医院,智能导诊系统均能有效优化就诊流程。
|
24天前
|
JavaScript 安全 Java
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
126 1