免费分享一套SpringBoot+Vue仓库(进销存)管理体系【论文+源码+SQL脚本】, ...

打印 上一主题 下一主题

主题 891|帖子 891|积分 2673

大家好,我是java1234_小锋老师,看到一个不错的SpringBoot+Vue仓库(进销存)管理体系,分享下哈。
项目视频演示

【免费】SpringBoot+Vue仓库(进销存)管理体系 Java结业计划_哔哩哔哩_bilibili


项目介绍

该体系的计划初志是解决传统仓库管理中存在的一些痛点和题目。传统的手工管理往往轻易出现库存错误、信息查找困难、操纵不便等情况。本体系的目标是通过引入计算机技能和自动化管理,优化仓库管理流程,提拔管理的正确性和效率。
体系分为超级管理员、仓库管理员和平凡用户三种脚色,为差别脚色的用户提供差别的功能和权限。超级管理员具备全面管理权限,能够管理管理员和用户信息、仓库和物品分类等。仓库管理员拥有对仓库和物品的管理权限,可以举行入库和出库操纵。平凡用户则可以查询和管理个人信息、查看物品信息和操纵日志。
在体系计划方面,采用了前后端分离的架构,确保体系具备良好的可维护性和扩展性。前端使用Vue框架实现用户界面,后端采用Spring Boot框架处置惩罚业务逻辑和数据存储。数据存储方面,使用MySQL数据库举行长期化存储,以确保数据安全性和可靠性。
体系的最终目标是提供一个用户友好的界面和简化的操纵流程,帮助用户快速正确地完成仓库管理使命。通过体系的自动化管理和信息化处置惩罚,能够减少人为错误和操纵失误,进步工作效率和准确度。同时,体系还提供操纵日志查询功能,便于管理员举行审计和追踪操纵记录,增强仓库管理的透明度和安全性。
总而言之,该仓库管理体系的计划初志是为了提拔仓库管理的效率和准确度,解决传统仓库管理中的题目。通过引入计算机技能和自动化管理,该体系能够帮助企业实现更高效、便捷和安全的仓库管理。

体系展示



部分代码

  1. package com.rabbiter.controller;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.core.toolkit.StringUtils;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.rabbiter.common.QueryPageParam;
  7. import com.rabbiter.common.Result;
  8. import com.rabbiter.entity.Menu;
  9. import com.rabbiter.entity.User;
  10. import com.rabbiter.service.MenuService;
  11. import com.rabbiter.service.UserService;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.web.bind.annotation.*;
  14. import java.util.HashMap;
  15. import java.util.List;
  16. @RestController
  17. @RequestMapping("/user")
  18. public class UserController {
  19.     @Autowired
  20.     private UserService userService;
  21.     @Autowired
  22.     private MenuService menuService;
  23.     /*
  24.      * 查询全部用户
  25.      * @date 2023/1/2 19:26
  26.      */
  27.     @GetMapping("/list")
  28.     public List<User> list(){
  29.         return userService.list();
  30.     }
  31.     /*
  32.      * 根据账号查找用户
  33.      * @date 2023/1/4 14:53
  34.      */
  35.     @GetMapping("/findByNo")
  36.     public Result findByNo(@RequestParam String no){
  37.         List list = userService.lambdaQuery()
  38.                 .eq(User::getNo,no)
  39.                 .list();
  40.         return list.size()>0?Result.success(list):Result.fail();
  41.     }
  42.     /*
  43.      * 新增用户
  44.      * @date 2023/1/2 19:11
  45.      */
  46.     @PostMapping("/save")
  47.     public Result save(@RequestBody User user){
  48.         return userService.save(user)?Result.success():Result.fail();
  49.     }
  50.     /*
  51.      * 更新用户
  52.      * @date 2023/1/2 19:11
  53.      */
  54.     @PostMapping("/update")
  55.     public Result update(@RequestBody User user){
  56.         return userService.updateById(user)?Result.success():Result.fail();
  57.     }
  58.     /*
  59.      * 用户登录:登录的时候一并将菜单信息也查询出来
  60.      * @date 2023/1/3 14:08
  61.      */
  62.     @PostMapping("/login")
  63.     public Result login(@RequestBody User user){
  64.         //匹配账号和密码
  65.         List list = userService.lambdaQuery()
  66.                 .eq(User::getNo,user.getNo())
  67.                 .eq(User::getPassword,user.getPassword())
  68.                 .list();
  69.         if(list.size()>0){
  70.             User user1 = (User)list.get(0);
  71.             List<Menu> menuList = menuService.lambdaQuery()
  72.                     .like(Menu::getMenuright,user1.getRoleId())
  73.                     .list();
  74.             HashMap res = new HashMap();
  75.             res.put("user",user1);
  76.             res.put("menu",menuList);
  77.             return Result.success(res);
  78.         }
  79.         return Result.fail();
  80.     }
  81.     /*
  82.      * 修改用户
  83.      * @date 2023/1/4 15:02
  84.      */
  85.     @PostMapping("/mod")
  86.     public boolean mod(@RequestBody User user){
  87.         return userService.updateById(user);
  88.     }
  89.    
  90.     /*
  91.      * 新增或修改:存在用户则修改,否则新增用户
  92.      * @date 2023/1/2 19:12
  93.      */
  94.     @PostMapping("/saveOrUpdate")
  95.     public Result saveOrUpdate(@RequestBody User user){
  96.         return userService.saveOrUpdate(user)?Result.success():Result.fail();
  97.     }
  98.     /*
  99.      * 删除用户
  100.      * @date 2023/1/2 19:15
  101.      */
  102.     @GetMapping("/del")
  103.     public Result delete(Integer id){
  104.         return userService.removeById(id)?Result.success():Result.fail();
  105.     }
  106.     /*
  107.      * 模糊查询
  108.      * @date 2023/1/2 19:36
  109.      */
  110.     @PostMapping("/listP")
  111.     public Result query(@RequestBody User user){
  112.         LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
  113.         if(StringUtils.isNotBlank(user.getName())){
  114.             wrapper.like(User::getName,user.getName());
  115.         }
  116.         return Result.success(userService.list(wrapper));
  117.     }
  118.     /*
  119.      * 分页查询
  120.      * @date 2023/1/2 19:48
  121.      */
  122. //    @PostMapping("/listPage")
  123. //    public Result page(@RequestBody QueryPageParam query){
  124. //        HashMap param = query.getParam();
  125. //        String name = (String)param.get("name");
  126. //
  127. //        Page<User> page = new Page();
  128. //        page.setCurrent(query.getPageNum());
  129. //        page.setSize(query.getPageSize());
  130. //
  131. //        LambdaQueryWrapper<User> wrapper = new LambdaQueryWrapper<>();
  132. //        wrapper.like(User::getName,name);
  133. //
  134. //        IPage result = userService.page(page,wrapper);
  135. //        return Result.success(result.getRecords(),result.getTotal());
  136. //    }
  137.     @PostMapping("/listPage")
  138.     public List<User> listPage(@RequestBody QueryPageParam query){
  139.         HashMap param = query.getParam();
  140.         String name = (String)param.get("name");
  141.         System.out.println("name=>"+(String)param.get("name"));
  142.         Page<User> page = new Page();
  143.         page.setCurrent(query.getPageNum());
  144.         page.setSize(query.getPageSize());
  145.         LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper();
  146.         lambdaQueryWrapper.like(User::getName,name);
  147.         IPage result = userService.page(page,lambdaQueryWrapper);
  148.         System.out.println("total=>"+result.getTotal());
  149.         return result.getRecords();
  150.     }
  151.     /*
  152.      * 查询功能:根据前端表单输入的信息或者下拉框选择查询用户,并以分页的形式返回前端
  153.      * @date 2023/1/4 20:28
  154.      */
  155.     @PostMapping("/listPageC1")
  156.     public Result listPageC1(@RequestBody QueryPageParam query){
  157.         HashMap param = query.getParam();
  158.         String name = (String)param.get("name");
  159.         String sex = (String)param.get("sex");
  160.         String roleId = (String)param.get("roleId");
  161.         Page<User> page = new Page();
  162.         page.setCurrent(query.getPageNum());
  163.         page.setSize(query.getPageSize());
  164.         LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper();
  165.         if(StringUtils.isNotBlank(name) && !"null".equals(name)){
  166.             lambdaQueryWrapper.like(User::getName,name);
  167.         }
  168.         if(StringUtils.isNotBlank(sex)){
  169.             lambdaQueryWrapper.eq(User::getSex,sex);
  170.         }
  171.         if(StringUtils.isNotBlank(roleId)){
  172.             lambdaQueryWrapper.eq(User::getRoleId,roleId);
  173.         }
  174.         IPage result = userService.pageCC(page,lambdaQueryWrapper);
  175.         System.out.println("total=>"+result.getTotal());
  176.         return Result.success(result.getRecords(),result.getTotal());
  177.     }
  178. }
复制代码
  1. <template>
  2.     <div
  3.         style="
  4.             text-align: center;
  5.             height: 100%;
  6.             padding: 20px 0 0 0;
  7.             margin: 0px;
  8.         "
  9.     >
  10.         <div class="welcome">
  11.             <b>
  12.                 <span> 欢迎使用仓库管理系统,</span>
  13.                 <span style="color: black">
  14.                     {{ user.name }}
  15.                 </span>
  16.             </b>
  17.         </div>
  18.    
  19.         <br />
  20.         <br />
  21.         <h5 style="font-size: 26px">
  22.             <span style="color: grey; font-size: 22px">您当前的角色是:</span>
  23.             {{
  24.                 user.roleId == 0
  25.                     ? "超级管理员"
  26.                     : user.roleId == 1
  27.                     ? "管理员"
  28.                     : "用户"
  29.             }}
  30.         </h5>
  31.         <DateUtils></DateUtils>
  32.         <div style="text-align: center; height: 18vw">
  33.             <img
  34.                 :src="require('@/assets/background.jpg')"
  35.                 style="height: 100%"
  36.             />
  37.         </div>
  38.     </div>
  39. </template>
  40. <script>
  41. import DateUtils from "./DateUtils";
  42. export default {
  43.     name: "Home",
  44.     components: { DateUtils },
  45.     data() {
  46.         return {
  47.             user: {},
  48.         };
  49.     },
  50.     computed: {},
  51.     methods: {
  52.         init() {
  53.             this.user = JSON.parse(sessionStorage.getItem("CurUser"));
  54.         },
  55.     },
  56.     created() {
  57.         this.init();
  58.     },
  59. };
  60. </script>
  61. <style scoped>
  62. .welcome {
  63.     font-size: 30px;
  64.     color: grey;
  65. }
  66. </style>
复制代码
源码下载

下载地址:
链接:https://pan.baidu.com/s/11-7DeDGjkZulRTTEBmHgwg 
提取码:1234 


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

饭宝

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表