当前位置: 首页 > news >正文

基于java,SpringBoot和Vue的医院药房药品管理系统设计

摘要

随着医疗行业信息化的快速发展,高效、精准的医院药房药品管理对于提升医疗服务质量和医院运营效率至关重要。本文基于 Java 语言,采用 SpringBoot 框架和 Vue 框架进行医院药房药品管理系统的设计与研究。该系统以 SpringBoot 作为后端开发框架,利用其快速开发、自动配置等特性,实现了药品信息管理、库存管理、等核心业务逻辑的高效处理,并确保系统的稳定性和可扩展性。前端采用 Vue 框架,借助其组件化、响应式设计等优势,构建了用户友好、交互流畅的操作界面,方便药房工作人员进行各类操作。系统数据库选用 MySQL,用于存储和管理药品的详细信息、供应商数据、库存记录等大量数据。通过对系统的需求分析、功能模块设计、数据库设计以及前后端的开发与整合,该医院药房药品管理系统能够有效提高药品管理的准确性和效率,减少人工操作带来的错误,实现药品从采购入库到发放使用的全流程信息化管理,对优化医院药房管理流程、提升医院整体信息化水平具有重要的现实意义。

功能介绍

该系统将会实现管理员、员工和普通用户三种系统角色,不同角色拥有不同的系统功能;

管理员可以进行基础数据管理、客服聊天管理、公告管理、留言板管理、药品管理、药品入库管理、用户管理、员工管理、轮播图管理等;

员工可以进行客服聊天管理、公告管理、留言板管理、药品管理、药品入库管理等;

普通用户有单独的登录界面,登录成功后可以进行首页信息查看、留言、买药、客服咨询、个人中心管理等。

技术介绍

后端:Java语言的Spring Boot框架、MySQL数据库、Maven依赖管理等;

前端:管理员后台使用Vue、element-ui、axios等,用户前台使用HTML、layUI、element-ui等。

代码展示

<template>
  <div class="container">
      <el-alert title="检查好账户哦" type="success" :closable="false"></el-alert>
      <el-row style="margin: 20px 0 0 20px;">
        充值金额:<el-input v-model="newMoney" placeholder="充值金额" style="width: 40%" clearable></el-input>
      </el-row>
      <div class="pay-type-content">
        <label>
          <div class="pay-type-item" :span="8">
            <el-radio v-model="type" label="微信支付"></el-radio>
            <img src="@/assets/img/test/weixin.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item" :span="8">
            <el-radio v-model="type" label="支付宝支付"></el-radio>
            <img src="@/assets/img/test/zhifubao.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item" :span="8">
            <el-radio v-model="type" label="建设银行"></el-radio>
            <img src="@/assets/img/test/jianshe.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item">
            <el-radio v-model="type" label="农业银行"></el-radio>
            <img src="@/assets/img/test/nongye.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item">
            <el-radio v-model="type" label="中国银行"></el-radio>
            <img src="@/assets/img/test/zhongguo.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item">
            <el-radio v-model="type" label="交通银行"></el-radio>
            <img src="@/assets/img/test/jiaotong.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item">
            <el-radio v-model="type" label="民生银行"></el-radio>
            <img src="@/assets/img/test/minsheng.png" alt>
          </div>
        </label>
        <label>
          <div class="pay-type-item">
            <el-radio v-model="type" label="工商银行"></el-radio>
            <img src="@/assets/img/test/gongshang.png" alt>
          </div>
        </label>
      </div>
    <div class="buton-content">
      <el-button @click="submitTap" type="primary">确认支付</el-button>
      <el-button @click="back()">返回</el-button>
    </div>
  </div>
</template>
<script>
// import { Message } from "element-ui";
export default {
  data() {
    return {
      sessionTable:"",//表
      role:"",//权限
      userId:"",//账户
      type:"支付宝支付",
      newMoney: "100",//充值金额
      user:{},
    };
  },
  mounted() {
      let _this =this;
      this.sessionTable = this.$storage.get("sessionTable");
      this.role = this.$storage.get("role");
      this.userId = this.$storage.get("userId");
      this.$http({
          url: `${this.sessionTable}/session`,
          method: "get"
      }).then(({ data }) => {
          if (data && data.code === 0) {
              _this.user = data.data;
          } else {
              _this.$message.error(data.msg);
          }
      });
  },
  methods: {
    submitTap() {
      let _this =this;
      if(_this.newMoney == null || _this.newMoney == "" || _this.newMoney <=0){
          this.$message.error("充值金额必须大于0");
          return false;
      }

      _this.$confirm(`确定充值么?`, "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning"
      }).then(() => {
        _this.$http({
          url: `${_this.sessionTable}/update`,
          method: "post",
          data: {
              id:_this.userId,
              newMoney:Number(_this.newMoney)+Number(_this.user.newMoney),
          }
        }).then(({ data }) => {
          if (data && data.code === 0) {
            _this.$message({
              message: "充值成功",
              type: "success",
              duration: 1500,
              onClose: () => {
                  _this.$router.replace({ path: "/center" });
              }
            });
          } else {
            this.$message.error(data.msg);
          }
        });
      });
    },
    back(){
      this.$router.replace({ path: "/center" });
    }
  }
};
</script>

视频演示

Java,SppringBoot和Vue医院药房药品管理系统

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/54498.html

相关文章:

  • 【YOLOv12改进trick】多核Inception网络PKINet,替换YOLO骨干网络,创新涨点优化,含创新点Python代码,方便发论文
  • C语言常用的头文件,include文件
  • 【Maven】基于IDEA学习 Maven依赖 与 工程继承、聚合关系
  • Java面试总结
  • Linux Shell脚本-分隔符问题
  • java应用终止进程方式
  • Spring提供的SPEL表达式
  • Linux - 工具
  • 【HarmonyOS Next之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(七) -> JS动画(二)
  • 计算机毕业设计SpringBoot+Vue.js青年公寓服务平台(源码+文档+PPT+讲解)
  • MySQL 唯一索引下先事务A插入再事务B当前读是否阻塞问题
  • vue3中 组合式~测试深入组件:事件 与 $emit()—setup() 上下文对象ctx.emit
  • 前端文件加载耗时过长解决方案
  • 网络安全等级保护—定级
  • DeepSeek 3FS:端到端无缓存的存储新范式
  • Docker运行hello-world镜像失败或超时:Unable to find image ‘hello-world:latest‘ locally Trying to pull reposi
  • 安科瑞新能源充电桩解决方案:驱动绿色未来,赋能智慧能源
  • 利用50张可视化动图理解Mamba与状态空间模型
  • slam学习笔记9---ubuntu2004部署interactive_slam踩坑记录
  • 最新版本TOMCAT+IntelliJ IDEA+MAVEN项目创建(JAVAWEB)
  • Android MVI架构模式详解
  • Ubuntu20.04本地配置IsaacLab 4.2.0的G1训练环境(一)
  • 嵌入式硬件设计SPI时需要注意什么?
  • Spring中的事务管理是如何实现的?
  • 信奥赛CSP-J复赛集训(模拟算法专题)(1):P8813 [CSP-J 2022] 乘方
  • 从零开始学机器学习——什么是机器学习
  • 安卓音频框架混音器
  • java泛型(详细)
  • Vue 系列之:组件通讯
  • Docker基础篇——什么是Docker与Docker的仓库、镜像、容器三大概念