




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件开发课程设计报告课题:企业设备信息管理系统设计与开发、课程设计的目的和意义错. 误! 未指定书签、需求分析错. 误! 未指定书签三、系统设计 错. 误! 未指定书签四、数据库设计 错. 误! 未指定书签五、系统测试(运行界面) 错. 误! 未指定书签六、小结 错. 误!未指定书签七、程序源代码 错. 误! 未指定书签。一、课程设计的目的和意义 目前仪器设备管理水平不是很高。 大多数仪器设备管理办法是仪器设备采购 进来以后, 将仪器设备的基本情况和相关信息登记存档, 然后将档案存档。 以后 档案基本就没人维护, 如仪器设备位置变迁、 检修情况、 仪器设备当前运行状态 等信息根本不会体现在仪器
2、设备台帐上, 即仪器设备跟踪信息不能及时体现在仪 器设备档案上。 某些使用仪器设备管理系统的单位, 对仪器设备的跟踪信息即使 能体现在仪器设备档案上, 但仪器设备的缺陷处理及仪器设备缺陷等功能没有实 施。整个仪器设备管理信息化仍处于较低水平。本次课程设计就是为了方便仪器设备进行统计及管理工作, 将管理任务分成 小块,落实到个人并能随时查询仪器设备当前情况和历史情况, 对仪器设备的可 靠性分析有直接作用, 使管理人员从手工计算、 统计工作中解脱出来, 提高的现 代化管理水平。二、需求分析 本系统功能主要设计了对设备的管理,主要完成简单的对设备数据库增删查改。 对于支持该系统的数据库,建立了 5
3、张表,分别是设备表、设备借出情况表、可 用设备情况表、 设备维修情况表和员工表。 这对每一项功能, 都有必要的驱动信 息和功能上的约束。 以设备表为例, 设备管理分为四部分: 添加设备,删除设备, 浏览设备,查询设备。添加设备时应该能对一些有限制的信息做好正确的检查, 录入的设备信息应包括设备编号、设备名称、品牌、购买时间、生产时间,并且 在信息输入时应及时对信息的合法性进行检查; 删除设备可以根据输入设备的名 称进行删除; 查询设备主要是对具有相关特征的设备信息进行查找; 浏览设备是 按照管理员的要求将用户所需的数据抽取出来自动生成报表, 该项功能应该能够 合理的抽取所需的信息集合,全面合理
4、提供用户所需的数据。本系统的功能层次图:图-1功能层次图三、系统设计图2-设备E-R图四、数据库设计表1 : device 设备表序号列名数据类型长度主外键允许空说明1de_novarchar50主键否设备编号2de_namevarchar50否设备名称3de_brandvarchar50否品牌4de_btimevarchar50是购买时间5de_ptimevarchar50是生产时间表2: lend_device 设备借岀情况表序号列名数据类型长度主外键允许空说明1lend_numint4主键否序号2de_novarchar50否设备编号3de_namevarchar50否设备名称4st_n
5、ovarchar50否员工编号5st_namevarchar50否员工名称6lend_daysint4否借用天数7lend_datevarchar50否借用日期表3: remian_device 可用设备表序号列名数据类型长度主外键允许空说明1remian_numint4主键否序号2de_novarchar50外键否设备编号3de_namevarchar50否设备名称4de_conditionvarchar50是设备状态表4: repair_device设备维修情况表序号列名数据类型长度主键允许空说明1repair_numint4主键否序号2st_novarchar50否维修员工编号3de_n
6、ovarchar50外键否设备编号4destroy_datevarchar50否损坏日期5repair_conditionvarchar50是维修状态表5: staff 员工表序号列名数据类型长度主外键允许空说明1st_novarchar50主键否员工编号2st_namevarchar50否员工名称3st_sexvarchar50否员工性别4st_agevarchar50是员工年龄五、系统测试(运行界面)设备表查询增加修改删除设备借出表查询增加修改删除六、小结经过一周的课程设计,一个简单的企业设备管理信息系统设计完成了, 但也正在 这时我真正意识到所学知识的不足,可以说关于这方面的接触才刚刚开
7、始,深有 感触,无以言表。关于本系统,虽然对企业设备管理信息进行了系统的基本创建, 但我们不可忽略 的是这个系统并不完美。通过这次课程设计使我们懂得了理论与实际相结合是很 重要的,只有把所学的理论知识与实践相结合起来, 从理论中得出结论, 才能算 是学以致用,从而提高自己的实际动手能力和独立思考的能力。 我们在设计中遇到了很多问题。 这次课程设计中一个比较陌生的问题就是利用搭 建三层架构来完成本次的实验, 但是经过老师的视频讲解, 一步一步跟着做, 最 后还是完成了。总之,每一次课程设计不仅是我们学习的好机会, 而且是我们锻炼实际动手能力 的平台,虽然有难度的东西总会让人很抵触, 比如在课设过
8、程中有很多郁闷的时 候,一个小小的错误一不小心就花去一大段时间, 所以在这个过程中能够磨练人 的意志与耐心。七、程序源代码以设备表为例Model 层代码、usingSystem;namespaceMaticsoft.Model/device:实体类(属性说明自动提取数据库字段的描述信息)/Serializable publicpartialclassdevicepublicdevice()#regionModelprivatestring _de_no;privatestring _de_name;privatestring _de_brand;privatestring _de_btime;
9、privatestring _de_ptime; / publicstringde_noset_de_no= value;get return_de_no;/ publicstringde_nameset_de_name=value;get return_de_name; / / publicstring de_brand set_de_brand= value; get return_de_brand; / / publicstring de_btime set_de_btime= value; get return_de_btime; / / publicstring de_ptime s
10、et_de_ptime= value; get return_de_ptime; #endregionModelDAL 层代码, usingSystem; usingSystem.Data; usingSystem.Text; using usingMaticsoft.DBUtility; /Pleaseaddreferences namespaceMaticsoft.DAL/数据访问类 device/ publicpartialclass device publicdevice() #regionBasicMethod/是否存在该记录/publicbool Exists( stringde_
11、no)StringBuilder strSql=newStringBuilder ();strSql.Append( selectcount(1)fromdevice );strSql.Append( wherede_no=de_no );SqlParameterparameters=newSqlParameter(de_no ,SqlDbType .VarChar,50);parameters0.Value=de_no;returnDbHelperSQL .Exists(strSql.ToString(),parameters);/增加一条数据/publicbool Add(Maticsof
12、t.Model. devicemodel)StringBuilder strSql=newStringBuilder ();strSql.Append( insertintodevice( );strSql.Append( de_no,de_name,de_brand,de_btime,de_ptime);strSql.Append( values( );strSql.Append( de_no,de_name,de_brand,de_btime,de_ptime) );SqlParameterparameters=newSqlParameter(de_no ,SqlDbType .VarCh
13、ar,50), newSqlParameter(de_name,SqlDbType .VarChar,50), newSqlParameter(de_brand ,SqlDbType .VarChar,50), newSqlParameter(de_btime , SqlDbType .VarChar,50), newSqlParameter(de_ptime , SqlDbType .VarChar,50);parameters0.Value=model.de_no;parameters1.Value=model.de_name;parameters2.Value=model.de_bran
14、d;parameters3.Value=model.de_btime;parameters4.Value=model.de_ptime;introws= DbHelperSQL .ExecuteSql(strSql.ToString(),parameters);if (rows0)returntrue;elsereturnfalse;/更新一条数据/publicbool Update(Maticsoft.Model. devicemodel)StringBuilder strSql=newStringBuilder ();strSql.Append( updatedeviceset);strS
15、ql.Append( de_name=de_name,);strSql.Append( de_brand=de_brand, );strSql.Append( de_btime=de_btime, );strSql.Append( de_ptime=de_ptime );strSql.Append( wherede_no=de_no );SqlParameterparameters=newSqlParameter(de_name,SqlDbType .VarChar,50), newSqlParameter(de_brand ,SqlDbType .VarChar,50), newSqlPar
16、ameter(de_btime , SqlDbType .VarChar,50), newSqlParameter(de_ptime , SqlDbType .VarChar,50), newSqlParameter(de_no ,SqlDbType .VarChar,50);parameters0.Value=model.de_name;parameters1.Value=model.de_brand;parameters2.Value=model.de_btime;parameters3.Value=model.de_ptime;parameters4.Value=model.de_no;
17、introws= DbHelperSQL .ExecuteSql(strSql.ToString(),parameters);if (rows0)returntrue;elsereturnfalse;/删除一条数据/publicboolDelete(stringde_no)StringBuilder strSql=newStringBuilder ();strSql.Append( deletefromdevice );strSql.Append( wherede_no=de_no );SqlParameterparameters=newSqlParameter(de_no ,SqlDbTyp
18、e .VarChar,50);parameters0.Value=de_no; introws= DbHelperSQL .ExecuteSql(strSql.ToString(),parameters); if (rows0)returntrue; else returnfalse; / /批量删除数据 / publicbool DeleteList( stringde_nolist) StringBuilder strSql=newStringBuilder (); strSql.Append( deletefromdevice ); strSql.Append( wherede_noin
19、( +de_nolist+ ) ); introws= DbHelperSQL .ExecuteSql(strSql.ToString();if (rows0)returntrue; else returnfalse; / /得到一个对象实体 / publicMaticsoft.Model. deviceGetModel( stringde_no)StringBuilder strSql=newStringBuilder ();strSql.Append( selecttop1de_no,de_name,de_brand,de_btime,de_ptimefromdevice ); strSq
20、l.Append( wherede_no=de_no );SqlParameterparameters=newSqlParameter(de_no ,SqlDbType .VarChar,50);parameters0.Value=de_no;Maticsoft.Model. devicemodel=newMaticsoft.Model. device();DataSetds=DbHelperSQL .Query(strSql.ToString(),parameters);if (ds.Tables0.Rows.Count0) returnDataRowToModel(ds.Tables0.R
21、ows0);elsereturnnull ;/得到一个对象实体/ publicMaticsoft.Model. deviceDataRowToModel( DataRowrow)Maticsoft.Model. devicemodel=newMaticsoft.Model. device();if (row!= null)if(row de_no != null )model.de_no=row de_no.ToString();if(row de_name!= null ) model.de_name=rowde_name.ToString();if(row de_brand != null
22、 )model.de_brand=row de_brand.ToString();if(row de_btime != null )model.de_btime=row de_btime .ToString();if(row de_ptime != null )model.de_ptime=row de_ptime .ToString(); returnmodel;/获得数据列表/publicDataSetGetList( stringstrWhere)StringBuilder strSql=newStringBuilder ();strSql.Append( selectde_no,de_
23、name,de_brand,de_btime,de_ptime); strSql.Append( FROMdevice );if (strWhere.Trim()!= ) strSql.Append(where +strWhere); returnDbHelperSQL .Query(strSql.ToString();/获得前几行数据/publicDataSetGetList( intTop,stringstrWhere,stringfiledOrder)StringBuilder strSql=newStringBuilder (); strSql.Append( select );if
24、(Top0)strSql.Append(top +Top.ToString();strSql.Append( de_no,de_name,de_brand,de_btime,de_ptime); strSql.Append( FROMdevice );if (strWhere.Trim()!= ) strSql.Append(where +strWhere);strSql.Append( orderby +filedOrder);returnDbHelperSQL .Query(strSql.ToString();/获取记录总数/publicint GetRecordCount(strings
25、trWhere)StringBuilder strSql=newStringBuilder ();strSql.Append( selectcount(1)FROMdevice );if (strWhere.Trim()!= ) strSql.Append(where +strWhere);objectobj=DbHelperSQL .GetSingle(strSql.ToString();if (obj= null ) return0;elsereturnConvert.ToInt32(obj);/分页获取数据列表/publicDataSetGetListByPage(stringstrWh
26、ere,stringorderby,intstartIndex,intendIndex)StringBuilder strSql=newStringBuilder ();strSql.Append( SELECT*FROM( );strSql.Append( SELECTROW_NUMBER()OVER( );if (!string .IsNullOrEmpty(orderby.Trim()strSql.Append(orderbyT. +orderby);elsestrSql.Append( orderbyT.de_nodesc );strSql.Append( )ASRow,T.*from
27、deviceT );if (!string .IsNullOrEmpty(strWhere.Trim()strSql.Append(WHERE +strWhere);strSql.Append( )TT );strSql.AppendFormat( WHERETT.Rowbetween0and1 ,startIndex,endIndex);returnDbHelperSQL .Query(strSql.ToString();/*/分页获取数据列表/publicDataSetGetList(intPageSize,intPageIndex,stringstrWhere)SqlParameterp
28、arameters=newSqlParameter(tblName,SqlDbType.VarChar,255),newSqlParameter(fldName,SqlDbType.VarChar,255),newSqlParameter(PageSize,SqlDbType.Int),newSqlParameter(PageIndex,SqlDbType.Int),newSqlParameter(IsReCount,SqlDbType.Bit),newSqlParameter(OrderType,SqlDbType.Bit), newSqlParameter(strWhere,SqlDbTy
29、pe.VarChar,1000), ;parameters0.Value=device;parameters1.Value=de_no;parameters2.Value=PageSize;parameters3.Value=PageIndex;parameters4.Value=0;parameters5.Value=0;parameters6.Value=strWhere; returnDbHelperSQL.RunProcedure(UP_GetRecordByPage,parameters,ds);*/#endregionBasicMethod#regionExtensionMetho
30、d#endregionExtensionMethodBLL 层代码,usingSystem;usingSystem.Data;usingusingMaticsoft.Common;usingMaticsoft.Model;namespaceMaticsoft.BLL/device/publicpartialclass deviceprivatereadonlyMaticsoft.DAL. devicedal=newMaticsoft.DAL. device(); publicdevice()#regionBasicMethod/是否存在该记录/publicbool Exists( string
31、de_no)returndal.Exists(de_no);/增加一条数据/publicbool Add(Maticsoft.Model. devicemodel)returndal.Add(model);/更新一条数据/publicbool Update(Maticsoft.Model. devicemodel)returndal.Update(model);/删除一条数据/ publicboolDelete(stringde_no)returndal.Delete(de_no);/删除一条数据/publicbool DeleteList( stringde_nolist)returndal
32、.DeleteList(de_nolist);/得到一个对象实体/publicMaticsoft.Model. deviceGetModel( stringde_no)returndal.GetModel(de_no);/得到一个对象实体,从缓存中/publicMaticsoft.Model. deviceGetModelByCache( stringde_no)stringCacheKey=deviceModel- +de_no;objectobjModel=Maticsoft.Common. DataCache.GetCache(CacheKey); if (objModel= null)
33、tryobjModel=dal.GetModel(de_no); if (objModel!= null )intModelCache=Maticsoft.Common. ConfigHelper .GetConfigInt( ModelCache );Maticsoft.Common. DataCache.SetCache(CacheKey,objModel, DateTime.Now.AddMinutes(ModelCache), Ti meSpan.Zero);catchreturn(Maticsoft.Model. device)objModel;/获得数据列表/ publicDataSetGetList( stringstrWhere)returndal.GetList(strWhere);/获得前几行数据/publicDataSetGetList( intTop,stringstrWhere,stringfiledOrder)returndal.GetList(Top,strWhere,filedOrder);/获得数据列表 / publicList GetModelList( stringstrWhere) DataSetds=dal.GetList(strWhere); returnDataTableToList(ds.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 研究起草项目协议书
- 教师外出住宿协议书
- 阳台围栏转让协议书
- 损毁青苗调解协议书
- 旅游景区租赁协议书
- 退婚退还彩礼协议书
- 学校校车服务协议书
- 整场设备转让协议书
- 医患纠纷协议书格式
- 西安就业协议书盖章
- DB32-T 4545-2023 海岸线分类与调查技术规范
- 迁坟祭文范文
- 【MOOC】金融衍生品-四川大学 中国大学慕课MOOC答案
- 【MOOC】中医临证施护-湖南中医药大学 中国大学慕课MOOC答案
- 零星维修工程 投标方案(技术方案)
- 2024年人力资源行业变革:人工智能在招聘中的应用
- 【初中物理】《质量》教学课件-2024-2025学年人教版(2024)八年级物理上册
- 全电路欧姆定律-完整课件
- 《数据的收集》课件
- DBJ33T 1320-2024 建设工程质量检测技术管理标准
- 腰椎骨折健康宣教
评论
0/150
提交评论