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