基于springboot物资管理系统源码含论文

摘要

目前,大型物资作为社会零售业态中最为重要的组成部分,处于社会零售商业 进入高速发展的轨道阶段,其在社会经济发展的作用日益明显。国内各大大型基本 上都拥有自己的社会网,将社会物资管理纳入网络管理系统,实现实际业务需求, 提高管理水平和工作效率,具有十分重要的现实意义。

物资管理系统采用基于java三层架构和B/S模块进行开发。系统分为实体 类模块、数据库管理模块、后台管理模块和前台管理模块四个模块。主要面向管 理员用户和员工用户,在浏览器中实现进退物资管理、库存信息管理、销售信息 管理、物资信息管理和综合信息管理五大功能。系统对硬件环境要求不高,模块 清晰,界面设计友好美观,操作简单,方便实用,数据存储安全。

文中首先介绍开发的背景、国内外发展现状,引出研究目的和意义;然后分 析三层架构设计模式和springboot技术在系统中的使用;再从实际调研出发,对系统 进行需求和性能分析,得到系统的功能设计和数据库设计,并利用idea 开发平台、mysql数据库管理系统java开发语言、springboot等技术进行详细 设计与实现;最后经过初步测试,已经基本达到设计要求。

随着国家骨干高等院校和数字化社会的建设,依 托现代和社会信息资源,建立了一个大型物资管理系统。本系统目前在 已安全开发完成并且在运行中。今后还要进一步根 据物资实际业务需要,完善系统功能。

关键词:物资管理系统,三层架构,信息管理

演示视频:

 

java毕业设计之基于springboot物资管理系统源码含论文mysql编号417【包运行 指导】

 

 

package com.warehouse.bus.controller;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.warehouse.bus.entity.Goods;
import com.warehouse.bus.entity.Provider;
import com.warehouse.bus.service.IGoodsService;
import com.warehouse.bus.service.IProviderService;
import com.warehouse.bus.vo.GoodsVo;
import com.warehouse.sys.common.AppFileUtils;
import com.warehouse.sys.common.Constast;
import com.warehouse.sys.common.DataGridView;
import com.warehouse.sys.common.ResultObj;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * <p>
 * InnoDB free: 9216 kB; (`providerid`) REFER `warehouse/bus_provider`(`id`) 前端控制器
 * </p>
 *
 * @author cookie-
 * @since 2023-02-06
 */
@RestController
@RequestMapping("/goods")
public class GoodsController {

    @Autowired
    private IGoodsService goodsService;

    @Autowired
    private IProviderService providerService;

    /**
     * 查询物资
     * @param goodsVo
     * @return
     */
    @RequestMapping("loadAllGoods")
    public DataGridView loadAllGoods(GoodsVo goodsVo){
        IPage<Goods> page = new Page<Goods>(goodsVo.getPage(),goodsVo.getLimit());
        QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
        queryWrapper.eq(goodsVo.getProviderid()!=null&&goodsVo.getProviderid()!=0,"providerid",goodsVo.getProviderid());
        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getGoodsname()),"goodsname",goodsVo.getGoodsname());
        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getProductcode()),"productcode",goodsVo.getProductcode());
        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getPromitcode()),"promitcode",goodsVo.getPromitcode());
        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getDescription()),"description",goodsVo.getDescription());
        queryWrapper.like(StringUtils.isNotBlank(goodsVo.getSize()),"size",goodsVo.getSize());

        queryWrapper.orderByDesc("id");
        goodsService.page(page,queryWrapper);
        List<Goods> records = page.getRecords();
        for (Goods goods : records) {
            Provider provider = providerService.getById(goods.getProviderid());
            if (null!=provider){
                goods.setProvidername(provider.getProvidername());
            }
        }
        return new DataGridView(page.getTotal(),page.getRecords());
    }

    /**
     * 添加物资
     * @param goodsVo
     * @return
     */
    @RequestMapping("addGoods")
    public ResultObj addGoods(GoodsVo goodsVo){
        try {
            System.out.println("====================================");
            System.out.println(goodsVo.getGoodsimg());
            if (goodsVo.getGoodsimg()!=null&&goodsVo.getGoodsimg().endsWith("_temp")){
                String newName = AppFileUtils.renameFile(goodsVo.getGoodsimg());
                goodsVo.setGoodsimg(newName);
            }
            goodsService.save(goodsVo);
            return ResultObj.ADD_SUCCESS;
        } catch (Exception e) {
            e.printStackTrace();
            return ResultObj.ADD_ERROR;
        }
    }

    /**
     * 修改物资
     * @param goodsVo
     * @return
     */
    @RequestMapping("updateGoods")
    public ResultObj updateGoods(GoodsVo goodsVo){
        try {
            //物资图片不是默认图片
            if (!(goodsVo.getGoodsimg()!=null&&goodsVo.getGoodsimg().equals(Constast.DEFAULT_IMG_GOODS))){

                if (goodsVo.getGoodsimg().endsWith("_temp")){
                    String newName = AppFileUtils.renameFile(goodsVo.getGoodsimg());
                    goodsVo.setGoodsimg(newName);
                    //删除原先的图片
                    String oldPath = goodsService.getById(goodsVo.getId()).getGoodsimg();
                    AppFileUtils.removeFileByPath(oldPath);
                }
            }
            goodsService.updateById(goodsVo);
            return ResultObj.UPDATE_SUCCESS;
        } catch (Exception e) {
            e.printStackTrace();
            return ResultObj.UPDATE_ERROR;
        }
    }

    /**
     * 删除物资
     * @param id 物资id
     * @return
     */
    @RequestMapping("deleteGoods")
    public ResultObj deleteGoods(Integer id,String goodsimg){
        try {
            //删除物资的图片
            AppFileUtils.removeFileByPath(goodsimg);
//            goodsService.removeById(id);
            goodsService.deleteGoodsById(id);
            return ResultObj.DELETE_SUCCESS;
        } catch (Exception e) {
            e.printStackTrace();
            return ResultObj.DELETE_ERROR;
        }
    }

    /**
     * 加载所有可用的物资
     * @return
     */
    @RequestMapping("loadAllGoodsForSelect")
    public DataGridView loadAllGoodsForSelect(){
        QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
        queryWrapper.eq("available",Constast.AVAILABLE_TRUE);
        List<Goods> list = goodsService.list(queryWrapper);
        for (Goods goods : list) {
            Provider provider = providerService.getById(goods.getProviderid());
            if (null!=provider){
                goods.setProvidername(provider.getProvidername());
            }
        }
        return new DataGridView(list);
    }

    /**
     * 根据供应商ID查询物资信息
     * @param providerid    供应商ID
     * @return
     */
    @RequestMapping("loadGoodsByProviderId")
    public DataGridView loadGoodsByProviderId(Integer providerid){
        QueryWrapper<Goods> queryWrapper = new QueryWrapper<Goods>();
        queryWrapper.eq("available",Constast.AVAILABLE_TRUE);
        queryWrapper.eq(providerid!=null,"providerid",providerid);
        List<Goods> list = goodsService.list(queryWrapper);
        for (Goods goods : list) {
            Provider provider = providerService.getById(goods.getProviderid());
            if (null!=provider){
                goods.setProvidername(provider.getProvidername());
            }
        }
        return new DataGridView(list);
    }

    @RequestMapping("loadAllWarningGoods")
    public DataGridView loadAllWarningGoods(){
        List<Goods> goods = goodsService.loadAllWarning();
        return new DataGridView((long) goods.size(),goods);
    }



}

主要功能 在计算机业迅猛发展的今天,各产业皆与计算机技术紧密结合。物资管理系统就是利用计算机技术使复杂、繁锁的工作,变得更加的规范,更易于操作。对企业的管理效率,增加收入发挥不可取代的作用。 注意事项 (1)在输入数量后按一下回车键,可将合计金额显示出来。 (2)在输入固定资产编号后按一下回车键,可显示固定资产名称。 (3)如果没有添加“物资大类”信息,那么其它物资信息也无法添加。 业务流程 1.在“用户管理”树状菜单中。 (1)单击“添加用户”按钮,对用户信息添加操作。 (2)单击“修改密码”按钮,对当前用户密码修改操作。 2.在“系统维护”树状菜单中。 (1)单击“基本数据维护”按钮,主要对部门、仓库、计量单位、入库类型、出库类型、物资大类、物资类别、物资信息、往来单位以及收付款方式等信息进行添加操作。 (2)单击“数据库备份”按钮,对于对数据库中的数据备份操作。 (3)单击“数据库还原”按钮,对备份的数据进行还原操作。 3.在“单据管理”树状菜单中。 (1)单击“登记入库单”按钮,对入库信息登记操作。 (2)单击“登记出库单”按钮,对出库信息登记操作。 (3)单击“登记退库单”按钮,对退库信息登记操作。 (4)单击“登记盘点单”按钮,对盘点信息登记操作。 (5)单击“登记维修单”按钮,对维修信息登记操作。 (6)单击“登记付款单”按钮,对付款信息登记操作。 (7)单击“登记收款单”按钮,对收款信息登记操作。 4.在“固定资产管理”树状菜单中。 (1)单击“固定资产登记”按钮,对固定资产信息登记操作。 (2)单击“固定资产查询”按钮,对已登记的固定资产信息查询操作。 (3)单击“固定资产维修统计”按钮,对固定资产维修信息进行查询操作。 5.在“通用查询”树状菜单中。 (1)单击“单据查询”按钮,主要对入库单、出库单、退库单、盘点单、维修单、收款单以及付款单等信息进行查询操作。 (2)单击“入库物资统计”按钮,对入库物资信息查询操作。 (3)单击“出库物资统计”按钮,对出库物资信息查询操作。 (4)单击“退库物资统计”按钮,对退库物资信息查询操作。 (5)单击“应付账统计”按钮,对应付账信息浏览操作。 (6)单击“应收账统计”按钮,对应收账信息浏览操作。 App_Data下为Sql2005数据库,附加即可 默认管理员帐号/密码:51aspx/51aspx 【该源码由51aspx提供】
(1)在输入数量后按一下回车键,可将合计金额显示出来。 (2)在输入固定资产编号后按一下回车键,可显示固定资产名称。 (3)如果没有添加“物资大类”信息,那么其它物资信息也无法添加。 业务流程 1.在“用户管理”树状菜单中。 (1)单击“添加用户”按钮,对用户信息添加操作。 (2)单击“修改密码”按钮,对当前用户密码修改操作。 2.在“系统维护”树状菜单中。 (1)单击“基本数据维护”按钮,主要对部门、仓库、计量单位、入库类型、出库类型、物资大类、物资类别、物资信息、往来单位以及收付款方式等信息进行添加操作。 (2)单击“数据库备份”按钮,对于对数据库中的数据备份操作。 (3)单击“数据库还原”按钮,对备份的数据进行还原操作。 3.在“单据管理”树状菜单中。 (1)单击“登记入库单”按钮,对入库信息登记操作。 (2)单击“登记出库单”按钮,对出库信息登记操作。 (3)单击“登记退库单”按钮,对退库信息登记操作。 (4)单击“登记盘点单”按钮,对盘点信息登记操作。 (5)单击“登记维修单”按钮,对维修信息登记操作。 (6)单击“登记付款单”按钮,对付款信息登记操作。 (7)单击“登记收款单”按钮,对收款信息登记操作。 4.在“固定资产管理”树状菜单中。 (1)单击“固定资产登记”按钮,对固定资产信息登记操作。 (2)单击“固定资产查询”按钮,对已登记的固定资产信息查询操作。 (3)单击“固定资产维修统计”按钮,对固定资产维修信息进行查询操作。 5.在“通用查询”树状菜单中。 (1)单击“单据查询”按钮,主要对入库单、出库单、退库单、盘点单、维修单、收款单以及付款单等信息进行查询操作。 (2)单击“入库物资统计”按钮,对入库物资信息查询操作。 (3)单击“出库物资统计”按钮,对出库物资信息查询操作。 (4)单击“退库物资统计”按钮,对退库物资信息查询操作。 (5)单击“应付账统计”按钮,对应付账信息浏览操作。 (6)单击“应收账统计”按钮,对应收账信息浏览操作。
物资管理系统源码 主要功能 在计算机业迅猛发展的今天,各产业皆与计算机技术紧密结合。物资管理系统就是利用计算机技术使复杂、繁锁的工作,变得更加的规范,更易于操作。对企业的管理效率,增加收入发挥不可取代的作用。 注意事项 (1)在输入数量后按一下回车键,可将合计金额显示出来。 (2)在输入固定资产编号后按一下回车键,可显示固定资产名称。 (3)如果没有添加“物资大类”信息,那么其它物资信息也无法添加。 业务流程 1.在“用户管理”树状菜单中。 (1)单击“添加用户”按钮,对用户信息添加操作。 (2)单击“修改密码”按钮,对当前用户密码修改操作。 2.在“系统维护”树状菜单中。 (1)单击“基本数据维护”按钮,主要对部门、仓库、计量单位、入库类型、出库类型、物资大类、物资类别、物资信息、往来单位以及收付款方式等信息进行添加操作。 (2)单击“数据库备份”按钮,对于对数据库中的数据备份操作。 (3)单击“数据库还原”按钮,对备份的数据进行还原操作。 3.在“单据管理”树状菜单中。 (1)单击“登记入库单”按钮,对入库信息登记操作。 (2)单击“登记出库单”按钮,对出库信息登记操作。 (3)单击“登记退库单”按钮,对退库信息登记操作。 (4)单击“登记盘点单”按钮,对盘点信息登记操作。 (5)单击“登记维修单”按钮,对维修信息登记操作。 (6)单击“登记付款单”按钮,对付款信息登记操作。 (7)单击“登记收款单”按钮,对收款信息登记操作。 4.在“固定资产管理”树状菜单中。 (1)单击“固定资产登记”按钮,对固定资产信息登记操作。 (2)单击“固定资产查询”按钮,对已登记的固定资产信息查询操作。 (3)单击“固定资产维修统计”按钮,对固定资产维修信息进行查询操作。 5.在“通用查询”树状菜单中。 (1)单击“单据查询”按钮,主要对入库单、出库单、退库单、盘点单、维修单、收款单以及付款单等信息进行查询操作。 (2)单击“入库物资统计”按钮,对入库物资信息查询操作。 (3)单击“出库物资统计”按钮,对出库物资信息查询操作。 (4)单击“退库物资统计”按钮,对退库物资信息查询操作。 (5)单击“应付账统计”按钮,对应付账信息浏览操作。 (6)单击“应收账统计”按钮,对应收账信息浏览操作。
功能简介: 后台地址login.asp,用户admin,密码admin888,程序请使用新建网站或根目录下运行。 系统设置:powered by 25175.net 校区名称、校区名称 点负责人 物资管理员 (修改 删除 添加 分页) 机房名称、机房编号 所属校区 机房管理员 (修改 删除 添加 分页) 部门名称、部门名称 所属校区 负责人 (修改 删除 添加 分页) 办公室名称、办公室名称 所属校区 物资责任人 (修改 删除 添加 分页) 物资名称、建立分类,(添加,删除) 仓库设置、仓库名称 所属校区 仓库负责人 物资登记:系统仅对计算机及周边设备进行设计,产品属性:编号、配置清单、报修、借用、报损(整机报损,部件报损)、报废、登记时间、最后更新时间、最后操作用户名称、当前状态,如:正常、报修中、报损中等 信息搜索: 物资管理:能够全局管理物资。如:查看,修改,删除。 用户管理:添加、删除、编辑用户。可分为超级管理员,校区管理员,机房管理员、财务管理员。 超级管理员:具备所有管理权限 财务管理员:只具有查看所有信息权限 校区管理员:可以查看本构区物资信息,可以向超级管理员在线申请报修、借用、报损、报废。 机房管理员:可以查看所管辖机房物资信息,可以向校区管理员在线申请报修、借用、报损、报废。 其它功能:数据库备份,方便的表格打印功能,用户登陆系统日志功能,程序适用于各学校信息中心管理计算机相关设备
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

程序猿毕业分享网

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

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

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

打赏作者

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

抵扣说明:

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

余额充值