• springboot仓库管理系统


    作者主页:夜未央5788

     简介:Java领域优质创作者、Java项目、学习资料、技术互助

    文末获取源码

    项目介绍

    仓库管理系统总共分为三个大的模块,分别是基础管理、仓库管理和系统管理。其中各个模块底下又有其子模块。
    功能模块

    一、基础管理

    1、客户管理
    客户列表
    客户分页和模糊查询
    客户添加、修改、删除、批量删除
    2、供应商管理
    供应商列表
    供应商分页和模糊查询
    供应商添加、修改、删除、批量删除
    3、商品管理
    商品列表
    商品分页和模糊查询
    商品添加、修改、删除、商品图片的上传

    二、仓库管理

    1.入库
    订单查询、创建订单、删除订单
    2.出库
    订单查询、创建订单、删除订单
    3.仓库基础设置
    查询仓库、添加仓库、编辑仓库、删除仓库

    三、系统管理

    1、角色管理
    全查询角色和模糊查询
    角色的添加、修改、删除以及给角色分配权限
    2、用户管理
    全查询用户和模糊查询

    用户的添加、修改、删除、重置密码以及给用户分配角色

    环境需要

    1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
    2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
    3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
    4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
    5.是否Maven项目: 是;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目 

    6.数据库:MySql 8.0版本;

    技术栈

    1. 后端:SpringBoot+Shiro+MybatisPlus

    2. 前端:HTML+CSS+Javascript+LayUI+DTree+Thymeleaf

    使用说明

    1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
    2. 将项目中application.yml配置文件中的数据库配置改为自己的配置;
    3. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
    若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
    4. 运行项目,输入localhost:8080/ 登录

    5. 管理员用户名:钱多多 密码:123456

    运行截图

     

     

     

     

     

     

     

     

     

     

    相关代码

    登录控制器

    1. @RestController
    2. @RequestMapping("login")
    3. public class LoginController {
    4. @RequestMapping("login")
    5. public ResultObj login(String loginName, String password){
    6. Subject subject = SecurityUtils.getSubject();
    7. //token认证
    8. AuthenticationToken token = new UsernamePasswordToken(loginName, password);
    9. try{
    10. //对用户进行认证登陆
    11. subject.login(token);
    12. //通过subject获取以认证活动的user
    13. ActiveUser activeUser = (ActiveUser) subject.getPrincipal();
    14. //将user存储到session中
    15. WebUtils.getSession().setAttribute("user",activeUser.getTbUser());
    16. return ResultObj.LOGIN_SUCCESS;
    17. } catch (AuthenticationException e){
    18. e.printStackTrace();
    19. return ResultObj.LOGIN_ERROR_PASS;
    20. }
    21. }
    22. }

    菜单管理控制器

    1. /**
    2. * <p>
    3. * 菜单管理控制器
    4. * </p>
    5. *
    6. * @author hjs
    7. * @since 2020-06-29
    8. */
    9. @RestController
    10. @RequestMapping("/menu")
    11. public class MenuController {
    12. @Resource
    13. private LeftmenuService leftmenuService;
    14. //动态生成左边导航菜单栏,通过生成Json传送到前端页面实现
    15. @RequestMapping("loadIndexLeftMenuJson")
    16. public DataGridView loadIndexLeftMenuJson(){
    17. //查询所有菜单
    18. QueryWrapper<Leftmenu> queryWrapper = new QueryWrapper<>();
    19. List<Leftmenu> list = null;
    20. //获得用户 判断用户的类型
    21. TbUser tbUser = (TbUser) WebUtils.getSession().getAttribute("user");
    22. if(tbUser.getRoleId() == Constast.USER_TYPE_SUPER){ //超级管理员拥有所有菜单
    23. list = leftmenuService.list(queryWrapper);
    24. }else { //普通仓管没有系统管理
    25. //根据用户ID+角色+权限去查询
    26. queryWrapper.notIn("id",Constast.SUPER_USER_OWN); //反选id为4的列,要让普通仓管没有系统管理的menu
    27. list = leftmenuService.list(queryWrapper);
    28. }
    29. List<TreeNode> treeNodes = new ArrayList<>();
    30. for (Leftmenu leftmenu: list) {
    31. Integer id = leftmenu.getId();
    32. Integer pid = leftmenu.getPid();
    33. String title = leftmenu.getTitle();
    34. String icon = leftmenu.getIcon();
    35. String href = leftmenu.getHref();
    36. Boolean spread = leftmenu.getOpen()==Constast.OPEN_TRUE?true:false;
    37. treeNodes.add(new TreeNode(id,pid,title,icon,href,spread));
    38. }
    39. //用获得的菜单信息生成相应的Json
    40. List<TreeNode> list1 = TreeNodeBuilder.build(treeNodes,1);
    41. return new DataGridView(list1);
    42. }
    43. }

    如果也想学习本系统,下面领取。回复:089springboot    

  • 相关阅读:
    电脑重装系统后内存占用高怎么解决?
    PHP框架详解:Symfony框架的深度剖析
    Fluent的msh格式网格学习
    【BI报表】Superset二开相关接口文档
    RocketMQ 消息传递模型
    Google Earth Engine ——快速实现MODIS影像NDVI动画的在线加载并导出
    走近Harvest Moon:Moonbeam DeFi狂欢会
    【工作技术栈】【源码阅读】解决restTemplate提取LocalDateTime等特殊类时序列化报错问题
    arthas常用命令
    [架构之路-244]:目标系统 - 设计方法 - 软件工程 - 软件开发方法:结构化、面向对象、面向服务、面向组件的开发方法
  • 原文地址:https://blog.csdn.net/hanyunlong1989/article/details/125533740