springboot基于Java的药店管理系统

一、项目介绍

   药店管理网站是一个集药品采购、库存管理、订单处理及供应商管理于一体的综合性在线平台。通过该网站,药店能够实现药品信息的全面管理,包括药品的采购、入库、销售、库存监控等环节,从而有效提升药店的运营效率和客户满意度。
该网站通过数字化手段,简化了药品管理流程,减少了人工操作,提高了数据处理的准确性和及时性。同时,它提供了用户友好的界面和便捷的操作方式,使得药店员工能够轻松上手,快速完成各项管理任务。
药店管理网站还具备强大的数据分析功能,能够对药品销售数据进行统计和分析,帮助药店制定更加科学的销售策略和库存计划。通过与供应商管理功能的结合,药店能够建立紧密的合作关系,确保药品供应的稳定性和质量可靠性。
药店管理网站是药店实现数字化转型和提升竞争力的重要工具。它通过提供全面、高效的管理功能,为药店的运营提供了有力支持,促进了药店行业的健康发展。

关键词:药店;网站管理系统;B/S模式;软件架构

二、开发环境

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

三、功能介绍

根据现实需要,此系统本文设计出以下功能,主要有以下功能模板。
(1)用户功能:首页、药品、个人中心等。
(2)管理员功能:首页、采购药品管理、供应商管理、药品进库管理、药品分类管理、药品管理、用户管理、轮播图管理、商品订单等。
在系统的功能设计方面,药店管理网站的设计目标是为用户方便地浏览和购买药品,实时查询药品信息、价格及库存情况,因此抽取了满足管理员、用户基本业务需求的基本功能用例,如图3-1、3-2所示。
在这里插入图片描述

图3-1 管理员功能用例图
在这里插入图片描述

图3-2 用户功能用例图

四、核心代码

部分代码:

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();
    }
}

五、效果图

请添加图片描述

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

六、文章目录

目  录

摘 要 I
Abstract II
第1章 绪论 3
1.1 项目研究的背景 3
1.2开发目的和意义 3
1.3国内外研究现状 4
第2章 系统开发工具 5
2.1 Java编程语言 5
2.2 B/S模式 5
2.3 MySQL数据库 5
2.4 后端框架介绍 7
2.4.1 SpringBoot介绍 7
2.4.2 Mybatis 介绍 7
2.4.3 SpringMvc介绍 7
2.5 HTML技术技术 7
2.6 VUE框架介绍 8
2.7 JavaScript介绍 8
第3章 系统分析 9
3.1 概述 9
3.2 功能需求 9
3.3 非功能性需求 11
3.4 系统特色 12
3.5 可行性研究 12
3.5.1财务的可行性 12
3.5.2技术上的可行性 12
3.5.3操作的可行性 13
第4章 系统总体设计 13
4.1 系统架构设计 13
4.1.1体系结构 13
4.1.2 系统功能结构设计 14
4.2 系统数据库设计 16
4.2.1 数据库设计概述 16
4.2.2 数据库表的设计 17
第5章 系统功能实现 28
5.1登录模块的实现 28
5.2管理员管理模块 28
5.3用户管理模块 29
5.4采购药品管理模块 29
5.5药品管理模块 30
5.6商品订单管理模块 30
第6章 系统测试 31
6.1 测试定义 31
6.2 测试目的 31
6.3 测试方案 31
6.4 系统分析 33
第7章 总结 34
参考文献 35
致谢 36

  • 9
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

毕业程序员

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

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

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

打赏作者

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

抵扣说明:

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

余额充值