java基于spingboot+vue小型超市进销存管理系统的设计与实现-毕业设计

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


前言

  在科技快速发展的今天,各个行业都在不断地跟上时代的潮流,利用科技的力量来提升自己的竞争力。小型超市进销存管理系统自然也不例外,互联网技术的日益成熟,推动了小型超市进销存管理系统的建立,从根本上改变了以往的传统管理模式;不但降低了服务管理的难度,还提高了管理的灵活性。小型超市进销存管理系统,主要的模块包括管理员;系统首页、个人中心、采购员管理、业务员管理、仓管员管理、供货商管理、客户信息管理、商品分类管理、仓库库存管理、采购进货管理、销售信息管理、入库信息管理、调拨单管理、出库信息管理、盘点信息管理、账目信息管理,采购员;系统首页、个人中心、供货商管理、仓库库存管理、采购进货管理,业务员;系统首页、个人中心、客户信息管理、销售信息管理、调拨单管理,仓管员;系统首页、个人中心、仓库库存管理、入库信息管理、出库信息管理等功能。系统中管理员主要是为了安全有效地存储和管理各类信息,还可以对系统进行管理与更新维护等操作,并且对小型超市进销存管理有相应的操作权限。这个个人化的平台着重强调了互动协作与管理的相互合作,充分调动了管理人员的创造力和积极性,对小型超市进销存管理系统来说,是十分有益的。
  该系统以 Mysql为基础,以 SpringBoot为框架,以 Tomcat为运行环境,以 ECLIPSE为开发平台。在设计时,本系统的程序代码具有较好的可读性、实用性和扩展性;具有通用性强,后期维护方便,操作简单,网页简洁等优点。

一、项目介绍

  当前,随着经济的全球化以及中国经济改革的逐渐深化,零售业面临着越来越激烈的竞争,改善企业内部以及整个供应链各个环节的管理、调度及资源配置,迅速适应客户的新需求和市场新机遇的能力,是中国企业赢得竞争胜利的决定性因素。
在我国数量众多的企业中,中小企业占了绝大多数。这些企业也不可避免地要加入国际化企业的竞争行列,而实现企业信息化是参与挑战的必要条件。但是中小企业的多样性及其灵活多变的经营方式,加上相关投入量的限制,使得很多中小企业没有进行信息化建设。实际上大部分中小企业需要的只是能解决进销存管理、财务管理等的基础软件。因此,开发基于中小企业应用的进销存管理系统优为重要,在缺乏系统化的计算机信息管理,而只是上几个pos终端和几台计算机进行销售和进货、资金结算的情况下,当前的进货很难真确反应市场的需求,各部门缺少必要的计划,部门之间通讯也经常不通畅,管理人员很难对超市的进货、库存以及销售做预期的估算。该系统将帮助小型超市完成以上工作。

二、开发环境

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

三、功能介绍

  超市是寻常百姓生活中最常去的场所之一,伴随着日常生活节奏的不断加快,也随着商品流通模式的进步,对于所有超市而言,如何对商品的进销存进行有效的管理,是一个必须解决的问题。超市进销存管理系统可以实现采购、销售、以及库存等各方面的高效管理。
(一)软件部分:

  1. 根据可行性研究的结果,分析现有情况及问题,小型超市进销存管理系统的基本功能有如下模块:
    (1)采购进货管理:根据超市的采购进货情况,创建商品采购单和进货单,并针对其进行修改和审核。
    (2)销售管理:可以针对销售需要创建所需报表,例如所有商品销售汇总报表、分类销售汇总报表及其相对应的明细报表,也可以按客户分的销售报表,或者按业务员的销售报表等。超市进销存管理系统可以对该报表进行修改和审核。
    (3)仓库库存管理:超市进销存管理系统可以帮助用户设置所需的库存结构,可以设置仓库、货位、库存储备的最高值和最低值等。超市进销存管理系统提供根据调拨单自动调整库存并调整调拨记录的功能。可以对盘点记录进行管理,自动生成盘亏盘盈的功能。
    (4)账目管理:超市进销存管理系统通过销售记录和进货记录,可以实现应收应付帐管理的功能。同时还可以根据需要设置进销存以外的账目,并支持修改。
    在这里插入图片描述

四、核心代码

部分代码:

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.2国内外研究概况 2
1.3 研究的内容 2
第二章 关键技术的研究 3
2.1 相关技术 3
2.2 Java技术 3
2.3 ECLIPSE 开发环境 4
2.4 Tomcat介绍 4
2.5 Spring Boot框架 5
第三章 系统分析 5
3.1 系统设计目标 6
3.2 系统可行性分析 6
3.3 系统功能分析和描述 7
3.4系统UML用例分析 8
3.4.1管理员用例 9
3.4.2用户用例 9
3.5系统流程分析 10
3.5.1添加信息流程 11
3.5.2操作流程 12
3.5.3删除信息流程 13
第四章 系统设计 14
4.1 系统体系结构 15
4.2 数据库设计原则 16
4.3 数据表 17
第五章 系统实现 18
5.1用户功能模块 18
5.2管理员功能模块 19
5.3用户功能模块 19
5.4前台首页功能模块 19
第六章 系统测试 20
6.1测试定义及目的 21
6.2性能测试 22
6.3测试模块 23
6.4测试结果 24
总 结 25
致 谢 27

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

QQ1039692211

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

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

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

打赏作者

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

抵扣说明:

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

余额充值