基于SpringBoot和Vue 的超市进销存系统

2023-12-05

收藏关注不迷路,源码文章末


一、项目介绍


本基于SpringBoot和Vue 的超市进销存系统是根据当前我国中小型超市环境相关的内容实际情况开发的,在系统语言选择上我们使用的Java语言,数据库是小巧灵活的MySQL数据库,本系统的开发可以极大的提高超市方面的管理。
本基于SpringBoot和Vue 的超市进销存系统采用Java语言来进行开发,从角色上分为管理员和员工以及用户三个角色,管理员部分功能主要包括首页,个人中心,基础数据管理,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能;员工部分功能主要包括首页,个人中心,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能;用户部分功能主要包括首页,个人中心,商品管理,收银管理。通过本系统基本可以满足中小型超市在进销存方面的管理。

关键词:超市,管理,MySQL,Java

二、开发环境

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

三、功能介绍

3.2.1员工部分分析
本基于SpringBoot和Vue 的超市进销存系统采用Java语言来进行开发,从角色上分为管理员和员工以及用户三个角色,员工部分功能主要包括首页,个人中心,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能。员工用例图如图3-1所示。
在这里插入图片描述

图3-1员工部分用例图
3.2.2 管理员部分分析
管理员部分功能主要包括首页,个人中心,基础数据管理,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能;其中管理员用例图如图3-2所示。
在这里插入图片描述

图3-2管理员用例图
3.2.3用户部分分析

用户部分功能主要包括首页,个人中心,商品管理,收银管理
在这里插入图片描述

图3-3用户用例图

本基于SpringBoot和Vue 的超市进销存系统采用Java语言来进行开发,从角色上分为管理员和员工以及用户三个角色,管理员部分功能主要包括首页,个人中心,基础数据管理,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能;员工部分功能主要包括首页,个人中心,供应商信息管理,商品管理,出入库管理,收银管理,用户管理等功能;用户部分功能主要包括首页,个人中心,商品管理,收银管理。通过本系统基本可以满足中小型超市在进销存方面的管理。具体如下图4-1所示

在这里插入图片描述

图4-2 基于SpringBoot和Vue 的超市进销存系统网站功能结构图

四、核心代码

部分代码:

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章 绪论 4
1.1研究背景 4
1.2开发意义 4
1.3研究内容和论文结构 4
第2章 关键技术介绍 6
2.1 开发工具和开发语言 6
2.2 springboot框架简介 6
2.3 MYSQL数据库 6
第三章系统分析 8
3.1 可行性分析 8
3.1.1 经济可行性 8
3.1.2 技术可行性 8
3.1.3 操作可行性 8
3.1.4 时间可行性 8
3.2 需求分析 9
3.2.1员工部分分析 9
3.2.2 管理员部分分析 9
3.2.3用户部分分析 10
第四章 系统设计 11
4.1 体系结构设计 11
4.1 基于SpringBoot和Vue 的超市进销存系统网站功能结构设计 12
4.2 基于SpringBoot和Vue 的超市进销存系统网站数据库设计 12
第五章 系统详细设计 18
5.1登录模块的实现 18
5.2用户管理 18
5.3员工管理 19
5.4供应商信息管理 20
5.5商品管理 22
5.6出入库管理 24
5.7收银管理 25
第六章 系统测试 27
6.1 概述 27
6.2 测试目的 27
6.3 系统功能测试 28
6.3.1登录测试 28
6.3.2 修改密码模块测试 28
6.3.3 删除商品模块测试 29
6.4 测试结果 29
总结 31
致谢语 32
参考文献: 33

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

基于SpringBoot和Vue 的超市进销存系统 的相关文章

随机推荐