根据 SpringBoot 和 jpa 和 JSP 搭建的一个简易收件派件系统
1、项目简介
本项目主要分为 3 个模块: (1)邮客模块 (2)邮差模块 (3)管理员模块
2、数据库模型如下:
3、项目结构如下:
4、功能模块细则:
邮客模块
1、邮客注册、登录 关键代码:
注册模块: 2、邮客登录以后可以查看自己的权限以及快递信息 当每个邮客注册登录后,他的权限都为新用户: 代码: 当邮客想要寄件时,必须完善自己的信息: 代码:
java
@ResponseBody
String resuleinfo(HttpServletRequest request, String username, String phone, Long woid, String address) {
Mailcustomer = (Mailcustomer) request.getSession().getAttribute("mailcustomer");
mailcustomer.setManame(username);
mailcustomer.setMaadress(address);
mailcustomer.setMaworkingarea(workingareaService.findworkingareaById(woid));
mailcustomer.setMaphone(phone);
if (mailcustomer.getMarole().getRoid() == 1) {
mailcustomer.setMarole(roleService.findRoleById((short) 2));
}
mailcustomerService.savemailcustomer(mailcustomer);
request.getSession().setAttribute("mailcustomer", mailcustomer);
return "更改成功!";
}
完善自己的信息以后,就可以寄件,并可以看到自己的折扣情况 点击确定按钮,就能看到自己的寄件情况:
邮差模块
1、邮差的登录 代码: 2、邮差可以查看快件的情况,也可以查看系统给予的任务,用不同颜色显示快件包裹的情况 派件: 收件: 当邮差点击正在寄件的时候,会弹出显示需要的金额 当邮差输入金额,点击确定以后,会在下方显示邮客需要交付的金额,然后用户也可以看到自己的邮费是多少 邮客查看金额:
代码:
java
@GetMapping("/receipt/{page}")
public String getreceipt(@PathVariable int page,HttpServletRequest request){
Post = (Post) request.getSession().getAttribute("post");
Sort = new Sort(Sort.Direction.DESC,"reid");
Pageable = PageRequest.of(page-1,10,sort);
Page<Recipient> recipients = recipientService.findRecipientToPost(post.getPoid(),pageable);
List<Recipient> recipients1 = recipients.getContent();
System.out.println(recipients1.toString());
List<State> lose = stateService.findLose("失败");
// System.out.println(lose.toString());
request.setAttribute("lose",lose);
isreoverdue(recipients1);
request.setAttribute("postrecipients",recipients1);
return "WO/Receipt";
}
3、当邮差寄件结束以后,点击完成寄件,邮客同时可以知道快件已经寄出了;当邮客发现快件在寄出过程中出现问题,可点击寄件失败按钮,提示邮客快件寄出过程遇到的问题:
同时邮客也能知道快件邮寄过程的问题: 代码:
管理员模块
1、管理员登录模块 代码:
2、管理员可以查看邮客的信息,并修改邮客的权限 注:当邮客没有完善自己的信息时,不能够修改他/她的权限
修改完以后,这里的每一个邮差的权限不同,所对应的颜色显示也不一样 代码: 3、查看邮差情况(详细信息),也可以新增邮差
修改邮差信息: 注:当邮差在所在区域有工作时,不能修改其工作区域以及工作状态,而当邮差有事请假在休息中,结束以后,管理员可以修改其状态以及工作区域
由上图看出,小强的工作状态已经修改为工作中
代码:
```java if (workingarea != post.getPoworkarea()) { if (repostid.contains(new Short((short) 1)) || repostid.contains(new Short((short) 2)) || sepostid.contains(new Short((short) 1)) || sepostid.contains(new Short((short) 2))) { return "该邮差目前在所处区域有正在进行的工作,不可更改!"; }else { post.setPoworkarea(workingarea); } } postService.update(post); return "更改成功"; }
```
4、通过点击工作状况,可以查询某个邮差的工作情况:
5、派件表
在这里可以看到分配给每个邮差的任务,同时也可以根据邮客提交的快件订单,分配给每个邮差
查看工作量以及工资:
注:分配原则:在同一区域内,每一个快件会默认派给工作量较少的邮差,因为不可能有的邮差工作量很大,而有的邮差工作量很少,甚至没有工作量,所以在这里设置了优先级
代码:
6、收件表 管理员可以通过该表查看每个包裹的情况
本个项目对 SpringBoot 初学者是一个很好的学习项目,如有兴趣,欢迎 star~
源码地址: https://github.com/FsXI/RSCdemo
参考文献
- 安能物流管理系统的设计与实现(大连理工大学·许燕伟)
- 基于Spring Cloud微服务架构的乡村物流系统设计与实现(华中科技大学·江文民)
- 基于贪心算法的物流配送系统设计与实现(西北师范大学·柴荣)
- 基于Android的快递派送系统的研究与实现(华北电力大学(北京)·侯进斌)
- 基于MVC模式的物流信息管理系统设计与开发(电子科技大学·程泳)
- 物流管理系统的设计与实现(吉林大学·王琪)
- 基于Android的快递派送系统的研究与实现(华北电力大学(北京)·侯进斌)
- 物流信息跟踪系统的设计与实现(吉林大学·高庆峰)
- 邮政便民服务系统的设计与实现(北京邮电大学·李云华)
- 基于MVC模式的物流信息管理系统设计与开发(电子科技大学·程泳)
- 基于Android的快递派送系统的研究与实现(华北电力大学(北京)·侯进斌)
- 邮政快递包裹收寄业务管理系统的设计与实现(山东大学·卢潇)
- 基于J2EE与JBPM的物流管理系统的设计与实现(北京工业大学·谷江帆)
- 物流管理系统的设计与实现(吉林大学·王琪)
- 基于SSH框架的企业物流管理系统的设计与实现(山东大学·李杨)
本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:源码港湾 ,原文地址:https://m.bishedaima.com/yuanma/35638.html