版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
物流管理系统软件简介与报告指导老师XXX
组长XX
组员XXXXXXXTOC\o"1-5"\h\z一、 项目需求分析 2\o"CurrentDocument"二、 功能界面 3\o"CurrentDocument"三、 数据组织 4\o"CurrentDocument"四、 关键代码 5\o"CurrentDocument"五、 组员分工内容和比例 15\o"CurrentDocument"六、 成员签名 16一、项目需求分析本物流管理系统(以下简称“系统”)有两组设计使用用户:1、货主(发单人); 2、车主(接单人);系统应对这两组设计使用用户分别设计对话框,进行物流管理。下面就用户身份的不同,分别讨论系统应具有的功能。1、 综述系统作为一个为货主和车主提供物流管理的平台,应该具有一定的保密性。故系统设计了登陆界面,必须正确输入用户名以及密码才能够进入系统中进行下一步操作。同时,为方便起见,我们系统在登陆按钮的附近加设一编辑框,用以显示登陆状态。(系统登陆:用户名:iamteacher密码:123456)系统的主要功能是为货主和车主在物流方面提供交流的平台,所以对需要运输的货物应进行分类。在货物运输里,较为重要的因素包括货物种类、运输里程、货物重量。在本系统里,为信息查找方便,设计了信息筛选栏,用户可按以上三个条目筛选自己需要的货单。对于系统内已存储的物流信息,为防止系统关闭后信息丢失,应将其以文件形式导出到外部;在系统重新启动后,还应可以从外部的文件中载入之前已保存的物流信息,这样可以做到系统在信息上的连续性。2、 货主货主在成功登陆进入系统后,系统应为其提供发布新货单的功能。货主需要提供货物的基本信息,如货物种类、运输里程、货物重
量、联系电话、预计酬金、备注等等。在填写完基本货物的信息后,货主就可以将自己货单展示在系统上,以便让车主寻找。其次,充分考虑实际情况,系统还应该给货主修改以及删除自己已发布货单的功能。3、车主车主在成功登陆进入系统后,系统应为其提供接收货单的功能。车主可从系统上获取货主已发布的货单,一旦发现有满意的货单,就可接收此桩生意。同样,出与实际考虑,车主亦可撤销已经接收的货单。二、功能界面1、系统主页面此界面包含登陆按钮、物流信息、货主与车主的主要功能按钮、文件导出与载入、信息筛选界面。Lire物歸管理系藐窓迎您携物种1运输路程(加)货物吨位酬議厂 联系电话 备逹已爱希物流信息 「载人] 保存—|信息筛选携物种1运输路程(加)货物吨位酬議厂 联系电话 备逹已爱希物流信息 「载人] 保存—|信息筛选吨位熒物种类运输路程岌单火选顷接单人选项登陆状态: 未登录•火速登陆2、登陆界面用户可在主页面点击“火速登陆”后进入登陆界面。在此界面上输入用户名和密码,即可进入系统。3、货主发单界面货主在此界面上输入货物的基本信息,然后即可发布在系统上。三、数据组织本程序中使用链表来储存和显示物流信息。链表的一每个节点都是一个类Cgoods的一个对象,用于储存每一个物流信息的具体内容(吨位,路程,酬金,联系电话,货物重量和备注)。使用类Cgoodslist定义程序中所操作的物流信息表m」ist,并且写有对此链表进行操作的函数,包括对节点(一个物流信息)的删除、增加,链表的注销,将链表信息存入文件,从文件中载入链表以及通过联系方式寻找特定节点,其中存入文件和载入通过链表与.dat文件的相互转换来完成。本程序中共有三个对话框,包括主对话框、登录对话框和发布信息对话框,登录对话框使用登录按钮用并且在未登录之时发单人和接单人选项皆不可使用,发布信息对话框使用发布信息按钮调用。四、关键代码1、登陆(用户先主页面上点击“火速登陆”后进入登陆对话框,在此对话框内输入用户名和密码,进入系统。此段代码为确保登陆框不能留白,必须填满才能登陆。)voidCmemberdlg02::OnOK(){//TODO:AddextravalidationhereUpdateData(TRUE);if(m_key=""llm_membername="”){AfxMessageBox("不能留有空白项”);return;}CDialog::OnOK();}(此段代码为确保用户名与密码必须正确,不正确时显示"用户名或密码错误!")voidCLlccDlg::Onload(){//TODO:Addyourcontrolnotificationhandlercodeherem_dlg02.m_key="”;m_dlg02.m_membername="”;if(m_dlg02.DoModal()==IDOK){if(m_dlg02.m_key!="123456"llm_dlg02.m_membername!="iamteacher"){AfxMessageBox("用户名或密码错误!");return;}else{m_edit="已登录”;UpdateData(FALSE);}}}2、文件的导出与载入(此段代码为导出系统里的物流信息,以文件形式输出到系统外部。voidCLlccDlg::Onsave(){//TODO:AddyourcontrolnotificationhandlercodehereCFileDialogdlg(false,"*.dat",NULL,OFN_HIDEREADONLYIOFN_OVERWRITEPROMPT,"DataFiles(*.dat)l*.datlAllFiles(*.*)l*.*ll",NULL);if(dlg.DoModal()==IDOK){CStringfilename=dlg.GetPathName();m_list.SaveToFile(filename);}}(此段代码为从系统外部的文件里导入物流信息,载入在系统主界面上。)voidCLlccDlg::Onopen(){//TODO:AddyourcontrolnotificationhandlercodehereCFileDialogdlg(true,"*.dat",NULL,OFN_HIDEREADONLYIOFN_OVERWRITEPROMPT,"DataFiles(*.dat)l*.datlAllFiles(*.*)l*.*ll",NULL);if(dlg.DoModal()==IDOK){CStringfilename=dlg.GetPathName();m_list.LoadFromFile(filename);}showgoodslist();}3、信息筛选(构造了一个showgoodslist()函数,用以展示货单的具体信息。)voidCLlccDlg::showgoodslist(){introw=0;m_goodslist.DeleteAllItems();Cgoods*p=m_list.head;for(;p!=NULL;p=p->next){if(!(m_kinds==Ollm_kinds==l&&p->m_kinds==" 电子产品"llm_kinds=2&&p->m_kinds="建筑材料"IIm_kinds==3&&p->m_kinds=="日用品"||m_kinds==4&&p->m_kinds=="食品"||m_kinds==5&&p->m_kinds=="化工产品"))continue;if(!((m_distance==0)||(m_distance==1&&p->m_distancev10)||(m_distance==2&&p->m_distancev50&&p->m_distance>=10)||<=200&&p->m_distance>=50)||(m_distance==3&&p->m_distance<=200&&p->m_distance>=50)||(m_distance==4&&p->m_distance>200)))continue;if(!((m_weight==0)||(m_weight==1&&p->m_weight<1)||(m_weight==2&&p->m_weight>=1&&p->m_weightv10)||(m_weight==3&&p->m_weight>=10&&p->m_weightv=50)||(m_weight==4&&p->m_weight>50)))continue;intnrow=m_goodslist.lnsertltem(row,p->m_kinds);m_goodslist.SetItemText(nrow,4,p->m_phonenumber);m_goodslist.SetItemText(nrow,5,p->m_other);CStringtmp;tmp.Format("%f",p->m_distance);m_goodslist.SetItemText(nrow,1,tmp);CStringtmp1;tmp1.Format("%f",p->m_weight);m_goodslist.SetItemText(nrow,2,tmp);CStringtmp2;tmp2.Format("%f",p->m_money);m_goodslist.SetItemText(nrow,3,tmp);row++;}}(此段代码是在信息筛选里的按“货物种类”筛选。)voidCLlccDlg::OnSelchangekinds(){//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(TRUE);showgoodslist();}(此段代码是在信息筛选里的按“运输里程”筛选。)voidCLlccDlg::OnSelchangedistance(){//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(TRUE);showgoodslist();}(此段代码是在信息筛选里的按“货物重量”筛选。)voidCLlccDlg::OnSelchangeweight(){//TODO:AddyourcontrolnotificationhandlercodehereUpdateData(TRUE);showgoodslist();}4、货主发单(此段代码是货主发单的代码。先判断用户是否已经登陆,只有登陆后才能进行下一步操作。)voidCLlccDlg::Onadd(){//TODO:Addyourcontrolnotificationhandlercodehereif(m_edit=="未登录"){AfxMessageBox("请先登录!”);return;}m_dlg01.m_kinds01="";m_dlg01.m_distance01=0;m_dlg01.m_weight01=0;m_dlg01.m_money=0;m_dlg01.m_phonenumber="”;m_dlg01.m_other="”;if(m_dlgO1.DoModal()==IDOK){m_list.AddNode(m_dlgO1.m_kindsO1,m_dlgO1.m_weightO1,m_dlgO1.m_distanceO1,m_dlg01.m_phonenumber,m_dlg01.m_money,m_dlg01.m_other);showgoodslist();}5、货主修改货单(此段代码是货主发单的代码。先判断用户是否已经登陆,只有登陆后才能进行下一步操作。修改货单时,选择修改的条目,修改后重新返回到系统主页面上。)voidCLlccDlg::Onchange(){//TODO:Addyourcontrolnotificationhandlercodehereif(m_edit=="未登录"){AfxMessageBox("请先登录!”);return;}intcnt=m_goodslist.GetSelectedCount();if(cnt==0){AfxMessageBox("未选中相应条目!");return;}POSITIONpos=m_goodslist.GetFirstSelectedItemPosition();intindex=m_goodslist.GetNextSelectedItem(pos);CStringstuno=m_goodslist.GetItemText(index,O);Cgoods*p=m_list.FindNode(stuno);m_dlg01.m_kinds01=p->m_kinds;m_dlg01.m_distance01=p->m_distance;m_dlg01.m_weight01=p->m_weight;m_dlg01.m_money=p->m_money;m_dlg01.m_phonenumber=p->m_phonenumber;m_dlg01.m_other=p->m_other;if(m_dlgO1.DoModal()==IDOK){p->m_kinds=m_dlg01.m_kinds01;p->m_distance=m_dlg01.m_distance01;p->m_weight=m_dlg01.m_weight01;p->m_money=m_dlg01.m_money;p->m_phonenumber=m_dlg01.m_phonenumber;p->m_other=m_dlg01.m_other;showgoodslist();}6、货主删除货单(此段代码是货主发单的代码。先判断用户是否已经登陆,只有登陆后才能进行下一步操作。删除货单时,选择删除的条目,删除后主页面上的此货单消失。)voidCLlccDlg::Ondelete(){//TODO:Addyourcontrolnotificationhandlercodehereif(m_edit=="未登录"){AfxMessageBox("请先登录!”);return;}intcnt=m_goodslist.GetSelectedCount();if(cnt==0){AfxMessageBox("未选中相应的条目!");return;}POSITIONpos=m_goodslist.GetFirstSelectedItemPosition();while(pos){intindex=m_goodslist.GetNextSelectedItem(pos);CStringstuno=m_goodslist.GetItemText(index,O);Cgoods*p=m_list.FindNode(stuno);m_list.DeleteNode(p);}showgoodslist();}7、车主接单(此段代码是车主接单的代码。先判断用户是否已经登陆,只有登陆后才能进行下一步操作。接单时,选择车主满意的货单,接单后系统主页面上被选中的货单消失。)voidCLlccDlg::Onrecept(){//TODO:Addyourcontrolnotificationhandlercodehereif(m_edit=="未登录"){AfxMessageBox("请先登录!”);return;}intcnt=m_goodslist.GetSelectedCount();if(cnt==0){AfxMessageBox("未选中相应的条目!");return;}POSITIONpos=m_goodslist.GetFirstSelectedItemPosition();while(pos){intindex=m_goodslist.GetNextSelectedItem(pos);CStringstuno=m_goodslist.GetItemText(index,0);Cgoods*p=m_list.FindNode(stuno);pl->m_kinds=p->m_kinds,pl->m_weight=p->m_weight,pl->m_distance=p->m_distance,pl->m_phonenumber=p->m_phonenumber,p1->m_money=p->m_money,p1->m_other=p->m_other;CStringstr="请于发单人联系!/n联系电话:"+p->m_phonenumber;AfxMessageBox(str);m_list.DeleteNode(p);}showgoodslist();}8、车主撤销接单(此段代码是车主接单的代码。撤销接单时,选择车主欲撤销的货单,撤销接单后系统主页面上重新出现此货单。)voidCLlccDlg::Oncancel(){//TODO:Addyourcontrolnotificationhandlercodeherem_list.AddNode(p1->m_kinds,p1->m_weight,p1->m_distance,p1->m_phonenumber,p1->m_money,p1->m_other);}voidCLlccDlg::Onopen(){//TODO:AddyourcontrolnotificationhandlercodehereCFileDialogdlg(true,"*.dat",NULL,OFN_HIDEREADONLYIOFN_OVERWRITEPROMPT,"DataFiles(*.dat)l*.datlAllFiles(*.*)l*.*ll",NULL);if(dlg.DoModal()==IDOK){CStringfilename=dlg.GetPathName();m_list.LoadFromFile(filename);
showgoodslist();9、 数据classCgoods{public:CStringm_kinds;floatm_weight;floatm_distance;CStringm_phonenumber;floatm_money;CStringm_other;Cgoods*next;phonenumber,floatdistance,CStringCgoods();phonenumber,floatdistance,CStringCgoods(CStringkinds,floatweight,floatdistance,CStringmoney,CStringother);};classCgoodslist{public:Cgoods*head;intn;Cgoodslist();voidDeleteNode(Cgoods*p);voidSaveToFile(constchar*name);voidLoadFromFile(constchar*name);voidReleaseList();voidAddNode(CStringkinds,floatweight,floatphonenumber,floatmoney,CStringother);Cgoods*FindNode(CStringphonenumber);10、 源程序#include"stdafx.h"#include"goodslist.h"Cgoods::Cgoods(){m_kinds="";m_weight=0;m_distance=0;m_phonenumber="";m_money=0;m_other="";next=NULL;}Cgoods::Cgoods(CStringkinds,floatweight,floatdistance,CStringphonenumber,floatmoney,CStringother){m_kinds=kinds;m_weight=weight;m_distance=distance;m_phonenumber=phonenumber;m_money=money;m_other=other;next=NULL;}Cgoodslist::Cgoodslist(){head=NULL;n=0;}voidCgoodslist::AddNode(CStringkinds,floatweight,floatdistance,CStringphonenumber,floatmoney,CStringother){Cgoods*p=newCgoods(kinds,weight,distance,phonenumber,money,other);if(head==NULL)head=p;else{Cgoods*q=head;while(q->next!=NULL)q=q_>next;q->next=p;}n++;}voidCgoodslist::ReleaseList(){n=0;while(head!=NULL){Cgoods*p=head;head=head->next;deletep;}}voidCgoodslist::LoadFromFile(constchar*filename){CStringkinds;floatweight;floatdistance;CStringphonenumber
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 房屋买卖合同风险规避策略详解指南
- 商业店铺续租协议书范本
- 建筑外墙面砖分包合同
- 家政服务员合同范例
- 招标文件下的项目分析要点解读概览
- 联合开店协议书模板
- 全年供货合作关系
- 试用期双方责任宣言
- 肉鸡养殖产业链拓展购销合同
- 煤矿井下锚索分包施工协议
- 工厂车间环境监测控制系统的设计和实现
- 三级英语阅读习题(3篇)
- 办公室、宿舍现场处置方案
- “阿里巴巴”并购“饿了么”案例分析
- 人教版初中九年级英语全册单词(按词性分类)-
- 老年人学习使用智能手机之基本功能
- 110kV输变电工程旁站监理方案含流程图
- YY 0833-2011肢体加压理疗设备
- MT 97-1992液压支架千斤顶技术条件
- GB/Z 19964-2005光伏发电站接入电力系统技术规定
- 2022极狐(GitLab)远程办公白皮书
评论
0/150
提交评论