问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

基于Spring Boot的菜鸟驿站收寄件管理系统设计与实现

创作时间:
2025-01-22 19:40:34
作者:
@小白创作中心

基于Spring Boot的菜鸟驿站收寄件管理系统设计与实现

随着社会的不断发展与进步,人们对于信息科学化的认识不断提高,科学化的管理方式能够使信息存储达到准确、快速、完善,并能提高工作管理效率。本文将介绍基于Spring Boot的菜鸟驿站收寄件管理系统的开发过程,包括系统的设计目标、需求分析、设计方案以及核心代码实现等。

一、项目介绍

论文主要是对菜鸟驿站收寄件管理系统进行了介绍,包括研究的现状,还有涉及的开发背景,然后还对系统的设计目标进行了论述,还有系统的需求,以及整个的设计方案,对系统的设计以及实现,也都论述的比较细致,最后对菜鸟驿站收寄件管理系统进行了一些具体测试。

本项目软件架构选择B/S模式,总体功能模块运用自顶向下的分层思想。再然后就是实现系统并进行代码编写实现功能。论文的最后章节总结一下自己完成本论文和开发本项目的心得和总结。通过菜鸟驿站收寄件管理系统将会使用户各个方面的工作效率带来实质性的提升。

关键词:菜鸟驿站,管理系统,B/S模式,软件架构

二、开发环境

开发语言:Java

框架:springboot

JDK版本:JDK1.8

服务器:tomcat7

数据库:mysql

数据库工具:Navicat11

开发软件:eclipse/myeclipse/idea

Maven包:Maven

三、功能介绍

管理员管理快递仓库信息,管理待发货信息,管理已收快递,管理物流以及留言信息,管理员工和用户资料。员工更改物流信息,管理快递仓库信息,管理待发货信息,管理已收快递,发布留言信息。用户签收快递,查看系统公告,发布留言,查看已收快递信息,查看快递物流信息。具体功能模块如下图,如图4-1所示。

四、核心代码

部分代码:

package com.example.controller;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import com.example.common.Result;
import com.example.common.ResultCode;
import com.example.entity.Caiwu;
import com.example.exception.CustomException;
import com.example.service.CaiwuService;
import com.example.utils.MapWrapperUtils;
import com.example.utils.jwt.JwtUtil;
import com.example.vo.CaiwuVo;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping(value = "/caiwu")
public class CaiwuController {
    @Resource
    private CaiwuService caiwuService;
    @PostMapping
    public Result<Caiwu> add(@RequestBody CaiwuVo caiwu) {
        caiwuService.add(caiwu);
           return Result.success(caiwu);
    }
    
    
    @PostMapping("/deleteList")
    public Result<Caiwu> deleteList(@RequestBody CaiwuVo caiwu) {
        caiwuService.deleteList(caiwu.getList());
        return Result.success();
    }
    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Long id) {
        caiwuService.delete(id);
        return Result.success();
    }
    @PutMapping
    public Result update(@RequestBody CaiwuVo caiwu) {
        caiwuService.update(caiwu);
        return Result.success();
    }
    @GetMapping("/{id}")
    public Result<Caiwu> detail(@PathVariable Integer id) {
        Caiwu caiwu = caiwuService.findById(id);
        return Result.success(caiwu);
    }
    @GetMapping
    public Result<List<Caiwu>> all() {
        return Result.success(caiwuService.list());
    }
    @PostMapping("/page")
    public Result<CaiwuVo> page(@RequestBody CaiwuVo caiwuVo) {
        return Result.success(caiwuService.findPage(caiwuVo));
    }
        @PostMapping("/login")
    public Result login(@RequestBody Caiwu caiwu, HttpServletRequest request) {
        if (StrUtil.isBlank(caiwu.getZhanghao()) || StrUtil.isBlank(caiwu.getMima())) {
            throw new CustomException(ResultCode.PARAM_LOST_ERROR);
        }
        Caiwu login = caiwuService.login(caiwu);
//        if(!login.getStatus()){
//            return Result.error("1001","状态限制,无法登录系统");
//        }
        if(login != null) {
            HashMap hashMap = new HashMap();
            hashMap.put("user", login);
            Map<String, Object> map = MapWrapperUtils.builder(MapWrapperUtils.KEY_USER_ID,caiwu.getId());
            String token = JwtUtil.creatToken(map);
            hashMap.put("token", token);
            return Result.success(hashMap);
        }else {
            return Result.error();
        }
    }
    @PutMapping("/updatePassword")
    public Result updatePassword(@RequestBody Caiwu info, HttpServletRequest request) {
        Caiwu caiwu = caiwuService.findById(info.getId());
        String oldPassword = SecureUtil.md5(info.getMima());
        if (!oldPassword.equals(caiwu.getMima())) {
            return Result.error(ResultCode.PARAM_PASSWORD_ERROR.code, ResultCode.PARAM_PASSWORD_ERROR.msg);
        }
        info.setMima(SecureUtil.md5(info.getNewPassword()));
        Caiwu caiwu1 = new Caiwu();
        BeanUtils.copyProperties(info, caiwu1);
        caiwuService.update(caiwu1);
        return Result.success();
    }
}

五、效果图

(此处应有系统界面截图,但原文中未提供具体图片)

六、文章目录

目 录

摘 要 I

Abstract II

1 绪论 1

1.1 项目研究的背景 1

1.2开发目的和意义 1

1.3国内外研究现状 1

2 系统开发工具 3

2.1 Java编程语言 3

2.2 B/S模式 3

2.3 MySQL数据库 3

2.4 Django框架介绍 4

2.5 Vue开发技术 4

2.6 开发工具Pycharm简介 5

3 系统分析 6

3.1 概述 6

3.2 功能需求 6

3.3 非功能性需求 7

3.4 系统特色 8

3.5 可行性研究 8

4 系统总体设计 9

4.1 系统架构设计 9

4.1.1体系结构 9

4.1.2 系统功能结构设计 9

4.2 系统数据库设计 10

4.2.1 数据库设计概述 10

4.2.2 数据库表的设计 10

5 系统功能实现 18

5.1 登录模块的实现 18

5.2 管理员管理模块 18

5.3 员工留言板管理模块 19

5.4 快递类型管理模块 19

5.5 快递信息管理模块 20

6 系统测试 22

6.1 测试定义 22

6.2 测试目的 22

6.3 测试方案 22

6.4 系统分析 23

总 结 24

参考文献 25

致 谢 26

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号