基于javaweb+mysql的springboot物流管理系统(java+springboot+thymeleaf+html+mybatis+layui+mysql)

基于javaweb+mysql的springboot物流管理系统(java+springboot+thymeleaf+html+mybatis+layui+mysql)

运行环境

Java≥8、MySQL≥5.7

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

基于javaweb+mysql的SpringBoot物流管理系统(java+springboot+thymeleaf+html+mybatis+layui+mysql)

项目介绍

基于springboot的物流管理系统,这个项目的技术使用的都是比较新的,代码写的架构设计、编码风格很规范、注释清洗、代码简洁、适合于二次开发、学习。

管理员角色:注册、登录、我的物流,可以创建我要寄件,可以查看我要收件。个人管理,个人信息的查看和修改(头像、用户名、账号、密码、电话、邮箱等属性)、

我收到的(展示收到的物流信息,如快递编号、寄件人、存放位置、订单时间、状态等)、我寄出的(可以自行修改订单的状态,未寄出、已寄出、已签收等)。后台管理:物流管理和用户管理。

普通用户:注册、登录、我的物流,可以创建我要寄件,可以查看我要收件。个人管理,个人信息的查看和修改(头像、用户名、账号、密码、电话、邮箱等属性)、

我收到的(展示收到的物流信息,如快递编号、寄件人、存放位置、订单时间、状态等)、我寄出的(可以自行修改订单的状态,未寄出、已寄出、已签收等)。

环境需要

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.数据库:MySql 8.0/5.7版本;

6.是否Maven项目:是;

技术栈

1.后端:SpringBoot+Mysql+redis+Mybatis-plus

2.前端:Thymeleaf+jquery+layui

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;

  2. 使用IDEA/Eclipse/MyEclipse导入项目,导入成功后请执行maven clean;maven install命令,然后运行;

  3. 将项目中application.properties配置文件中的数据库配置改为自己的配置;

  4. 运行项目,在浏览器中输入http://localhost:8080 访问

  5. 管理员用户名密码:admin/admin,普通用户名密码:user/123456


/**
 */
@Controller
public class UserController {

    @Autowired
    UserService userService;

    @Autowired
    PostService postService;

    @Autowired
    OrdersService ordersService;

    @Autowired
    private AliyunOssUtil aliyunOssUtil;

    //个人信息
    @GetMapping("/toUserInfo")
    public String toUserInfo(HttpSession session, RedirectAttributes attributes) {

        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
        return "adminPickUp";
    }

//    @GetMapping("/toAdminPickUp")
//    public String toAdminPickUp(Model model, RedirectAttributes attributes, HttpSession session) {
//        User userInfo = (User) session.getAttribute("user");
//        if (userInfo != null) {
//            QueryWrapper<Position> status0 = new QueryWrapper<Position>().eq("status", 0);
//            List<Position> positionList = positionService.list(status0);
//            model.addAttribute("positionList", positionList);
//            return "adminPickUp";
//        } else {
//            attributes.addFlashAttribute("message", "权限不足,请先登录");
//            return "redirect:/toLogin";
//        }
//    }

    @PostMapping("/adminPickUpOrders")
    public String adminPickUpOrders(@RequestParam String num, @RequestParam String name, @RequestParam String sendName, @RequestParam Integer id, @RequestParam Integer positionId) {
        QueryWrapper<User> userName = new QueryWrapper<User>().eq("name", name);
        User user = userService.getOne(userName);
        Orders orders = new Orders();
        orders.setUserId(user.getId());
        orders.setSendName(sendName);
        orders.setPositionId(positionId);
        orders.setCreateTime(new Date());
        orders.setUpdateTime(new Date());
        orders.setNum(num);
        ordersService.save(orders);
        //柜子状态变为1
        Position position = positionService.getById(positionId);
        position.setStatus(1);
        positionService.updateById(position);
        //post状态变为2
        postService.updatePostStatusTo2(id, new Date());

        return "redirect:/toAdminSend";
    }

    //用户管理
    @GetMapping("/toAdminUser")
    public String toAdminUser(@RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, HttpSession session, Model model, RedirectAttributes attributes) {

/**
 */
@Controller
public class SendController {

    @Autowired
    PostService postService;

    @GetMapping("/toSend")
    public String toSend(HttpSession session, RedirectAttributes attributes){
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            return "send";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @PostMapping("/sendPost")
    public String sendPost(Post post,HttpSession session){
        User user = (User) session.getAttribute("user");
        post.setUserId(user.getId());
        post.setCreateTime(new Date());
        post.setUpdateTime(new Date());
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
        String format = dateFormat.format(new Date());
        String num = format.concat(String.valueOf(user.getId()));
        String postNum = num.concat("2");
        post.setNum(postNum);
        postService.save(post);
        return "redirect:/toUserSend";
    }

    @PostMapping("/updatePost")
    public String updatePost(Post post){
        post.setUpdateTime(new Date());
        postService.updateById(post);
        return "redirect:/toUserSend";
    }

}

/**
 */
@Controller
public class LoginController {

    @Autowired
    UserService userService;

    @GetMapping("/toLogin")
    public String toLogin(){
        return "login";
    }

    @PostMapping("/userLogin")
    public String login(@RequestParam String username, @RequestParam String password,
                        HttpSession session, RedirectAttributes attributes) {
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username).eq("password", password);
        User user = userService.getOne(wrapper);
        if (user != null){
            session.setAttribute("user",user);
            return "redirect:/index";
        }else {
            attributes.addFlashAttribute("message","用户名或密码错误");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("/toRegister")
    public String toRegister() {
        return "register";
    }

    @PostMapping("/register")
    public String register(User user) {
        user.setCreateTime(new Date());
        userService.save(user);
        return "redirect:/toLogin";
    }

    PostService postService;

    @Autowired
    CategoryService categoryService;

    @Autowired
    PositionService positionService;

    @Autowired
    OrdersService ordersService;

    @Autowired
    UserService userService;

    //寄件管理
    @GetMapping("/toAdminSend")
    public String toAdminSend(@RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, HttpSession session, Model model, RedirectAttributes attributes) {
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            PageHelper.startPage(pageNum, 6);
            List<Post> postList = postService.findAllPost();
            PageInfo<Post> pageInfo = new PageInfo<>(postList);
            model.addAttribute("postList", postList);
            model.addAttribute("pageInfo", pageInfo);
            List<Category> categoryList = categoryService.list();
            model.addAttribute("categoryList", categoryList);
            return "adminSend";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("adminSendPost/{id}")
    public String adminSendPost(@PathVariable Integer id) {
        postService.updatePostStatusTo1(id, new Date());
        return "redirect:/toAdminSend";
    }

    @PostMapping("/searchPost")
    public String searchPost(Post post, @RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, Model model) {
        PageHelper.startPage(pageNum, 6);
        List<Post> postList = postService.findPostBySearch(post);
        PageInfo<Post> pageInfo = new PageInfo<>(postList);
        List<Category> categoryList = categoryService.list();
        model.addAttribute("categoryList", categoryList);
        model.addAttribute("postList", postList);

/**
 */
@Controller
public class UserController {

    @Autowired
    UserService userService;

    @Autowired
    PostService postService;

    @Autowired
    OrdersService ordersService;

    @Autowired
    private AliyunOssUtil aliyunOssUtil;

    //个人信息
    @GetMapping("/toUserInfo")
    public String toUserInfo(HttpSession session, RedirectAttributes attributes) {

        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            Integer id = userInfo.getId();
            User user = userService.getById(id);
    @PostMapping("/userLogin")
    public String login(@RequestParam String username, @RequestParam String password,
                        HttpSession session, RedirectAttributes attributes) {
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username).eq("password", password);
        User user = userService.getOne(wrapper);
        if (user != null){
            session.setAttribute("user",user);
            return "redirect:/index";
        }else {
            attributes.addFlashAttribute("message","用户名或密码错误");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("/toRegister")
    public String toRegister() {
        return "register";
    }

    @PostMapping("/register")
    public String register(User user) {
        user.setCreateTime(new Date());
        userService.save(user);
        return "redirect:/toLogin";
    }

    @GetMapping("/findUsername")
    @ResponseBody
    public void findUsername(String username, HttpServletResponse response) throws IOException {
        response.setContentType("application/json;charset=utf-8");
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username);
        User userInfo = userService.getOne(wrapper);
        Map<String, Object> map = new HashMap<>();
        if (userInfo != null) {
            map.put("userExit", true);
            map.put("msg", "用户名已存在");
        } else {
            map.put("userExit", false);
            map.put("msg", "正确");
        }
        //将map转为json,并且传递给客户端
        String s = JSON.toJSONString(map);
        PrintWriter writer = response.getWriter();
        writer.write(s);
        writer.close();
    }

    @GetMapping("/findName")
    @ResponseBody
    public void findName(String name, HttpServletResponse response) throws IOException {
            PageInfo<Post> pageInfo = new PageInfo<>(postList);
            model.addAttribute("postList", postList);
            model.addAttribute("pageInfo", pageInfo);
            List<Category> categoryList = categoryService.list();
            model.addAttribute("categoryList", categoryList);
            return "adminSend";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("adminSendPost/{id}")
    public String adminSendPost(@PathVariable Integer id) {
        postService.updatePostStatusTo1(id, new Date());
        return "redirect:/toAdminSend";
    }

    @PostMapping("/searchPost")
    public String searchPost(Post post, @RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, Model model) {
        PageHelper.startPage(pageNum, 6);
        List<Post> postList = postService.findPostBySearch(post);
        PageInfo<Post> pageInfo = new PageInfo<>(postList);
        List<Category> categoryList = categoryService.list();
        model.addAttribute("categoryList", categoryList);
        model.addAttribute("postList", postList);
        model.addAttribute("pageInfo", pageInfo);
        return "adminSend";
    }

    //收件管理
    @GetMapping("adminPickUpPost/{id}")
    public String adminPickUpPost(@PathVariable Integer id, Model model) {
        Post post = postService.findById(id);
        model.addAttribute("post", post);
        QueryWrapper<Position> status0 = new QueryWrapper<Position>().eq("status", 0);
        List<Position> positionList = positionService.list(status0);
        model.addAttribute("positionList", positionList);
        return "adminPickUp";
    }

//    @GetMapping("/toAdminPickUp")
//    public String toAdminPickUp(Model model, RedirectAttributes attributes, HttpSession session) {
//        User userInfo = (User) session.getAttribute("user");
//        if (userInfo != null) {
//            QueryWrapper<Position> status0 = new QueryWrapper<Position>().eq("status", 0);
    }

}

/**
 */
@Controller
public class SendController {

    @Autowired
    PostService postService;

    @GetMapping("/toSend")
    public String toSend(HttpSession session, RedirectAttributes attributes){
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            return "send";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @PostMapping("/sendPost")
    public String sendPost(Post post,HttpSession session){
        User user = (User) session.getAttribute("user");
        post.setUserId(user.getId());
        post.setCreateTime(new Date());
        post.setUpdateTime(new Date());
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
        String format = dateFormat.format(new Date());
        String num = format.concat(String.valueOf(user.getId()));
        String postNum = num.concat("2");
        post.setNum(postNum);
        postService.save(post);
        return "redirect:/toUserSend";
    }

/**
 */
@Controller
public class UserController {

    @Autowired
    UserService userService;

    @Autowired
    PostService postService;

    @Autowired
    OrdersService ordersService;

    @Autowired
    private AliyunOssUtil aliyunOssUtil;

    //个人信息
    @GetMapping("/toUserInfo")
    public String toUserInfo(HttpSession session, RedirectAttributes attributes) {

        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            Integer id = userInfo.getId();
            User user = userService.getById(id);
            //更新
            session.setAttribute("user", user);
            return "userInfo";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @PostMapping("/updateUserInfo")
    public String updateUserInfo(User user, HttpSession session) {
        User userInfo = (User) session.getAttribute("user");
        Integer id = userInfo.getId();
        user.setId(id);

    @GetMapping("/adminUserTo1/{id}")
    public String adminUserTo1(@PathVariable Integer id, HttpSession session) {
        User user = userService.getById(id);
        user.setRole(1);
        userService.updateById(user);

        User userInfo = (User) session.getAttribute("user");
        if (id == userInfo.getId()) {
            session.setAttribute("user", user);
            return "index";
        }
        return "redirect:/toAdminUser";
    }

    @GetMapping("/adminUserTo0/{id}")
    public String adminUserTo0(@PathVariable Integer id) {
        User user = userService.getById(id);
        user.setRole(0);
        userService.updateById(user);
        return "redirect:/toAdminUser";
    }

}

    @Autowired
    CategoryService categoryService;

    @Autowired
    PositionService positionService;

    @Autowired
    OrdersService ordersService;

    @Autowired
    UserService userService;

    //寄件管理
    @GetMapping("/toAdminSend")
    public String toAdminSend(@RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, HttpSession session, Model model, RedirectAttributes attributes) {
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            PageHelper.startPage(pageNum, 6);
            List<Post> postList = postService.findAllPost();
            PageInfo<Post> pageInfo = new PageInfo<>(postList);
            model.addAttribute("postList", postList);
            model.addAttribute("pageInfo", pageInfo);
            List<Category> categoryList = categoryService.list();
            model.addAttribute("categoryList", categoryList);
            return "adminSend";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("adminSendPost/{id}")
    public String adminSendPost(@PathVariable Integer id) {
        postService.updatePostStatusTo1(id, new Date());
        return "redirect:/toAdminSend";
    }

    @PostMapping("/searchPost")
    public String searchPost(Post post, @RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, Model model) {
        PageHelper.startPage(pageNum, 6);
        List<Post> postList = postService.findPostBySearch(post);
        PageInfo<Post> pageInfo = new PageInfo<>(postList);
        List<Category> categoryList = categoryService.list();
    public void findName(String name, HttpServletResponse response) throws IOException {
        response.setContentType("application/json;charset=utf-8");
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("name", name);
        User userInfo = userService.getOne(wrapper);
        Map<String, Object> map = new HashMap<>();
        if (userInfo != null) {
            map.put("nameExit", true);
            map.put("msg", "用户名已存在");
        } else {
            map.put("nameExit", false);
            map.put("msg", "正确");
        }
        //将map转为json,并且传递给客户端
        String s = JSON.toJSONString(map);
        PrintWriter writer = response.getWriter();
        writer.write(s);
        writer.close();
    }

    @GetMapping("/logout")
    public String logout(HttpSession session){
        session.removeAttribute("user");
        return "redirect:/toLogin";
    }

}

        return "login";
    }

    @PostMapping("/userLogin")
    public String login(@RequestParam String username, @RequestParam String password,
                        HttpSession session, RedirectAttributes attributes) {
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username).eq("password", password);
        User user = userService.getOne(wrapper);
        if (user != null){
            session.setAttribute("user",user);
            return "redirect:/index";
        }else {
            attributes.addFlashAttribute("message","用户名或密码错误");
            return "redirect:/toLogin";
        }
    }

    @GetMapping("/toRegister")
    public String toRegister() {
        return "register";
    }

    @PostMapping("/register")
    public String register(User user) {
        user.setCreateTime(new Date());
        userService.save(user);
        return "redirect:/toLogin";
    }

    @GetMapping("/findUsername")
    @ResponseBody
    public void findUsername(String username, HttpServletResponse response) throws IOException {
        response.setContentType("application/json;charset=utf-8");
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username);
        User userInfo = userService.getOne(wrapper);
        Map<String, Object> map = new HashMap<>();
        if (userInfo != null) {
            map.put("userExit", true);
            map.put("msg", "用户名已存在");
        } else {
}

/**
 */
@Controller
public class LoginController {

    @Autowired
    UserService userService;

    @GetMapping("/toLogin")
    public String toLogin(){
        return "login";
    }

    @PostMapping("/userLogin")
    public String login(@RequestParam String username, @RequestParam String password,

}

/**
 */
@Controller
public class LoginController {

    @Autowired
    UserService userService;

    @GetMapping("/toLogin")
    public String toLogin(){
        return "login";
    }

    @PostMapping("/userLogin")
    public String login(@RequestParam String username, @RequestParam String password,
                        HttpSession session, RedirectAttributes attributes) {
        QueryWrapper<User> wrapper = new QueryWrapper<User>().eq("username", username).eq("password", password);
        User user = userService.getOne(wrapper);
        if (user != null){
            session.setAttribute("user",user);
            return "redirect:/index";
        List<Position> positionList = positionService.list(status0);
        model.addAttribute("positionList", positionList);
        return "adminPickUp";
    }

//    @GetMapping("/toAdminPickUp")
//    public String toAdminPickUp(Model model, RedirectAttributes attributes, HttpSession session) {
//        User userInfo = (User) session.getAttribute("user");
//        if (userInfo != null) {
//            QueryWrapper<Position> status0 = new QueryWrapper<Position>().eq("status", 0);
//            List<Position> positionList = positionService.list(status0);
//            model.addAttribute("positionList", positionList);
//            return "adminPickUp";
//        } else {
//            attributes.addFlashAttribute("message", "权限不足,请先登录");
//            return "redirect:/toLogin";
//        }
//    }

    @PostMapping("/adminPickUpOrders")
    public String adminPickUpOrders(@RequestParam String num, @RequestParam String name, @RequestParam String sendName, @RequestParam Integer id, @RequestParam Integer positionId) {
        QueryWrapper<User> userName = new QueryWrapper<User>().eq("name", name);
        User user = userService.getOne(userName);
        Orders orders = new Orders();
        orders.setUserId(user.getId());
        orders.setSendName(sendName);
        orders.setPositionId(positionId);
        orders.setCreateTime(new Date());
        orders.setUpdateTime(new Date());
        orders.setNum(num);
        ordersService.save(orders);
        //柜子状态变为1
        Position position = positionService.getById(positionId);
        position.setStatus(1);
        positionService.updateById(position);
        //post状态变为2
        postService.updatePostStatusTo2(id, new Date());

        return "redirect:/toAdminSend";
    }

    //用户管理
    @GetMapping("/toAdminUser")
    public String toAdminUser(@RequestParam(required = false, defaultValue = "1", value = "pageNum") int pageNum, HttpSession session, Model model, RedirectAttributes attributes) {
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            PageHelper.startPage(pageNum, 6);
            List<User> userList = userService.list();
            PageInfo<User> pageInfo = new PageInfo<>(userList);
            model.addAttribute("userList", userList);
            model.addAttribute("pageInfo", pageInfo);
            return "adminUser";
        } else {

        return "redirect:/toPickUp";
    }

    @GetMapping("/pickUpOrders2/{id}")
    public String pickUpOrders2(@PathVariable Integer id){
        ordersService.updateOrdersStatusTo1(id,new Date());
        //柜子状态变为0
        Orders orders = ordersService.findById(id);
        Position position = positionService.getById(orders.getPositionId());
        position.setStatus(0);
        positionService.updateById(position);
        return "redirect:/toUserPickUp";
    }

}

/**
 */
@Controller
public class SendController {

    @Autowired
    PostService postService;

    @GetMapping("/toSend")
    public String toSend(HttpSession session, RedirectAttributes attributes){
        User userInfo = (User) session.getAttribute("user");
        if (userInfo != null) {
            return "send";
        } else {
            attributes.addFlashAttribute("message", "权限不足,请先登录");
            return "redirect:/toLogin";
        }
    }

请添加图片描述

请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值