springboot管理系统_基于Springboot+LayUI 开发的物流管理系统

缺物流管理系统项目经验的 推荐看看

  • 欢迎大家 star 或者 fork
  • 项目文档
    • 票据管理
    • 接货管理
    • 配车管理
    • 到货管理
    • 中转管理
    • 结算管理
    • 客户服务
    • 监控分析
    • 成本核算
    • 应用管理
    • 系统管理
    • 票据分发
    • 票据查询
    • 填写接货单
    • 查询接货单
    • 填写运输合同
    • 查询运输合同
    • 司机到货回执
    • 客户到货回执
    • 中转公司
    • 中转信息
    • 货运单结算
    • 运输结算
    • 代收货款结算
    • 其他杂费结算
    • 预期未到
    • 到货回告
    • 提货回告
    • 中转回告
    • 已提回告
    • 客户管理
    • 司机管理 | 职员管理
    • 线路管理
    • 新建用户组
    • 修改用户组信息
    • 分配用户组功能
    • 密码修改
    • 编写环境
    • 架构选型
    • 前端
    • 后端
    • 项目需求说明
    • 项目技术选型
    • 功能模块介绍

项目需求说明

首先,发货客户与快递公司签订货运合同(货运单),把货物交给快递公司来托运,并按照货运合同的付款方式付款。快递公司根据货物运输线路,为货物配车,找到合适的车辆后,与司机签订运输合同(回执单),并按照运输合同的运费结算方式结算。司机对货物检查无误后,装车,然后发车,发车后,货物的任何损失由司机承担。司机到达目的地后,需要经过货物验收,验收通过,填写一份司机回执单,快递公司这时同时通知发货客户和收货客户,货物已到达。如果货物没有通过验收,则填写差错记录。如果该货物不需要中转,通知收货客户来提货,客户验收通过后,填写客户回执单,快递公司这时通知发货客户,所发货物已被提走。如果该货物需要中转,则填写一份中转信息单,快递公司这时同时通知发货客户和收货客户,货物已被中转。中转成功后,收货客户来提货,并通知发货客户,货物已被提,然后进行转货结算。

项目技术选型

编写环境

  • Windows10 专业版 - 1803
  • Spring Tool Suite 3.9.4.RELEASE
  • Spring5 + SpringMvc5 + Spring-Data-Jpa
  • Mysql 8.0.11

架构选型

项目前后端分离,降低耦合度

前端

前端选用 layui 2.3.0,以 html 的形式保存,通过 js 向后端请求数据

后端

后端选用 SpringBoot 2.0.2 进行快速的原型开发,内部采用SSH(Spring + SpringMVC + Hibernate)

特色

  1. Hibernate 采用 SpringBoot-data-jpa 进行封装,简化数据库操作,采用命名规范进行数据库的增删改查,去除了接口的实现
  2. 使用 Springboot 进行快速开发,简化了配置文件的编写
  3. 项目中采用了 Swagger2.0,自动扫描 Controller 中的 RequestMapping,形成接口文档

接口截图文档如下:

003e32ccc5cd312096c0d6af50155a0a.png

功能模块介绍

票据管理

票据管理主要是对票据信息进行分发和历史票据的查询

票据分发

票据分发主要是对货运单进行司机分配,分发后,该货运单以及相应的货运回执单的状态会被更新为未到运单和未到车辆,同时更新发货时间

01228ef5481a423d8e711fc8c8791801.png
9a9aea5cf692911ac1a9ef3841359527.png

票据查询

票据查询主要是查询所有的历史票据

8d24f1310451d71c62a9fd8abd7836d5.png

主要进行货运单的分发(分发到司机)及历史单据的查询

接货管理

接货管理主要由工作人员负责填写一份货运单合同。合同中发货客户和收货客户信息都是下拉选择后自动查找数据库返回前台,职员编号通过获取当前登录用户的编号自动填写。实际交货日期、是否有效、是否审核都是禁止填写,后续事件触发后自动补充填写。提交合同后,货运单事件表修改该合同状态为待运,票据状态为已填。填完货运单后,自动跳转添加货物信息 关注公众号 Java项目分享 回复2020 获取Java最新面试宝典

填写接货单

接货单中,部分信息由数据库读取自动生成
接货单中的发货和收货客户由数据库返回前端显示
中转地及中转费在填写完发货地和收货地后,根据路线情况动态生成
添加货运单的同时自动生成货运单号,以HY开头,提交合同后,添加票据,类型为货运单,状态为已填,修改货运单事件表状态为待发

String goodsBillCode = "HY";while (true) {goodsBillCode += randomCode();    if (goodsBillDao.findByGoodsBillCode(goodsBillCode) == null) {        break;    }}goodsBill.setGoodsBillCode(goodsBillCode);goodsBill.setValidity("无效");goodsBill.setIfAudit("未审核");goodsBill.setIfSettleAccounts("未结账");goodsBillDao.save(goodsBill);BillInfo billInfo = new BillInfo();billInfo.setBillType("货运单");billInfo.setBillCode(goodsBillCode);billInfo.setBillState("已填");billInfo.setWriteDate(new Date());billInfoDao.save(billInfo);GoodsBillEvent goodsBillEvent = new GoodsBillEvent();goodsBillEvent.setGoodsBillId(goodsBillCode);goodsBillEvent.setEventName("待发");goodsBillEvent.setRemark("单据已填");goodsBillEvent.setOccurTime(new Date());goodsBillEventDao.save(goodsBillEvent);1234567891011121314151617181920212223242526

添加货物后,给回执单一个编号,以HZ开头,并且修改货运单状态为有效和已填

String goodsRevertBillId = "HZ";while (true) {    goodsRevertBillId += randomCode();    if (cargoReceiptDetailDao.findByGoodsRevertBillId(goodsRevertBillId) == null) {        break;    }}goodsBill.setValidity("有效");goodsBill.setIfAudit("审核");123456789
719e87edeba02b2f85a735b0d1bf9451.png
c253c2762489f2efbac5e01427a0d216.png

查询接货单

查询页面可以查看不同状态的货运单:待发运单、未到运单、未结运单、所有运单。页面以分页形式展示货运单编号、事件名称、备注、发生时间等简略信息。只有在待运状态的货运单,才有修改和删除功能,其他状态不能对其数据操作。所有页面都可以通过货运单编号查看详情。关注公众号 Java项目分享 回复2020 获取Java最新面试宝典

刚填写好后的接货单将会以待发的状态保存在待发运单中

29b0efb605a89e1c7c9af3426535ece9.png

可以查看运单的详细内容

2fb9aa05b4fefa81ff1fee1518b847d7.png

对待发运单可以进行修改或删除
删除货运单时只能修改货运单及票据状态,不能真正删除

GoodsBillEvent goodsBillEvent = new GoodsBillEvent();goodsBillEvent.setGoodsBillId(goodsBillCode);goodsBillEvent.setEventName("删除货运单");goodsBillEvent.setRemark("顾客不想发货");goodsBillEvent.setOccurTime(new Date());BillInfo billInfo = billInfoDao.findByBillCode(goodsBillCode);billInfo.setBillState("作废");12345678
62f7948fcdd3f4c5c2d6968f0b372139.png

配车管理

**主要进行货运回执单的填写。下拉选择未填写的货运回执单,选择后数据库查询联系人、地址等信息直接填写到页面。货运单状态自动填写为未出合同。
装货地点下拉选择,能找到所有路线的出发地,交货地点后台根据装货地点查询能到达的相应目的地供工作人员选择。起运时间和司机编号在分发票据的时候自动补充填写。是否结算在结算页面事件触发更改。关注公众号 Java项目分享 回复2020 获取Java最新面试宝典

查询页面可以查看运输合同在不同阶段的状态:未出合同、未到合同、未结车辆、所有合同。页面以分页形式展示货运回执单编号、回执单状态、收货联系人等大致信息。只有运输合同状态为未出合同时,才有修改和删除功能,其他状态不能对其进行数据操作。所有页面都可以通过货运单编号查看详情**

填写运输合同

填写主要是填写货运回执单主表,后端会检索数据库中没有运输合同的信息,从而显示在下拉框中,填票人选择相应的货运单后,会返显部分信息
填写后运输合同将处于未出合同状态
添加货运回执单的同时添加票据,类型为货运回执单,状态为已填,修改货运单事件表状态为待发。

BillInfo billInfo = new BillInfo();billInfo.setBillType("货运回执单");billInfo.setBillCode(cargoReceipt.getGoodsRevertBillCode());billInfo.setBillState("已填");billInfo.setWriteDate(new Date());billInfoDao.save(billInfo);123456
b445a028777f424bf037345abbf7435e.png

查询运输合同

可以查询未出合同、未到车辆、未结合同、所有合同4个状态的货运回执单

98cc66c4ce907ebf6f1a2825bfc4bc29.png

可以查看未出合同的详细信息并进行修改、删除操作
删除货运回执单时只能修改货运单及票据状态,不能真正删除

BillInfo billInfo = billInfoDao.findByBillCode(goodsRevertBillCode);billInfo.setBillState("作废");billInfo.setWriteDate(new Date());123

操作同接货类似,在此不重复展示

到货管理

司机可以在此进行到货回执的填写、用户可以填写顾客回执,并进行历史货物的查询
到货主要分两个部分:1. 司机填写到货回执,确认货物到货;2. 客户填写收货回执,确认收货

司机到货回执

司机填写到货回执,同时后端更新货运单和货运回执为未结;同时客服可以进行提货回告和到货回告并进行填写

e83f35daec9db96373da8ead53909c64.png
a91397836a974264a65859fa1551b5c1.png

客户到货回执

客户填写到货回执后,同时客服可以进行收货回告

40e3e0c9da20e37eb116b174b8380561.png
4b975101e72a94d218357c79e3b87814.png

客户可以查询自己的收货历史

fb5a5ec9a8767f913da82aaa63d926ad.png

中转管理

中转管理主要是进行中转公司信息的填写、查询以及对货物中转信息的录入和历史查询

中转公司

选择某一个城市,并对该城市的中转公司信息进行录入

76d1ed91d75995282cec1163e82126e6.png

可以在中转公司信息查询中查询所有的中转公司信息

7320bab7e64cc6f4bb1558701bd0c291.png

中转信息

中转信息主要是填写中转货物的中转信息

04176abeb561a6eb3e9ddc738bb16b32.png
26f3aab02f0414bdba4071b120a1a10b.png

可以在中转历史中查询所有的中转信息

e102c61108c1ad04f31d6f9fabce7235.png

项目地址如何获取?

私信:602

(不是评论哦,一定要私信:602)否则啥也等不到

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值