SSM仓库物品管理系统 附带详细运行指导视频

文章目录

一、项目演示

项目演示地址: 视频地址

二、项目介绍

项目描述:这是一个基于SSM框架开发的仓库物品管理系统。首先,这项目代码简洁规范,注释说明详细,易于理解和学习。其次,这项目功能丰富,具有一个仓库物品管理系统该有的所有功能。

项目功能:此项目分为两个角色:普通管理员超级管理员普通管理员超级管理员都有登录、修改个人信息、管理仓库信息、管理物品信息、管理物品分类信息、管理物品出入库信息和查看公告信息等等功能。除此之外,超级管理员还有管理所有用户信息、管理操作日志信息、删除出入库信息和管理公告信息等等功能。

应用技术:SSM + JSP + MySQL + Bootstrap

运行环境:IntelliJ IDEA2019.3.5 + MySQL5.7(项目压缩包中自带) + JDK1.8 + Maven3.6.3(项目压缩包中自带)+ Tomcat8.5(项目压缩包中自带)

三、运行截图













四、主要代码

1.用户登录代码:

java 复制代码
	 /**
     * 登录操作
     * @param userDTO
     * @param request
     * @return
     */
    @Override
    public ResponseDTO<Boolean> login(UserDTO userDTO, HttpServletRequest request) {
        if(userDTO == null) {
            return ResponseDTO.errorByMsg(CodeMsg.DATA_ERROR);
        }
        if(CommonUtil.isEmpty(userDTO.getPhone())) {
            return ResponseDTO.errorByMsg(CodeMsg.PHONE_EMPTY);
        }
        if(CommonUtil.isEmpty(userDTO.getPassword())) {
            return ResponseDTO.errorByMsg(CodeMsg.PASSWORD_EMPTY);
        }
        // 判断验证码是否过期
        String correctCaptcha = (String) request.getSession().getAttribute(RuntimeConstant.CAPTCHA);
        if(CommonUtil.isEmpty(correctCaptcha)) {
            return ResponseDTO.errorByMsg(CodeMsg.CAPTCHA_EXPIRED);
        }
        // 比对验证码是否正确
        if(!correctCaptcha.toLowerCase().equals(userDTO.getCaptcha().toLowerCase())) {
            return ResponseDTO.errorByMsg(CodeMsg.CAPTCHA_ERROR);
        }
        UserExample userExample = new UserExample();
        userExample.createCriteria().andPhoneEqualTo(userDTO.getPhone()).andPasswordEqualTo(userDTO.getPassword());
        List<User> userList = userMapper.selectByExample(userExample);
        if(userList.size() != 1) {
            return ResponseDTO.errorByMsg(CodeMsg.PHONE_PASSWORD_ERROR);
        }
        request.getSession().setAttribute(RuntimeConstant.USER, userList.get(0));
        return ResponseDTO.successByMsg(true, "登录成功!");
    }

2.保存物品信息代码:

java 复制代码
/**
 * 保存物品数据
 * @param goodsDTO
 * @return
 */
@Override
public ResponseDTO<Boolean> save(GoodsDTO goodsDTO) {
    if(goodsDTO == null){
        return ResponseDTO.errorByMsg(CodeMsg.DATA_ERROR);
    }
    // 进行统一表单验证
    CodeMsg validate = ValidateEntityUtil.validate(goodsDTO);
    if (!validate.getCode().equals(CodeMsg.SUCCESS.getCode())) {
        return ResponseDTO.errorByMsg(validate);
    }
    // 判断是添加还是修改
    if(CommonUtil.isEmpty(goodsDTO.getId())) {
        // 添加
        Goods goods = CopyUtil.copy(goodsDTO, Goods.class);
        goods.setId(UuidUtil.getShortUuid());
        // 添加数据库数据
        if(goodsMapper.insertSelective(goods) == 0) {
            return ResponseDTO.errorByMsg(CodeMsg.GOODS_ADD_ERROR);
        }
    } else {
        // 修改
        Goods goods = CopyUtil.copy(goodsDTO, Goods.class);
        // 修改数据库数据
        if(goodsMapper.updateByPrimaryKeySelective(goods) == 0) {
            return ResponseDTO.errorByMsg(CodeMsg.GOODS_EDIT_ERROR);
        }
    }
    return ResponseDTO.success(true);
}

3.删除仓库信息代码:

java 复制代码
 	/**
     * 删除仓库数据
     * @param id
     * @return
     */
    @Override
    public ResponseDTO<Boolean> delete(String id) {
        if(CommonUtil.isEmpty(id)) {
            return ResponseDTO.errorByMsg(CodeMsg.DATA_ERROR);
        }
        if(warehouseMapper.deleteByPrimaryKey(id) == 0) {
            return ResponseDTO.errorByMsg(CodeMsg.WAREHOUSE_DELETE_ERROR);
        }
        return ResponseDTO.success(true);
    }
相关推荐
敲代码的嘎仔24 分钟前
JavaWeb零基础学习Day1——HTML&CSS
java·开发语言·前端·css·学习·html·学习方法
Terio_my6 小时前
Java bean 数据校验
java·开发语言·python
超级大只老咪6 小时前
何为“类”?(Java基础语法)
java·开发语言·前端
我笑了OvO7 小时前
C++类和对象(1)
java·开发语言·c++·类和对象
weixin_436525078 小时前
Gitee - IDEA 主支 master 和分支 dev 的使用
java·ide·intellij-idea
sheji34169 小时前
【开题答辩全过程】以 YF精品视频动漫平台为例,包含答辩的问题和答案
java·eclipse
小蕾Java9 小时前
Java 开发工具,最新2025 IDEA 使用
java·ide·intellij-idea
是席木木啊9 小时前
Idea升级到2024版本:“marketplace plugins are not loaded”解决方案
java·ide·intellij-idea
胚芽鞘6819 小时前
博客标题:解密 IntelliJ IDEA 调试:当你的 List 不仅仅是 List
java·ide·intellij-idea
꒰ঌ 安卓开发໒꒱9 小时前
Java面试-并发面试(一)
java·jvm·面试