基于SSM+VUE的医院设备管理系统
項目背景
隨著科學技術的飛速發展,各行各業都在努力與現代先進技術接軌,通過科技手段提高自身的優勢;對于醫院設備管理系統當然也不能排除在外,隨著網絡技術的不斷成熟,帶動了醫院設備管理系統,它徹底改變了過去傳統的管理方式,不僅使服務管理難度變低了,還提升了管理的靈活性。這種個性化的平臺特別注重交互協調與管理的相互配合,激發了管理人員的創造性與主動性,對醫院設備管理系統而言非常有利。
本系統采用的數據庫是Mysql,使用Java技術開發,在設計過程中,充分保證了系統代碼的良好可讀性、實用性、易擴展性、通用性、便于后期維護、操作方便以及頁面簡潔等特點。
功能設計
功能模塊圖
登錄系統結構圖
醫院設備管理系統結構圖
功能截圖
管理員功能模塊
管理員登錄,通過填寫用戶名、密碼、角色等信息,輸入完成后選擇登錄即可進入醫院設備管理系統
管理員登錄進入醫院設備管理系統可以查看首頁、個人中心、科室員管理、維修員管理、設備領用管理、設備信息管理、設備入庫管理、設備出庫管理、設備報廢管理、設備借用管理、設備歸還管理、論壇管理、管理員管理、系統管理等內容
維修員管理,在維修員管理頁面可以查看維修員工號、維修員姓名、頭像、性別、手機號碼、郵箱等信息,并可根據需要對維修員管理進行詳情,修改,刪除或查看詳細內容等操作
設備信息管理,在設備信息管理頁面可以查看設備名稱、規格型號、品牌、生產日期、設備詳情等信息,并可根據需要對設備信息管理進行詳情,修改、刪除或查看詳細內容等操作
設備入庫管理,在設備入庫管理頁面可以查看設備名稱、入庫數量、入庫日期、備注等信息,并可根據需要對設備入庫管理進行詳情,修改、刪除或查看詳細內容操作
設備出庫管理,在設備出庫管理頁面可以查看設備名稱、出庫數量、出庫日期、備注等內容,并可根據需要對設備出庫管理進行查看詳情,修改,刪除或查看詳細內容等操作
論壇管理,在論壇管理頁面可以查看帖子標題、用戶名、狀態等信息,并可根據需要對論壇管理進行詳情,修改、刪除或查看詳細內容等操作
輪播圖;該頁面為輪播圖管理界面。管理員可以在此頁面進行首頁輪播圖的管理,通過新建操作可在輪播圖中加入新的圖片,還可以對以上傳的圖片進行修改操作,以及圖片的刪除操作
科室員功能模塊
科室員登錄,科室員通過填寫用戶名、密碼、角色限等信息,輸入完成后選擇登錄即可進入醫院設備管理系統
科室員登錄進入醫院設備管理系統可以查看首頁、個人中心、設備領用管理、設備報修管理、設備維修管理、保養預約管理等內容
保養預約管理,在保養預約管理頁面可以查看預約單號、設備名稱、保養內容、預約日期、科室員工號、科室員姓名、科室、審核回復、審核狀態、審核等詳細進行詳情、刪除
維修員功能模塊
維修員登錄,維修員通過填寫用戶名、密碼、角色等信息,輸入完成后選擇登錄即可進入醫院設備管理系統
維修員登錄進入醫院設備管理系統可以查看首頁、個人中心、設備報修管理、設備維修管理、保養預約管理、設備巡查管理、維修評價管理等內容
保養預約管理,在保養預約管理頁面通過查看預約單號、設備名稱、保養內容、預約日期、科室員工號、科室員姓名、科室、審核回復、審核狀態、審核等信息,并可根據需要對保養預約管理進行詳情、修改、刪除
前臺首頁功能模塊
科室員登錄,通過輸入賬號、密碼等信息進行登錄
個人中心,在個人中心進行查看科室員工號、科室員姓名、頭像、性別、科室、手機號碼、郵箱并進行更新信息、退出登錄等操作
我的發布,在我的發布頁面可以查看標題、發布時間等內容進行提交
相關代碼
數據庫配置
# Tomcat server:tomcat:uri-encoding: UTF-8port: 8080servlet:context-path: /springbootr1tjfspring:datasource:driverClassName: com.mysql.jdbc.Driverurl: jdbc:mysql://127.0.0.1:3306/springbootr1tjf?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT%2B8username: rootpassword: 123456# driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=springbootr1tjf # username: sa # password: 123456servlet:multipart:max-file-size: 10MBmax-request-size: 10MBresources:static-locations: classpath:static/,file:static/#mybatis mybatis-plus:mapper-locations: classpath*:mapper/*.xml#實體掃描,多個package用逗號或者分號分隔typeAliasesPackage: com.entityglobal-config:#主鍵類型 0:"數據庫ID自增", 1:"用戶輸入ID",2:"全局唯一ID (數字類型唯一ID)", 3:"全局唯一ID UUID";id-type: 1#字段策略 0:"忽略判斷",1:"非 NULL 判斷"),2:"非空判斷"field-strategy: 2#駝峰下劃線轉換db-column-underline: true#刷新mapper 調試神器refresh-mapper: true#邏輯刪除配置logic-delete-value: -1logic-not-delete-value: 0#自定義SQL注入器sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjectorconfiguration:map-underscore-to-camel-case: truecache-enabled: falsecall-setters-on-nulls: true#springboot 項目mybatis plus 設置 jdbcTypeForNull (oracle數據庫需配置JdbcType.NULL, 默認是Other)jdbc-type-for-null: 'null'控制層(controller)
package com.controller;import java.util.Arrays; import java.util.Calendar; import java.util.Date; import java.util.Map;import javax.servlet.http.HttpServletRequest;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.web.bind.annotation.RestController;import com.annotation.IgnoreAuth; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.entity.TokenEntity; import com.entity.UserEntity; import com.service.TokenService; import com.service.UserService; import com.utils.CommonUtil; import com.utils.MPUtil; import com.utils.PageUtils; import com.utils.R; import com.utils.ValidatorUtils;/*** 登錄相關*/ @RequestMapping("users") @RestController public class UserController{@Autowiredprivate UserService userService;@Autowiredprivate TokenService tokenService;/*** 登錄*/@IgnoreAuth@PostMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null || !user.getPassword().equals(password)) {return R.error("賬號或密碼不正確");}String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());return R.ok().put("token", token);}/*** 注冊*/@IgnoreAuth@PostMapping(value = "/register")public R register(@RequestBody UserEntity user){ // ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用戶已存在");}userService.insert(user);return R.ok();}/*** 退出*/@GetMapping(value = "logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 密碼重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));if(user==null) {return R.error("賬號不存在");}user.setPassword("123456");userService.update(user,null);return R.ok("密碼已重置為:123456");}/*** 列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/list")public R list( UserEntity user){EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();ew.allEq(MPUtil.allEQMapPre( user, "user")); return R.ok().put("data", userService.selectListView(ew));}/*** 信息*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") String id){UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 獲取用戶的session用戶信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");UserEntity user = userService.selectById(id);return R.ok().put("data", user);}/*** 保存*/@PostMapping("/save")public R save(@RequestBody UserEntity user){ // ValidatorUtils.validateEntity(user);if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {return R.error("用戶已存在");}userService.insert(user);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody UserEntity user){ // ValidatorUtils.validateEntity(user);UserEntity u = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername()));if(u!=null && u.getId()!=user.getId() && u.getUsername().equals(user.getUsername())) {return R.error("用戶名已存在。");}userService.updateById(user);//全部更新return R.ok();}/*** 刪除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){userService.deleteBatchIds(Arrays.asList(ids));return R.ok();} }業務層(Service)
package com.service;import java.util.List; import java.util.Map;import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.service.IService; import com.entity.UserEntity; import com.utils.PageUtils;/*** 系統用戶*/ public interface UserService extends IService<UserEntity> {PageUtils queryPage(Map<String, Object> params);List<UserEntity> selectListView(Wrapper<UserEntity> wrapper);PageUtils queryPage(Map<String, Object> params,Wrapper<UserEntity> wrapper);}數據訪問層(Dao)
package com.dao;import java.util.List;import org.apache.ibatis.annotations.Param;import com.baomidou.mybatisplus.mapper.BaseMapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.pagination.Pagination; import com.entity.UserEntity;/*** 用戶*/ public interface UserDao extends BaseMapper<UserEntity> {List<UserEntity> selectListView(@Param("ew") Wrapper<UserEntity> wrapper);List<UserEntity> selectListView(Pagination page,@Param("ew") Wrapper<UserEntity> wrapper);}總結
以上是生活随笔為你收集整理的基于SSM+VUE的医院设备管理系统的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ai人工智能的本质和未来_是人工智能手中
- 下一篇: 数据挖掘之统计学基础(1):【理论】描述