汽车美容管理系统.docx
《汽车美容管理系统.docx》由会员分享,可在线阅读,更多相关《汽车美容管理系统.docx(33页珍藏版)》请在冰豆网上搜索。
汽车美容管理系统
成绩评定表
学生姓名
班级学号
专业
计算机科学与技术
课程设计题目
汽车美容管理系统
评
语
组长签字:
成绩
日期
2014年11月18日
课程设计任务书
学院
信息院
专业
计算机科学与技术
学生姓名
班级学号
课程设计题目
汽车美容管理系统
实践教学要求与任务:
本系统在VS2010软件下使用C#语言和SQLServer数据库开发的。
本系统包括客户管理、车辆管理、项目管理、收费管理四大模块。
四大模块又包含各自的子模块。
客户管理包括新增客户、查询信息、修改信息、删除客户;车辆管理包括新增车辆、查询信息、修改信息、删除车辆;项目管理包括新增项目、查询信息、信息修改、删除项目;收费管理包括登记收费、财务统计。
工作计划与进度安排:
按照2010专业方向综合实训(软件方向)教学大纲的要求,本专业方向综合实训时间安排在教学第11周、第12教学周时间内完成汽车美容管理系统的软件开发。
1、查阅资料:
《数据库系统概论》《软件工程》,《.NET大局观》等书籍3本。
2、开发与设计:
针对C#语言环境,并进行初步设计、整体功能设计、编码。
3、调试和软件功能的测试。
4、答辩与论文撰写。
时间安排如下:
第1周查找资料、完成初步设计、代码设计与初步调试;
第2周调试、测试、验收、课程设计论文撰写、答辩。
指导教师:
2014年10月31日
专业负责人:
2014年10月31日
学院教学副院长:
2014年10月31日
一、题目概述
1.1系统内容概述
随着社会的高速发展,科学技术的迅速提高,汽车的使用越来越普及,同时汽车美容店等相应的产业也日益增多,规模逐渐增大,传统的手工操作业务流程和资料管理已经很难满足当前汽车美容店的业务需求。
为改善企业中因手工统计车辆、材料、财务等各类信息的烦琐性以及当前汽车美容店业务流程管理难度大、头绪多、耗费大量人力和财力的问题,在节省企业工作时间的同时提高企业的工作效率,达到提升企业效益的目的,一套完整的计算机化的汽车美容店业务管理的解决方案应运而生[1]。
该系统的具体任务就是设计一个汽车美容店的业务流程和资料信息管理系统,由计算机来代替人工执行一系列诸如车辆登记、维修估价、结算汇总等操作。
这样就使办公人员可以轻松地完成汽车美容业务管理的工作。
1.2系统要求概述
某汽车美容店管理系统实现美容项目及价格信息管理;实现客户信息、客户车辆信息管理;实现美容登记和收费管理;创建存储过程统计指定月份各种美容项目的美容次数;创建存储过程统计指定年份各客户的美容次数;创建存储过程统计指定月份美容店的收入情况;创建规则限制客户的性别必须输入‘男’或‘女’;创建表间关系。
1.3系统性能要求
对系统性能的要求包括对系统时间规定,灵活性,输入输出,数据管理能力,故障处理要求和运行环境规定等的要求。
1.3.1系统灵活性
1、操作方式通俗易懂、容易上手,界面美观、大方,将窗体程序转为控制台应用程序,符合用户操作习惯。
4、一个模块的改变不会影响其他的模块。
1.3.2输入输出要求
能够对不完整的数据进行校验,保证数据的完整性和一致性,对特殊字符的过滤功能,输出能满足用户的需求。
二、需求分析
系统需求分析是指理解用户的需求,就软件的功能和客户达成一致,需求分析的任务就是解决“做什么”的问题,也就是要从各个方面理解用户的各项要求,并能够准确地表达所接受的用户需求,具有决策性、方向性和策略性的作用。
2.1系统功能需求
1、美容收费:
对美容消费进行登记,能够实时显示收费信息。
2、财务统计:
能够统计指定月份各种美容项目的美容次数;能够统计指定年份各客户的美容次数;能够统计指定月份美容店的收入情况;
3、车辆管理:
对车辆信息进行查询、新增、修改、删除等操作。
3、客户管理:
对客户信息进行查询、新增、修改、删除等操作。
3、项目管理:
对项目信息进行查询、新增、修改、删除等操作。
2.2可行性分析
可行性分析是根据初步调查结果做出系统开发是否可行的结论的过程。
每一个项目工程的确立都需要进行项目的可行性分析。
该分析保证正确的选择投资项目所必要工作,这对项目的审批程序也是必不可少的。
信息系统开发项目是一项非常复杂的高科技系统工程,所以系统的可行性分析是必不可少的,可行性研究的目的也就是用最小的代价在尽可能短的时间内确定问题是否可以很好的解决、是否值得去解决。
根据调查分析,系统设计方案有以下三个可行性。
2.2.1技术可行性
传统的应用程序是通过事先与数据库确立连接,在整个程序的运行过程通过维护数据库的连接方式而实现。
首先现在的系统开发方法已经发展的相对成熟,结构化和面向的对象,都已经广泛的使用,这让我们开发系统的系统调查、系统分析、系统设计和系统实施更加的规范,系统完成的更加的科学。
开发系统所需要的硬件技术、软件开发技术和网络技术发展的相当的成熟。
其次汽车美容管理系统有如下的特点:
一是数据量相对较大;二是数据的处理相对集中,内部数据的处理量大,输出量大。
三是需要不断进行更新。
基于以上三个特点,现有技术都可以达到要求的目标。
在单机环境下组建管理信息系统,该系统的开发工作可以采用vs做前台,SQLServer做后台数据库来进行。
前台的可视化程度非常高,人机交互能力也比较强,应用起来也是十分的方便,后台的数据库功能十分强大,能很好的支持系统的运行。
2.2.2经济可行性
开发软件的投资费用主要包括:
包括计算机设备和软件配置等的设备费用;包含开发人员、运行人员和维护人员的人员费用;包括文档资料,纸张需要等的材料费用;和一些如设备保养的其他费用。
现在的汽车美容管理系统有自己的运营费用,而且一般美容管理在原有的计算机硬件基础上不必再投入;只需要在软件开发上面投入少许经费就可以了,这方面的美容公司应该会愿意承担并且完全可以支付的起。
同时,系统管理人员熟知美容管理的流程。
所以,花费在人员培训上的费用是不会太高的。
开发的系统是一个性能稳定,易于维护的系统,后期维护不会消耗大量的人力和物力,这样系统在人员方面的投资也可以支付。
2.2.3操作可行性
本系统要求运行环境不高,可以在Windows7操作系统平台上运行,数据库服务器为SQLServer2008,开发工具采用的VS2010。
界面美观、易懂、容易操作、功能齐全,方便了对成绩的管理。
综上所述,从经济可行性、技术可行性、操作可行性上来说,系统开发是完全可行的。
三、概要设计
系统开发工作经过需求分析阶段,已完全弄清了用户的需要,较好的解决了“做什么”的问题,我们建立了系统逻辑模型。
到现在,本系统的开发阶段就进入到了概要设计阶段,我们开始动手解决“怎么做”的问题。
也就是根据我们需求分析阶段确定的系统的逻辑模型,完成对系统物理模型设计的问题。
我们在概要设计阶段的指导思想就是结构化指导思想,是指用一组标准的规则与图表工具来确定系统该有什么模块,怎么连接,这样才能形成新系统的结构,然后再继续进行诸如输入、输出、对话等设计,为整个系统的实施做好铺垫。
3.1系统数据库设计
数据库设计是管理信息系统的重要组成部分。
数据库设计是对一个既定的环境,进行符合应用语义的逻辑设计,并且提供了一个确定存储结构和物理设计,在有效存取数据和数据模型的情况下实现系统目标。
建立了良好的文件组织形式和数据库结构,使系统准确、快速的获得所需信息是评价系统的主要指标。
因此,是管理信息系统的重要组成部分。
数据库设计的核心问题就是设计出较好的数据模型。
在现在的数据库管理系统中有网状模型、层次模型和关系模型三种模型。
这里的关系模型具有相对较高的数据独立性,使用起来也非常方便。
目前,微机数据库多采用关系型数据库模型。
我们采用SQLServer数据库。
这个数据库对行增加、删除、编辑和统计、显示和应答都极为方便。
其中的排序和索引功能,对数据快速定位、查询提供了有利条件。
3.1.1数据库概念结构设计(E-R图)
概念模型的表示方法很多,其中最为着名最为常用的是E-R图。
简单的说,E-R图用来分析数据关系的。
下面具体列出高校学生选课管理系统主要的实体图及E-R图。
实体间E-R图如图3.1所示。
图3.1E-R图
3.1.2数据库表设计
根据给出的E-R图可以对系统所需要的数据库进行设计,数据库中包含多个表,以下列出主要的数据表及各个表中的字段详细情况。
客户信息表,用于客户信息的储存与管理,如表3.1所示。
表3.1客户信息表
字段名
数据类型
长度
约束
ID
nchar
20
PrimaryKey
姓名
nchar
50
NOTNULL
年龄
Int
4
NOTNULL
性别
nchar
5
NOTNULL
联系方式
nchar
20
NOTNULL
地址
nchar
50
NOTNULL
车辆信息表,用于车辆信息的储存与管理,如表3.2所示:
表3.2车辆信息表
字段名
数据类型
长度
约束
ID
nchar
20
PrimaryKey
车主ID
nchar
20
NOTNULL
品牌
nchar
50
NOTNULL
项目信息表,用于项目信息的储存与管理,如表3.3所示:
表3.3学生信息表
字段名
数据类型
长度
约束
名称
nchar
50
PrimaryKey
价格
Int
4
NOTNULL
记录信息表,用于管理收费信息。
具体字段如表3.4所示。
表3.4记录信息表
字段名
数据类型
长度
约束
ID
nchar
20
PrimaryKey
汽车ID
nchar
20
NOTNULL
美容项目
nchar
50
NOTNULL
日期
Date
13
NOTNULL
3.2系统功能分析
汽车美容管理系统包括客户管理、车辆管理、项目管理,收费管理四大模块。
四大模块又包含各自的子模块。
客户管理包括新增客户、查询信息、修改信息、删除客户;车辆管理包括新增车辆、查询信息、修改信息、删除车辆;项目管理包括新增项目、查询信息、信息修改、删除项目;收费管理包括登记收费、财务统计。
综上所述,汽车美容管理系统功能模块图如图3.2所示。
图3.2系统功能模块图
四、详细设计
汽车美容管理系统采用C#编写,利用SQLServer数据库存储信息。
按实际需求及功能模块编写,按如下顺序详细介绍。
4.1登陆模块
登陆界面实现管理员登录。
程序运行结果如图4.1所示。
图4.1登陆模块
主要的功能代码如下:
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(""==textBox1.Text)MessageBox.Show("请输入用户名!
");
elseif(""==textBox2.Text)MessageBox.Show("请输入密码!
");
elseif("dai"==textBox1.Text&&"123"==textBox2.Text)
{
this.Hide();
主菜单from=new主菜单();
from.ShowDialog();
this.Close();
}
else
{
MessageBox.Show("账号或密码错误,请重新输入!
","提示信息",MessageBoxButtons.OK,MessageBoxIcon.Information);
textBox2.Text="";
textBox1.Text="";
}
}
4.2主菜单模块
主菜单界面祈祷一个菜单的作用。
程序运行结果如图4.2所示。
图4.2主菜单模块
主要的功能代码如下:
namespaceWindowsFormsApplication1
{
publicpartialclass主菜单:
Form
{
public主菜单()
{
InitializeComponent();
}
privatevoid客户信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
客户管理from=new客户管理();
from.ShowDialog();
this.Show();
}
privatevoid新增客户ToolStripMenuItem_Click(objectsender,EventArgse)
{
新增客户from=new新增客户();
from.ShowDialog();
this.Show();
}
privatevoid信息修改ToolStripMenuItem_Click(objectsender,EventArgse)
{
客户修改from=new客户修改();
from.ShowDialog();
this.Show();
}
privatevoid删除客户ToolStripMenuItem_Click(objectsender,EventArgse)
{
客户删除from=new客户删除();
from.ShowDialog();
this.Show();
}
privatevoid车辆信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
车辆管理from=new车辆管理();
from.ShowDialog();
this.Show();
}
privatevoid新增车辆ToolStripMenuItem_Click(objectsender,EventArgse)
{
新增车辆from=new新增车辆();
from.ShowDialog();
this.Show();
}
privatevoid信息修改ToolStripMenuItem1_Click(objectsender,EventArgse)
{
车辆修改from=new车辆修改();
from.ShowDialog();
this.Show();
}
privatevoid删除车辆ToolStripMenuItem_Click(objectsender,EventArgse)
{
车辆删除from=new车辆删除();
from.ShowDialog();
this.Show();
}
privatevoid项目信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
项目管理from=new项目管理();
from.ShowDialog();
this.Show();
}
privatevoid新增项目ToolStripMenuItem_Click(objectsender,EventArgse)
{
新增项目from=new新增项目();
from.ShowDialog();
this.Show();
}
privatevoid信息修改ToolStripMenuItem2_Click(objectsender,EventArgse)
{
项目修改from=new项目修改();
from.ShowDialog();
this.Show();
}
privatevoid删除项目ToolStripMenuItem_Click(objectsender,EventArgse)
{
项目删除from=new项目删除();
from.ShowDialog();
this.Show();
}
privatevoid财务信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
财务管理from=new财务管理();
from.ShowDialog();
this.Show();
}
privatevoid登记收费ToolStripMenuItem_Click(objectsender,EventArgse)
{
登记收费from=new登记收费();
from.ShowDialog();
this.Show();
}
}
}
4.3收费管理模块
4.3.1财务统计模块
该界面主要用于显示财务统计信息。
运行图如图4.3所示。
图4.3财务统计模块
主要功能代码如下:
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text=="")MessageBox.Show("请输入月份!
");
else
{try
{stringstrconn,strsql;
strconn="DataSource=.;InitialCatalog=car_beauty_system;IntegratedSecurity=True";
strsql="execPROC_COUNT_ITEM_BY_MONTH"+textBox1.Text+"";
SqlConnectionmyconn=newSqlConnection(strconn);
SqlDataAdaptermyda=newSqlDataAdapter(strsql,myconn);
DataSetmyds=newDataSet();
myda.Fill(myds,"record");
dataGridView1.DataSource=myds.Tables["record"];
}
catch(Exceptionex)
{
MessageBox.Show("显示错误!
");
}
}
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
if(textBox2.Text=="")MessageBox.Show("请输入月份!
");
else
{
try
{
stringstrconn,strsql;
strconn="DataSource=.;InitialCatalog=car_beauty_system;IntegratedSecurity=True";
strsql="execPROC_COUNT_PRICE_BY_MONTH"+textBox2.Text+"";
SqlConnectionmyconn=newSqlConnection(strconn);
SqlDataAdaptermyda=newSqlDataAdapter(strsql,myconn);
DataSetmyds=newDataSet();
myda.Fill(myds,"record");
dataGridView1.DataSource=myds.Tables["record"];
}
catch(Exceptionex)
{
MessageBox.Show("显示错误!
");
}
}
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
if(textBox3.Text=="")MessageBox.Show("请输入年份!
");
else
{try
{stringstrconn,strsql;
strconn="DataSource=.;InitialCatalog=car_beauty_system;IntegratedSecurity=True";
strsql="execPROC_COUNT_CUSTOMER_BY_YEAR"+textBox3.Text+"";
SqlConnectionmyconn=newSqlConnection(strconn);
SqlDataAdaptermyda=newSqlDataAdapter(strsql,myconn);
DataSetmyds=newDataSet();
myda.Fill(myds,"record");
dataGridView1.DataSource=myds.Tables["record"];
}
catch(Exceptionex)
{
MessageBox.Show("显示错误!
");
}
}
}
4.2.2登记收费模块
登记收费界面实现收费管理。
程序运行结果如图4.4所示。
图4.4登记收费模块
主要的功能代码如下:
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text=="")MessageBox.Show("请输入ID!
");
elseif(textBox2.Text=="")MessageBox.Show("请输入车辆ID!
");
elseif(textBox3.Text=="")MessageBox.Show("请输入项目!
");
elseif(textBox4.Text=="")MessageBox.Show("请输入日期!
");
else
{try
{stringstrconn="DataSource=.;InitialCatalog=car_beauty_system;IntegratedSecurity=True";SqlConnectionconnection=newSqlConnection(strconn);
stringsql2="insertintorecordvalues('"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3.Text+"','"+textBox4.Text+"')";
connection.Open();
SqlCommandcommand2=newSqlCommand(sql2,connection);
command2.ExecuteNonQuery();
connection.Close();
showlist();
textBox1.Text=textBox2.Text=textBox3.T