C/C++菜鸟驿站管理系统[2025-04-18]
一、系统阐述
菜鸟驿站管理系统核心功能基于C语言实现。系统用户分为普通用户、VIP用户、商家用户、企业用户和驿站工作人员。
各种用户都享有登录、注册、修改信息、注销、密码找回以及取包裹、寄包裹,查询包裹信息以及寄件的功能。
其中驿站工作人员额外享有商品入库、查询所有包裹信息、查看驿站当前存储情况、处理用户申诉,以及生成周报月报的功能。
系统能自动实现计算流动资金,计算油费等费用,删除超过30天的包裹信息,为包裹分配存储空间并生成取件码,预警,生成周报月报并且生成优化空间管理的方案的功能
二、一些约定
- 系统功能基于某一对象的属性实现。
- 系统包含的对象有:包裹、流动资金、不同用户、驿站存储信息。
- 本驿站的总储存体积为300立方米,快递储存按体积分为三个梯度,小于6立方分米,6立方分米到24立方分米,大于24立方分米三个梯度。初始时,各个区域的存储空间分别为
90立方米,120立方米,90立方米。快递的最大体积不能超过1立方米。 - 商品属性:快递号、货物名称、货物类型、货物体积、货物重量、运输方式、入库时间、发货地址、付款方式(线上、货到付款的金额)、取件人信息、货物价格等;
- 用户属性包含以下内容:账户名字,账号密码,账户类别,密保问题,包裹信息,手机号码,以及VIP用户的缴费时间。
- 资金的属性包含以下内容:流动资金、固定资金、时间
- 入库时间和出库时间,资金变动时间精确到分。
- 快递超过最大体积或者当时驿站已经满仓,则拒收快递。
- 驿站总体积为V,包裹体积不能超过1立方米,超过的快递拒绝入库。
- 不同的用户自行界定尽可能符合实际情况。(名字可能存在重合情况,名字有效长度不超过50字节;用户密码不超过32位字符;不存在类别、名字和密码都相同的两个用户)。
- 同一个用户同一时刻只属于一种类别。
- 存储包裹收费规则如下:
(1)24小时内免费
(2)超过24小时,收费1元/天(未满一天按一天收费),封顶10元
备注:普通用户按标准价格计费;VIP用户0.5元/天,封顶5元;驿站工作人员免费;企业用户每月固定缴费500元;商家按标准价格收费 - 寄快递收费规则如下:
(1)普通货物
1.先计算体积质量:体积质量=体积(立方厘米)/6000;
2.比较体积质量和质量的大小,并按照数值大的计算,形成第一部分邮费:
一公斤快递5元,之后每超出0.5公斤加2元(默认本省为吉林省)
一公斤快递5元,之后每超出0.5公斤加3元(除吉林省和偏远地区外)
一公斤快递5元,之后每超出0.5斤加4元(偏远地区);
3.按照寄出地与收货地省份之间的公里数,计算第二部分邮费:
每100公里增加0.4元邮费;
(2)特殊货物:
A.易碎品:需要额外的包装费5元
B.冷冻货物:需要额外的包装和运输费用15元
C.加急货物:需要额外的运输费用,在基础费用上加收50%
备注:1.加急货物采用飞机运输,其余货物采用货车等一般方式
2.将区域分为:34个省划分,默认两个省之间距离固定
3.普通用户按标准价格收款;企业寄件费用按月支付,每月200(长期合作,不存在不续费);VIP用户打八折;商家五折;驿站工作人员五折;
4.从2025年1月1日开始,进行为期三个月的发件优惠活动
对于额外添加的为期三个月的活动:
对于寄件,计算寄件的时间距离2025年1月1日的时间,若小于90天,则意味在活动的三个月内,所有寄件打八折,若超出90天,则表明该活动以停止,按原价采取计费
- 赔偿规则如下:包裹损坏、丢失后根据不同用户类型,赔偿相应价格(普通用户赔偿商品价格的一半,VIP用户和驿站工作人员赔偿80%,企业和商家赔偿90%)。
- 能与本驿站互通快递的地区分为31个,与现实中的省份相同,本驿站所在地为吉林省。
属性名称 类型
货物名称 char*
货物类型 enum
快递单号 char*
货物体积(单位:立方分米) double
货物重量(单位:千克) double
运输方式 enum
入库时间(年月日时分) struct
发货地址/收货地址 enum
取件人账号 char*
货物价格(单位:元) double
付款方式 enum
取件方式 enum
收件方式 enum
物主账号 char*
取件码 char*
货物状态 enum
出库时间(年月日时分) struct
包裹属性名称及其类型
属性名称 类型
账户名称 char*
账号密码 char*
账户类别 enum
包裹信息 struct
手机号码 char*
用户的缴费时间 struct
密保问题 char*
密保问题的答案 char*
用户属性名称及其类型
三、具体功能如下
系统实现功能:
(1)【计算费用】计算邮费、储存费用和赔偿等金额
(2)【储存】能够将当前系统中所有信息保存到文件中
(3)【删除】
A.删除超过30天的包裹信息。
B.用户申诉后,与驿站工作人员以及商家协商,点击处理完成后系统删除此信息。若包裹丢失或者损坏,则系统计算并给予相应补偿。
(4)【分配】依据包裹的体积,决定分区,不同的分区由不同的字母表示;数字部分由存件时间的先后顺序决定。
(5)【统计】生成周报月报,并且根据数据自动生成空间优化方案
(6)【计算资金】计算固有资金以及流动资金及其变化时间
(7)【更新包裹状态】管理系统在货物成功出库后更新出库时间、取件人账号;包裹寄出后更新包裹状态。
(8)【预警】快递储存超过80%后,系统发送预警。
备注:【当前时间】默认当前时间为2025年1月1日,所及包裹皆为2025年产生;
所有用户均享有如下功能:
(1)【登录】用户在初始界面选择身份,输入密码进入系统。
(2)【注册】注册成为用户。
(3)【修改】修改用户信息。
(4)【密码找回】根据密保问题找回并重新设置密码。
(5)【退出登录】用户选择退出当前账号
(6)【取件】用户登录后,输入取件码就算取件成功
(7)【查询】输入取件码查询快递被领取的时间以及领取人账号
(8)【查询】可以查询用户现在在库中的所有包裹的取件码
(9)【寄快递】用户输入寄快递相关信息后显示运费,并确认寄件(此时显示寄件成功)
(10)【申诉】申诉分为退货、包裹丢失损坏,包裹误领冒领。若包裹丢失或者损坏,则赔偿相应金额;若包裹被冒领误领,则显示取件人信息
特殊:
(12)【身份的转换】普通用户充值15元可变为VIP用户;VIP用户需要每月支付15元,否则将变为普通用户。
驿站工作人员额外享有的功能:
(1)【入库】工作人员输入的包裹相关信息,将包裹存入驿站。
(2)【查询】查询驿站当前的存储情况,以及所有包裹信息。
(3)【处理】查看并处理用户申诉。
(4)【完成周报、月报】点击生成周报月报,查看相关数据
四.流程图展示
学号 姓名 性别 班级 具体任务分工 所占比例 成绩
分配任务,构建总体框架
完成所有用户共有功能部分,包括包裹、用户、资金、存储、申诉链表部分功能(添加、查找、删除、修改等),实现用户取件、寄件、申诉、查询、缴费、修改信息等,并制作用户界面(除管理员界面)
30%
完成驿站管理员特殊功能,包括存储、包裹所需的链表(创建、添加、查找、修改等),统计仓库存储数据,制作周报(月报),并利用线性回归方程预测数据并且完善仓库空间分配,并制作管理员界面
35%
完成系统功能,包括包裹、用户、资金链表(创建、修改等),实现计算费用、生成取件码、录入信息等功能;构造测试数据,调试程序,并制作最终报告;制作登录界面
35%