大型数据库课程设计快递管理系统(客户服务).doc

上传人:laozhun 文档编号:2395280 上传时间:2023-02-17 格式:DOC 页数:30 大小:1.24MB
返回 下载 相关 举报
大型数据库课程设计快递管理系统(客户服务).doc_第1页
第1页 / 共30页
大型数据库课程设计快递管理系统(客户服务).doc_第2页
第2页 / 共30页
大型数据库课程设计快递管理系统(客户服务).doc_第3页
第3页 / 共30页
大型数据库课程设计快递管理系统(客户服务).doc_第4页
第4页 / 共30页
大型数据库课程设计快递管理系统(客户服务).doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《大型数据库课程设计快递管理系统(客户服务).doc》由会员分享,可在线阅读,更多相关《大型数据库课程设计快递管理系统(客户服务).doc(30页珍藏版)》请在三一办公上搜索。

1、学 号: 2009131334课 程 设 计课程名大型数据库题 目快递管理系统(客户服务)学 院计算机科学与信息工程学院专 业计算机科学与技术班 级软件二班学生姓名指导教师2011 年12月12日重庆工商大学课程设计成绩评定表学院:计算机科学与信息工程学院 班级:09软件二班 学生姓名: 尹 亮 学号: 2009131334 项目分值优秀(100x90)良好(90x80)中等(80x70)及格(70x60)不及格(x60)评分参考标准参考标准参考标准参考标准参考标准学习态度15学习态度认真,科学作风严谨,严格保证设计时间并按任务书中规定的进度开展各项工作学习态度比较认真,科学作风良好,能按期圆

2、满完成任务书规定的任务学习态度尚好,遵守组织纪律,基本保证设计时间,按期完成各项工作学习态度尚可,能遵守组织纪律,能按期完成任务学习马虎,纪律涣散,工作作风不严谨,不能保证设计时间和进度技术水平与实际能力25设计合理、理论分析与计算正确,实验数据准确,有很强的实际动手能力、经济分析能力和计算机应用能力,文献查阅能力强、引用合理、调查调研非常合理、可信设计合理、理论分析与计算正确,实验数据比较准确,有较强的实际动手能力、经济分析能力和计算机应用能力,文献引用、调查调研比较合理、可信设计合理,理论分析与计算基本正确,实验数据比较准确,有一定的实际动手能力,主要文献引用、调查调研比较可信设计基本合理

3、,理论分析与计算无大错,实验数据无大错设计不合理,理论分析与计算有原则错误,实验数据不可靠,实际动手能力差,文献引用、调查调研有较大的问题创新10有重大改进或独特见解,有一定实用价值有较大改进或新颖的见解,实用性尚可有一定改进或新的见解有一定见解观念陈旧论文(计算书、图纸)撰写质量50结构严谨,逻辑性强,层次清晰,语言准确,文字流畅,完全符合规范化要求,书写工整或用计算机打印成文;图纸非常工整、清晰结构合理,符合逻辑,文章层次分明,语言准确,文字流畅,符合规范化要求,书写工整或用计算机打印成文;图纸工整、清晰结构合理,层次较为分明,文理通顺,基本达到规范化要求,书写比较工整;图纸比较工整、清晰

4、结构基本合理,逻辑基本清楚,文字尚通顺,勉强达到规范化要求;图纸比较工整内容空泛,结构混乱,文字表达不清,错别字较多,达不到规范化要求;图纸不工整或不清晰指导教师评定成绩:指导教师签名: 年 月 日课程设计任务书学生姓名: 专业班级: 09软件二班 指导教师: 工作单位: 重庆工商大学 题 目: 快递管理系统(客户服务)已知技术参数和设计要求: 客户服务客户服务的主要功能是对客户的投诉情况进行管理以及提货回告、到货回告、已提回告、中转回告、代收回告。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)投诉管理主要是对客户的投诉进行管理。用户首先投诉登记,然后快递公

5、司进行投诉处理处理完后放到投诉历史里。提货回告是当司机填写完回执单后,通知收货客户前来提货。到货回告是当司机填写完回执单后,通知发货客户,所运货物已经到达。已提回告是收货客户提走货物以后,通知发货客户,货物已被提走。中转回告是通知发货客户和收货客户所运货物,已经中转。代收回告是代收结算成功以后,通知发货客户代收结算已完成。时间安排:1、12月12日-12月13日搜集资料、组员讨论、调查完成该系统的需求分析。2、12月14日根据需求分析确定系统的流程以及各个模块的主要功能。3、12月15日完成系统的界面设计。4、12月16日-12月18日完成系统的程序代码具体的实现步骤。5、12月19日完成课程

6、设计的实验报告,并打印。指导教师签名: 年 月 日大型数据库课程设计题目:快递管理系统班级:09级软件二班姓名:尹 亮学号:2009131334指导教师:张世勇 完成日期:2011/12/191需求分析1.1 开发背景随着激烈竞争的市场,客户有更多的机会去选择不同的公司来满足它的需求。 技术和产品的发展,需要更多的沟通。 客户对服务要求的提高。 客户看业务员看他代表的公司 。管理的不断完善,公司需要更好的运作就需要完善管理,而客户管理在公司的业务板块当中占据这重要地位,所以要不断提高客户服务管理。在快递行业中,时限和安全是快递服务价值的核心。客户对快递服务有着苛刻的要求,在时限、安全、可靠、便

7、利、跟踪查询方面比其他运输服务有着更高的要求,因而客户愿意为得到这些高品质的服务支付较高的价格。所以一个好的快递公司要有一套完整的客户服务系统,这样才可以帮助企业更好地贴近客户的生活,才能了解他们的所需所求,才能更好地跟客户架起一座沟通的桥梁。本系统在不段更新的前提之下及时开发以方便及时了解客户的需求和得到客户对公司的反馈,方便客户的同时也帮助公司更好的完善自己的业务。1.2 系统目标 本系统的目标是为了方便快递公司及时掌握客户投诉的信息,以便更好地改进业务,服务客户;其次,为了方便快递公司及时统计相关回执报告。1.3功能需求客户投诉:客户可以根据对本次快递的速度、服务人员的态度、快递费用、保

8、险费用以及物流的查询等一系列本次业务中的流程进行评价,或者对于本次服务的不满进行投诉建议。提货回告是当司机填写完回执单后,通知收货客户前来提货。到货回告是当司机填写完回执单后,通知发货客户,所运货物已经到达。已提回告是收货客户提走货物以后,通知发货客户,货物已被提走。中转回告是通知发货客户和收货客户所运货物,已经中转。代收回告是代收结算成功以后,通知发货客户代收结算已完成。1.4 非功能需求系统安全性的需求 为保证系统的安全性本系统对各项功能分级分权限操作,对各类用户进行确认。系统可用性的需求 为了发便使用者,要求对所有交互操作提供在线帮助的功能。系统查询速度需求 要求系统在20s之内响应查询

9、服务请求。系统可靠性的需求 要求系统失败发生率发生小于1%。 1.5 开发环境(硬、软)及工具硬件:处理器:Pentium(R)DualCore CPU T4300 2.10GHz 2.10GHz 安装内存(RAM): 2.0G 系统类型:32位windows 7 操作系统开发软件:Microsoft Visual Studio 2008Oracle - OraDb10g_home11.6 流程图 客户投诉 处理查询投诉登记数 据 库投诉历史投诉处理客户回告 查询通知数据库回 告 历 史 提货回告到货回告已提回告中转回告代收回告2概要设计2.1 概念结构设计系统的ER图客户姓名编号电话邮编地址

10、客户类型投诉投诉 信息运货单号运货单号客户名称投诉时间见事件详情处理信息表处理结果处理时间处理状态是否回告回告日期处理2.2 界面设计主界面:货物回告查询:帮助:关于界面:“联系我们”界面:管理员登录:客户后台管理:客户投诉建议界面:2.3 系统功能设计系统设计了3个子功能模块,3个子功能模块的描述如下:(1)建立客户查询回告子模块。可以输入货运单号查询相应的发货人、收货人、发货时间、中转时间、是否到货转货取货。此模块的功能是由DemandForm窗体完成。(2)客户投诉子模块。客户可以根据自己接受的快递服务情况进行相应的投诉建议,填写自己的货运单号,以及一些相应的个人联系方式以便处理结果及时

11、发回您的邮箱。此模块的功能是由ComplaintForm完成的。(3)管理员子模块。管理员凭借密码进入后台管理,然后可以查询投诉历史表单,对表单进行处理。此模块是有窗体HoutaiForm完成的。3模块设计3.1 模块设计系统主要包含主程序模块和其它基本操作模块。其调用关系如图2所示。主查询模块各基本操作模块图2 模块调用示意图3.2 系统子模块及其功能设计using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using S

12、ystem.Linq;using System.Text;using System.Windows.Forms;using Oracle.DataAccess.Client;using System.Text.RegularExpressions;private void button1_Click(object sender, EventArgs e)/ 查询回告 if (textBox1.Text.Trim().Length != 10)/货运单号要求10位数字 MessageBox.Show(亲,请输入10位数字正确的货单号!, 错误, MessageBoxButtons.RetryCa

13、ncel, MessageBoxIcon.Error); textBox1.Text = ; return; Else / 连接数据库 OracleConnection conn = new OracleConnection(data source=orcl;user Id=scott;password=abc123); conn.Open();string sql = select * from Goodstable where 货单编号= + textBox1.Text + ; OracleCommand cmd = new OracleCommand(sql, conn); Oracle

14、DataAdapter oda = new OracleDataAdapter(cmd); DataTable dt = new DataTable(); oda.Fill(dt); conn.Close(); cmd.Dispose(); dataGridView1.DataSource = dt; public static bool IsValidEmail(string strIn) /验证邮箱地址格式return Regex.IsMatch(strIn, (0-9a-zA-Z+)|(0-9a-zA-Z+_.0-9a-zA-Z-*0-9a-zA-Z+)(a-zA-Z0-9-+.)+(a

15、-zA-Z2|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$, RegexOptions.IgnoreCase);public static bool IsDate(string StrSource) /验证日期格式return Regex.IsMatch(StrSource, (16-9|2-9d)d2)-(0?13578|102)-(0?1-9|12d|301)|(16-9|2-9d)d2)-(0?13456789|1012)-(0?1-9|12d|30)|(16-9|2-9d)d2)-0?2-(0?1-9|1d|20-9

16、)|(16-9|2-9d)(048|2468048|1357926)|(16|2468048|357926)00)-0?2-29-)$);private void button2_Click(object sender, EventArgs e)/ 客户填写投诉单 if(textBox1.Text.Trim ().Length !=10) /货运单号要求10位数字 MessageBox.Show(亲,请输入10位数字正确的货单号!,错误,MessageBoxButtons .RetryCancel ,MessageBoxIcon .Error); return; if (textBox2.Te

17、xt=) /姓名不能为空 MessageBox.Show(亲,请输入您的姓名!, 提示, MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning); return; if (textBox4.Text!=收货人&textBox4.Text!=发货人)/限制填写收货人或者发货人 MessageBox.Show(亲,只能输入发货人或者收货人!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); return; if (!IsValidEmail (textBox3.Text)/验证

18、邮箱格式 MessageBox.Show(亲,请输入正确的邮箱格式!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); return; if (textBox5.Text.Trim().Length != 6)/验证邮编格式 MessageBox.Show(亲,请输入正确的邮编!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); return; if (!IsDate(textBox6.Text)/验证日期格式 MessageBox.Show(亲,请输入正确的

19、日期格式!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); return; if (richTextBox1.Text =)/投诉的内容不能为空 MessageBox.Show(亲,请认真填写要投诉的内容!, 提示, MessageBoxButtons.RetryCancel, MessageBoxIcon.Warning ); return; Else /连接数据库插入数据 int i = 0;OracleConnection conn = new OracleConnection(data source=orcl;use

20、r Id=scott;password=abc123); conn.Open(); OracleTransaction tran = conn.BeginTransaction(); OracleCommand cmd3 = conn.CreateCommand();cmd3.CommandText = insert into tousu (+货运单号,客户姓名,客户类型,邮箱,邮编,投诉时间,投诉内容,是否处理+)values (+ textBox1.Text .ToString () +,+textBox2.Text .ToString () +,+ textBox4 .Text .ToS

21、tring () +,+ textBox3.Text .ToString () +,+ textBox5.Text .ToString () +,+ textBox6 .Text .ToString () +,+ richTextBox1 .Text .ToString () +,否); cmd3.ExecuteNonQuery(); tran.Commit(); i+; conn.Close(); if (i = 1)/提示提交成功 MessageBox.Show(提交成功!); else MessageBox .Show (提交失败,请重新输入!); return; private voi

22、d button2_Click(object sender, EventArgs e)/管理员登录 if (textBox1.Text=sys &textBox2.Text=abc123)/密码和用户名 HoutaiForm h1 = new HoutaiForm(); h1.ShowDialog(); this.Close(); Else /错误提示 MessageBox.Show(用户名或者密码错误,请重新输入!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); textBox1.Text = ; textBox2.Tex

23、t = ; return; OracleConnection conn = new OracleConnection(data source=orcl;user Id=scott;password=abc123); conn.Open(); string sql = select * from tousu; OracleCommand cmd = new OracleCommand(sql, conn); OracleDataAdapter oda = new OracleDataAdapter(cmd); DataTable dt = new DataTable(); oda.Fill(dt

24、); conn.Close(); cmd.Dispose(); dataGridView1.DataSource = dt; private void button2_Click(object sender, EventArgs e)/管理员后台管理 int i = 0; if (textBox1.Text.Trim().Length != 10) MessageBox.Show(请输入要修改的10位数字正确的货单号!, 错误, MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); textBox1.Text = ; return; els

25、e OracleConnection conn = new OracleConnection(data source=orcl;user Id=scott;password=abc123); conn.Open(); OracleTransaction tran = conn.BeginTransaction(); OracleCommand cmd3 = conn.CreateCommand(); OracleCommand cmd4 = conn.CreateCommand();cmd3.CommandText = update tousu set 是否处理 =是where 货运单号= +

26、 textBox1.Text + ;cmd4.CommandText = update tousu set 处理详情=+textBox2 .Text + where 货运单号= + textBox1.Text + ; cmd3.ExecuteNonQuery(); cmd4.ExecuteNonQuery(); tran.Commit(); i+; conn.Close (); if (i = 1) MessageBox.Show(处理成功!); else MessageBox.Show(处理失败,请重新输入!); return; 4详细设计4.1 数据库表设计货物回告表(Goodstable

27、)名称数据类型长度约束性条件货单编号int38主键NOT NULL收货人VARCHAR210NOT NULL发货人 VARCHAR210NOT NULL发货时间DATENOT NULL运货人 VARCHAR210NOT NULL货物状态 VARCHAR210NOT NULL回告时间 DATENOT NULL投诉表(tousu) 名称类型长度约束条件货运单号INT38NOT NULL客户姓名VARCHAR210NOT NULL客户类型VARCHAR210NOT NULL邮箱VARCHAR250NOT NULL投诉内容VARCHAR2300NOT NULL投诉时间VARCHAR210NOT NUL

28、L 邮编 INT10NOT NULL是否处理VARCHAR24NOT NULL处理结果VARCHAR21005调试分析系统主界面运行如图1所示。各子功能测试运行结果如下5.1 回告查询:5.2 客户投诉:5.3 管理员登录5.4 查询投诉历史表单5.5 管理员处理表单处理结果重新存表6用户使用说明(1)、查询数据时要输入正确的订单号码,不然会报错。(2)、系统有一定的反应时间请耐心等待。7参考文献C#面向第一项程序设计 人民邮电出版社软件工程方法与实践 电子工业出版社数据库系统概论(第4版) 高等教育出版社 8对所设计的软件进行自我评价首先完成这次的课程设计非常有成就感,毕竟是自己一个人完成的

29、,以前的很多课程设计无非都是在网上百度然后下来自己改改便打印交了上去,虽然也得到及格的分数但是不是很清楚课程设计真正的含义,经过这个学期的学习感觉自己对程序设计开始有了头绪,以前的时候一提起写程序脑袋便大了不知道怎么去写,无从下手,而现在再次提到写程序的时候感觉自己可以写的出来,不会的地方问老师上网查资料总之都可以解决,不再是以前的那个自己。这次的课程设计一开始也是希望能百度然后改改直接交上去,但是这次课程设计的难度远远不只是改改这么简单,因为用的是oracle数据库,虽然课堂上老师讲了很多但是真正到用的时候有很多的问题出现,首先是安装oracle软件,弄了很久才搞明白真正的oracle数据库

30、是什么样子,是完全不同于SQL Server的数据库,安装完成之后由于我做的这个系统是关于客户服务的一开始始终不明白什么叫做回告查询,只知道有一个投诉表逻辑上可以完成,后来自己想通了,因为系统最终是要面向客户提供的服务也是向客户的,所以我就先想自己是一名客户我在一个客户中心我想要得到的是什么服务,站在这个角度想问题所有的问题都迎刃而解。完成了要求的需求分析之后就是代码的实现,当完成基本界面的设计之后就是代码的实现问题了吗,同样也是经过很多的努力,老师的讲解,同学之间的互相帮助才最终搞定。不管怎样经过这次课程设计明白了很多,虽然还有很多的地方不完善,但是确实是自己花很多的经历、时间去做的,在此感

31、谢尊敬的刘老师的耐心辅导,感谢身边亲爱的同学的帮助!9程序源代码:主窗体代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Oracle.DataAccess.Client;namespace ClientService public partial class MainForm

32、: Form public MainForm() InitializeComponent(); private void Form1_Load(object sender, EventArgs e) private void button3_Click(object sender, EventArgs e) this.Close(); private void 退出ToolStripMenuItem_Click(object sender, EventArgs e) this.Close(); private void 关于ToolStripMenuItem_Click(object send

33、er, EventArgs e) AboutForm a1 = new AboutForm(); a1.Show(); private void 联系我们ToolStripMenuItem_Click(object sender, EventArgs e) ConnectionForm c1 = new ConnectionForm(); c1.Show() ; private void button1_Click(object sender, EventArgs e) DemandForm d1 = new DemandForm(); d1.ShowDialog(); private voi

34、d 货物回告查询ToolStripMenuItem_Click(object sender, EventArgs e) / DemandForm d1 = new DemandForm(); / d1.ShowDialog(); private void button2_Click(object sender, EventArgs e) ComplaintForm c1 = new ComplaintForm(); c1.Show(); private void 退出ToolStripMenuItem1_Click(object sender, EventArgs e) this.Close(

35、); private void 登录ToolStripMenuItem_Click(object sender, EventArgs e) GuanliForm g1 = new GuanliForm(); g1.ShowDialog(); 货物回告窗体代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using Oracle.DataAccess.Client;namespace ClientService public partial class DemandForm : Form public DemandForm() InitializeComponent(); / public new DataTable Select() / / private void button3_Click(object sender, EventArgs e) this.Close();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号