springboot基于Java Web的物流快递管理系统的设计与实现

收藏关注不迷路,源码文章末


一、项目介绍

  基于Java Web的物流快递管理系统利用Java框架开发的一款web系统,数据存储到MySQL中,会员端前台使用Html技术对界面进行设计和实现。本文先充分调查基于Java Web的物流快递管理系统的需求分析,深入剖析系统应该具有的功能,并设计完善的数据库。利用成熟的开发技术完成编码工作,最后进行投入前的测试工作。最终,完成前台和后台的基于Java Web的物流快递管理系统的功能,主要包括用户管理、快递信息管理、签收管理、在线寄件管理、订单信息管理、业务范围管理、联系我们等,通过前后台实现数据的传递。
关键词:快递公司;Java语言;快递;在线管理

二、开发环境

开发语言:Java
框架:springboot
JDK版本:JDK1.8
服务器:tomcat7
数据库:mysql
数据库工具:Navicat11
开发软件:eclipse/myeclipse/idea
Maven包:Maven
————————————————

三、功能介绍

基于Java Web的物流快递管理系统可以为快递公司领导提供业务管理功能,公司领导也就是系统的管理员,具有用户管理、快递信息管理、签收管理、在线寄件管理、订单信息管理、业务范围管理、联系我们的权限,添加或者删除用户基本信息,发布通知通知,对历史通知通知信息进行删除操作,
会员主要是查看个人信息,查看公司业务范围、联系我们信息、在线寄件、快递签收、兑换礼品。查看管理员发布的新闻资讯。
其中系统用例图如3.1所示:
在这里插入图片描述

图3.1系统用例图
其中用户登录中,通过HTML访问该基于Java Web的物流快递管理系统,选择登录界面,进行登录。登录成功进入到系统,登录失败,提示用户不存在,需要重新输入正确的用户名和密码。
用户管理中,先运行基于Java Web的物流快递管理系统,然后录入快递,验证信息后,保存信息到数据库,如果保存失败,提示错误信息,并返回到主界面。
快件管理中,启动基于Java Web的物流快递管理系统,进入到快件创建的页面,填写创建快件的基本信息,创建成功后更新快件数据库表的记录。在快件修改或者删除的页面,完成操作后,更新快件数据库表的记录。在快件列表界面,查询所有的快件数据库表的记录,然后绑定数据到快件列表中。
新闻资讯管理中,启动基于Java Web的物流快递管理系统,进入到新闻资讯创建的页面,填写创建新闻资讯的基本信息,创建成功后更新新闻资讯数据库表的记录。在新闻资讯修改或者删除的页面,完成操作后,更新新闻资讯数据库表的记录。在新闻资讯列表界面,查询所有的新闻资讯数据库表的记录,然后绑定数据到新闻资讯列表中。

管理员管理包括用户登录、用户管理、快递信息管理、签收管理、在线寄件管理、订单信息管理、业务范围管理、联系我们。
管理员功能结构图如下图4-2所示。
在这里插入图片描述

图 4.2 管理员功能结构图
管理员需要先进行登录,获得操作的权限后才能进行信息管理。在本系统中,管理员可以登录服务器端对用户进行管理,管理员添加快递,对会员的基本信息进行管理,还可以管理系统内的业务信息。管理员发布业务范围,制定相关的制度,添加系统使用手册,都可以在通知栏目中进行录入,最终添加的通知信息保存到数据库中。
4.2.3 会员功能设计
会员用户功能包括用户登录、查看个人信息、查看公司业务范围、联系我们信息、在线寄件、快递签收、兑换礼品。
会员用户功能设计图如下图4.4所示。
在这里插入图片描述

图 4.4 会员用户功能结构图
会员用户登录后,在HTML的首页,查看操作菜单,可以修改个人信息和修改个人密码,修改个人信息和密码的功能流程一致,都是通过先获取到个人信息后,然后进行修改,通过数据库修改语句更新信息。

四、核心代码

部分代码:

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();
    }
}

五、效果图

请添加图片描述

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

六、文章目录

目 录
摘 要 2
Abstract 3
目 录 5
1系统概述 8
1.1 研究的背景和意义 8
1.2 国内外研究现状 8
1.3 研究内容 9
2系统技术 11
2.1 Java技术 11
2.2 MYSQL数据库 11
2.3 JSON数据 12
3系统需求分析 13
3.1 可行性分析 13
3.1.1 经济可行性 13
3.1.2 技术可行性 13
3.1.3 法律可行性 13
3.2 需求分析 13
3.2.1 非功能性需求 13
3.2.2 功能性需求 14
4系统设计 17
4.1 架构设计 17
4.2 功能设计 18
4.2.1 管理员功能设计 18
4.2.3 会员功能设计 18
4.3 数据库设计 19
4.3.1 数据库设计原则 19
4.3.2 数据库ER图设计 20
4.3.3 数据库表设计 20
5 系统实现 24
5.1管理员功能实现 24
5.1.1 管理员登录功能实现 24
5.1.2 会员管理功能实现 24
5.1.3 快递管理功能实现 26
5.2.4 通知管理功能实现 26
5.2.5 兑换商品管理功能实现 27
5.2 会员功能实现 28
5.2.1 在线寄件管理实现 28
5.2.2 个人中心功能实现 29
5.3.3 新闻资讯查看功能实现 29
5.3.4 兑换商品功能实现 30
第6章 系统测试 31
6.1 程序测试 31
6.2 测试用例 32
6.3 系统测试结果 34
结论 35
参考文献 36
致谢 37

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

QQ1039692211

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值