基于java+springboot宠物医院管理系统的设计与实现

一、项目介绍

   随着信息化社会的形成和微电子技术日新月异的发展,为宠物医院管理提供了良好的发展环境,而宠物医院管理规模的扩大要求有一套实用而且方便的系统进行宠物医院管理的管理。在当前的这个大的气候下,宠物医院管理将具有长足的发展。特别是在互联网高度发展和应用的今天,人们对宠物医院的需求越来越多,也正因此,宠物医院管理系统应运而生,可以为人们的宠物医院有效的解决很多实际问题。在软件开发过程中最为重要的就是数据库的应用部分。
随着网络行业的快速发展,宠物医院管理涵盖的领域广泛,因此难以管理。传统的宠物医院管理系统管理方法的效率无法适应现在的发展,反而更加繁琐,所以需要建立并且完善宠物医院管理系统。
系统设计的主要意义在于,一方面,系统上线后可以带来很大的便利性,宠物医院管理属于非常细致的管理模式,要求数据量大,计算机管理可以提高精确性,更为便利的就是信息的查询,大大的提高了工作效率,改善了管理质量;另一方面,通过系统的设计,自己对软件设计有了更加深入的了解,并且产生了浓厚的学习兴趣,在对问题分析方面有了独特的方式,是进入社会之前一次很好的锻炼机会。

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

通过软件的需求分析已经获得了系统的基本功能需求,根据需求,将宠物医院管理系统功能模块主要分为管理员模块。管理员添加系统用户管理、医生、在诊医生、挂号预约、宠物档案、就诊档案、美容业务、美容预约、咨询信息等操作。如图4.1是系统的功能结构图。

请添加图片描述

图4.1系统功能结构图

四、核心代码

部分代码:

package com.example.controller;

import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {

    @Resource
    private CaiwuService caiwuService;

    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
	
	

    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }

    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }

    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }

    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }

    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
	    @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

六、文章目录

目录
1 引言 1
1.1选题背景 1
1.2 国内外研究现状 1
1.2.1 国外研究现状 1
1.2.2 国内研究现状 2
1.3 研究目的和意义 3
1.3.1 研究目的 3
1.3.2 研究意义 3
2 主要技术 4
2.1 开发技术与框架 4
2.1.1 Java语言 4
2.1.2 SpringBoot框架 5
2.1.3 Vue框架 5
2.1.4 MySQL数据库 5
3 系统分析 6
3.1系统总体需求分析 6
3.2可行性分析 6
3.2.1 技术可行性分析 6
3.2.2 经济可行性分析 6
3.2.3 操作可行性分析 6
3.3 需求分析 6
3.3.1用户用例分析 7
3.3.2 管理员用例分析 7
4 系统设计 10
4.1 系统总体功能设计 10
4.2 系统详细设计 10
4.3 数据库设计 14
4.3.1 数据库设计概述 14
4.3.2 数据库逻辑结构设计 17
4.3.3 数据库物理设计 18
5  系统实现 23
5.1系统开发环境 23
5.1.1系统开发平台 23
5.1.2系统运行环境 23
5.2 登录模块的实现 23
5.1.1 系统用户管理模块 24
5.1.2 宠物档案管理模块 25
5.1.3 就诊档案管理模块 26
5.1.4 美容业务模块 28
5.1.5 美容预约理模块 29
6 程序测试 31
6.1 测试的目的 31
6.2 测试方法 31
6.3 测试内容 31
6.3.1 界面测试 31
6.3.2 管理员登录测试 32
6.3.3 就诊档案添加测试 34
6.4 测试结果 34
设计总结与心得体会 36
参考文献 37

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

毕业程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值