




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、課題:企業(yè)設(shè)備信息管理系統(tǒng)設(shè)計(jì)與開發(fā)一、課程設(shè)計(jì)的目的和意義2二、需求分析2三、系統(tǒng)設(shè)計(jì)4四、數(shù)據(jù)庫設(shè)計(jì)5五、系統(tǒng)測試(運(yùn)行界面)6六、小結(jié)11七、程序源代碼11一、課程設(shè)計(jì)的目的和意義目前儀器設(shè)備管理水平不是很高。大多數(shù)儀器設(shè)備管理辦法是儀器設(shè)備采購進(jìn)來以后,將儀器設(shè)備的基本情況和相關(guān)信息登記存檔,然后將檔案存檔。以后檔案基本就沒人維護(hù),如儀器設(shè)備位置變遷、檢修情況、儀器設(shè)備當(dāng)前運(yùn)行狀態(tài)等信息根本不會體現(xiàn)在儀器設(shè)備臺帳上,即儀器設(shè)備跟蹤信息不能及時(shí)體現(xiàn)在儀器設(shè)備檔案上。某些使用儀器設(shè)備管理系統(tǒng)的單位,對儀器設(shè)備的跟蹤信息即使能體現(xiàn)在儀器設(shè)備檔案上,但儀器設(shè)備的缺陷處理及儀器設(shè)備缺陷等功能沒有
2、實(shí)施。整個(gè)儀器設(shè)備管理信息化仍處于較低水平。本次課程設(shè)計(jì)就是為了方便儀器設(shè)備進(jìn)行統(tǒng)計(jì)及管理工作,將管理任務(wù)分成小塊,落實(shí)到個(gè)人并能隨時(shí)查詢儀器設(shè)備當(dāng)前情況和歷史情況,對儀器設(shè)備的可靠性分析有直接作用,使管理人員從手工計(jì)算、統(tǒng)計(jì)工作中解脫出來,提高的現(xiàn)代化管理水平。二、需求分析本系統(tǒng)功能主要設(shè)計(jì)了對設(shè)備的管理,主要完成簡單的對設(shè)備數(shù)據(jù)庫增刪查改。對于支持該系統(tǒng)的數(shù)據(jù)庫,建立了5張表,分別是設(shè)備表、設(shè)備借出情況表、可用設(shè)備情況表、設(shè)備維修情況表和員工表。這對每一項(xiàng)功能,都有必要的驅(qū)動(dòng)信息和功能上的約束。以設(shè)備表為例,設(shè)備管理分為四部分:添加設(shè)備,刪除設(shè)備,瀏覽設(shè)備,查詢設(shè)備。添加設(shè)備時(shí)應(yīng)該能對一些
3、有限制的信息做好正確的檢查,錄入的設(shè)備信息應(yīng)包括設(shè)備編號、設(shè)備名稱、品牌、購買時(shí)間、生產(chǎn)時(shí)間,并且在信息輸入時(shí)應(yīng)及時(shí)對信息的合法性進(jìn)行檢查;刪除設(shè)備可以根據(jù)輸入設(shè)備的名稱進(jìn)行刪除;查詢設(shè)備主要是對具有相關(guān)特征的設(shè)備信息進(jìn)行查找;瀏覽設(shè)備是按照管理員的要求將用戶所需的數(shù)據(jù)抽取出來自動(dòng)生成報(bào)表,該項(xiàng)功能應(yīng)該能夠合理的抽取所需的信息集合,全面合理提供用戶所需的數(shù)據(jù)。本系統(tǒng)的功能層次圖: 設(shè)備管理系統(tǒng)設(shè)備管理員工管理設(shè)備借出情況設(shè)備維修情況設(shè)備基本情況 圖-1 功能層次圖三、系統(tǒng)設(shè)計(jì)借出生產(chǎn)時(shí)間品牌 設(shè)備設(shè)備編號設(shè)備名稱購買時(shí)間維修 員工員工編號員工姓名員工性別員工年齡借用日期序號維修日期序號借用天數(shù)
4、維修狀態(tài)nmmn 圖2-設(shè)備E-R圖四、數(shù)據(jù)庫設(shè)計(jì)表1:device設(shè)備表序號列名數(shù)據(jù)類型長度主外鍵允許空說明1de_novarchar50主鍵否設(shè)備編號2de_namevarchar50否設(shè)備名稱3de_brandvarchar50否品牌4de_btimevarchar50是購買時(shí)間5de_ptimevarchar50是生產(chǎn)時(shí)間表2:lend_device設(shè)備借出情況表序號列名數(shù)據(jù)類型長度主外鍵允許空說明1lend_numint4主鍵否序號2de_novarchar50否設(shè)備編號3de_namevarchar50否設(shè)備名稱4st_novarchar50否員工編號5st_namevarchar
5、50否員工名稱6lend_daysint4否借用天數(shù)7lend_datevarchar50否借用日期表3:remian_device可用設(shè)備表序號列名數(shù)據(jù)類型長度主外鍵允許空說明1remian_numint4主鍵否序號2de_novarchar50外鍵否設(shè)備編號3de_namevarchar50否設(shè)備名稱4de_conditionvarchar50是設(shè)備狀態(tài)表4:repair_device設(shè)備維修情況表序號列名數(shù)據(jù)類型長度主鍵允許空說明1repair_numint4主鍵否序號2st_novarchar50否維修員工編號3de_novarchar50外鍵否設(shè)備編號4destroy_datevar
6、char50否損壞日期5repair_conditionvarchar50是維修狀態(tài)表5:staff員工表序號列名數(shù)據(jù)類型長度主外鍵允許空說明1st_novarchar50主鍵否員工編號2st_namevarchar50否員工名稱3st_sexvarchar50否員工性別4st_agevarchar50是員工年齡五、系統(tǒng)測試(運(yùn)行界面)設(shè)備表l 查詢l 增加l 修改l 刪除設(shè)備借出表l 查詢l 增加l 修改l 刪除六、小結(jié)經(jīng)過一周的課程設(shè)計(jì),一個(gè)簡單的企業(yè)設(shè)備管理信息系統(tǒng)設(shè)計(jì)完成了,但也正在這時(shí)我真正意識到所學(xué)知識的不足,可以說關(guān)于這方面的接觸才剛剛開始,深有感觸,無以言表。關(guān)于本系統(tǒng),雖然對
7、企業(yè)設(shè)備管理信息進(jìn)行了系統(tǒng)的基本創(chuàng)建,但我們不可忽略的是這個(gè)系統(tǒng)并不完美。通過這次課程設(shè)計(jì)使我們懂得了理論與實(shí)際相結(jié)合是很重要的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能算是學(xué)以致用,從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。我們在設(shè)計(jì)中遇到了很多問題。這次課程設(shè)計(jì)中一個(gè)比較陌生的問題就是利用搭建三層架構(gòu)來完成本次的實(shí)驗(yàn),但是經(jīng)過老師的視頻講解,一步一步跟著做,最后還是完成了??傊?,每一次課程設(shè)計(jì)不僅是我們學(xué)習(xí)的好機(jī)會,而且是我們鍛煉實(shí)際動(dòng)手能力的平臺,雖然有難度的東西總會讓人很抵觸,比如在課設(shè)過程中有很多郁悶的時(shí)候,一個(gè)小小的錯(cuò)誤一不小心就花去一大段時(shí)間,所以在這個(gè)過程
8、中能夠磨練人的意志與耐心。七、程序源代碼以設(shè)備表為例Model層代碼、using System;namespace/ device:實(shí)體類(屬性說明自動(dòng)提取數(shù)據(jù)庫字段的描述信息)/Serializablepublicpartialclassdevicepublic device()#region Modelprivatestring _de_no;privatestring _de_name;privatestring _de_brand;privatestring _de_btime;privatestring _de_ptime;/publicstring de_noset _de_no=
9、value;getreturn _de_no;/publicstring de_nameset _de_name=value;getreturn _de_name;/publicstring de_brandset _de_brand=value;getreturn _de_brand;/publicstring de_btimeset _de_btime=value;getreturn _de_btime;/publicstring de_ptimeset _de_ptime=value;getreturn _de_ptime;#endregion ModelDAL層代碼,using Sys
10、tem;using System.Data;using System.Text;using System.Data.SqlClient;using Maticsoft.DBUtility;/Please add referencesnamespace/ 數(shù)據(jù)訪問類device/publicpartialclassdevicepublic device()#region BasicMethod/ 是否存在該記錄/publicbool Exists(string de_no)StringBuilder strSql=newStringBuilder();strSql.Append(select c
11、ount(1) from device);strSql.Append( where de_no=de_no );SqlParameter parameters = newSqlParameter(de_no, SqlDbType.VarChar,50);parameters0.Value = de_no;returnDbHelperSQL.Exists(strSql.ToString(),parameters);/ 增加一條數(shù)據(jù)/publicbool Add(Maticsoft.Model.device model)StringBuilder strSql=newStringBuilder()
12、;strSql.Append(insert into device();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);SqlParameter parameters = newSqlParameter(de_no, SqlDbType.VarChar,50),newSqlParameter(de_name, SqlDbType.VarChar,50),newSqlPar
13、ameter(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_brand;parameters3.Value = model.de_btime;parameters4.Value = model.de_
14、ptime;int rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);if (rows 0)returntrue;elsereturnfalse;/ 更新一條數(shù)據(jù)/publicbool Update(Maticsoft.Model.device model)StringBuilder strSql=newStringBuilder();strSql.Append(update device set );strSql.Append(de_name=de_name,);strSql.Append(de_brand=de_brand,
15、);strSql.Append(de_btime=de_btime,);strSql.Append(de_ptime=de_ptime);strSql.Append( where de_no=de_no );SqlParameter parameters = newSqlParameter(de_name, SqlDbType.VarChar,50),newSqlParameter(de_brand, SqlDbType.VarChar,50),newSqlParameter(de_btime, SqlDbType.VarChar,50),newSqlParameter(de_ptime, S
16、qlDbType.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;int rows=DbHelperSQL.ExecuteSql(strSql.ToString(),parameters);i
17、f (rows 0)returntrue;elsereturnfalse;/ 刪除一條數(shù)據(jù)/publicbool Delete(string de_no)StringBuilder strSql=newStringBuilder();strSql.Append(delete from device );strSql.Append( where de_no=de_no );SqlParameter parameters = newSqlParameter(de_no, SqlDbType.VarChar,50);parameters0.Value = de_no;int rows=DbHelpe
18、rSQL.ExecuteSql(strSql.ToString(),parameters);if (rows 0)returntrue;elsereturnfalse;/ 批量刪除數(shù)據(jù)/publicbool DeleteList(string de_nolist )StringBuilder strSql=newStringBuilder();strSql.Append(delete from device );strSql.Append( where de_no in (+de_nolist + ) );int rows=DbHelperSQL.ExecuteSql(strSql.ToStr
19、ing();if (rows 0)returntrue;elsereturnfalse;/ 得到一個(gè)對象實(shí)體/public Maticsoft.Model.device GetModel(string de_no)StringBuilder strSql=newStringBuilder();strSql.Append(select top 1 de_no,de_name,de_brand,de_btime,de_ptime from device );strSql.Append( where de_no=de_no );SqlParameter parameters = newSqlPara
20、meter(de_no, SqlDbType.VarChar,50);parameters0.Value = de_no;Maticsoft.Model.device model=new Maticsoft.Model.device();DataSet ds=DbHelperSQL.Query(strSql.ToString(),parameters);if(ds.Tables0.Rows.Count0)return DataRowToModel(ds.Tables0.Rows0);elsereturnnull;/ 得到一個(gè)對象實(shí)體/public Maticsoft.Model.device
21、DataRowToModel(DataRow row)Maticsoft.Model.device model=new Maticsoft.Model.device();if (row != null)if(rowde_no!=null)model.de_no=rowde_no.ToString();if(rowde_name!=null)model.de_name=rowde_name.ToString();if(rowde_brand!=null)model.de_brand=rowde_brand.ToString();if(rowde_btime!=null)model.de_btim
22、e=rowde_btime.ToString();if(rowde_ptime!=null)model.de_ptime=rowde_ptime.ToString();return model;/ 獲得數(shù)據(jù)列表/publicDataSet GetList(string strWhere)StringBuilder strSql=newStringBuilder();strSql.Append(select de_no,de_name,de_brand,de_btime,de_ptime );strSql.Append( FROM device );if(strWhere.Trim()!=)st
23、rSql.Append( where +strWhere);returnDbHelperSQL.Query(strSql.ToString();/ 獲得前幾行數(shù)據(jù)/publicDataSet GetList(int Top,string strWhere,string filedOrder)StringBuilder strSql=newStringBuilder();strSql.Append(select );if(Top0)strSql.Append( top +Top.ToString();strSql.Append( de_no,de_name,de_brand,de_btime,d
24、e_ptime );strSql.Append( FROM device );if(strWhere.Trim()!=)strSql.Append( where +strWhere);strSql.Append( order by + filedOrder);returnDbHelperSQL.Query(strSql.ToString();/ 獲取記錄總數(shù)/publicint GetRecordCount(string strWhere)StringBuilder strSql=newStringBuilder();strSql.Append(select count(1) FROM dev
25、ice );if(strWhere.Trim()!=)strSql.Append( where +strWhere);object obj = DbHelperSQL.GetSingle(strSql.ToString();if (obj = null)return 0;elsereturnConvert.ToInt32(obj);/ 分頁獲取數(shù)據(jù)列表/publicDataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)StringBuilder strSql=newStringBu
26、ilder();strSql.Append(SELECT * FROM ( );strSql.Append( SELECT ROW_NUMBER() OVER ();if (!string.IsNullOrEmpty(orderby.Trim()strSql.Append(order by T. + orderby );elsestrSql.Append(order by T.de_no desc);strSql.Append()AS Row, T.* from device T );if (!string.IsNullOrEmpty(strWhere.Trim()strSql.Append(
27、 WHERE + strWhere);strSql.Append( ) TT);strSql.AppendFormat( WHERE TT.Row between 0 and 1, startIndex, endIndex);returnDbHelperSQL.Query(strSql.ToString();/*/ / 分頁獲取數(shù)據(jù)列表/ public DataSet GetList(int PageSize,int PageIndex,string strWhere)SqlParameter parameters = new SqlParameter(tblName, SqlDbType.V
28、arChar, 255),new SqlParameter(fldName, SqlDbType.VarChar, 255),new SqlParameter(PageSize, SqlDbType.Int),new SqlParameter(PageIndex, SqlDbType.Int),new SqlParameter(IsReCount, SqlDbType.Bit),new SqlParameter(OrderType, SqlDbType.Bit),new SqlParameter(strWhere, SqlDbType.VarChar,1000),;parameters0.Va
29、lue = device;parameters1.Value = de_no;parameters2.Value = PageSize;parameters3.Value = PageIndex;parameters4.Value = 0;parameters5.Value = 0;parameters6.Value = strWhere;return DbHelperSQL.RunProcedure(UP_GetRecordByPage,parameters,ds);*/#endregion BasicMethod#region ExtensionMethod#endregion Exten
30、sionMethodBLL層代碼,using System;using System.Data;using System.Collections.Generic;using Maticsoft.Common;using Maticsoft.Model;namespace/ device/publicpartialclassdeviceprivatereadonly Maticsoft.DAL.device dal=new Maticsoft.DAL.device();public device()#region BasicMethod/ 是否存在該記錄/publicbool Exists(st
31、ring de_no)return dal.Exists(de_no);/ 增加一條數(shù)據(jù)/publicbool Add(Maticsoft.Model.device model)return dal.Add(model);/ 更新一條數(shù)據(jù)/publicbool Update(Maticsoft.Model.device model)return dal.Update(model);/ 刪除一條數(shù)據(jù)/publicbool Delete(string de_no)return dal.Delete(de_no);/ 刪除一條數(shù)據(jù)/publicbool DeleteList(string de_no
32、list )return dal.DeleteList(de_nolist );/ 得到一個(gè)對象實(shí)體/public Maticsoft.Model.device GetModel(string de_no)return dal.GetModel(de_no);/ 得到一個(gè)對象實(shí)體,從緩存中/public Maticsoft.Model.device GetModelByCache(string de_no)string CacheKey = deviceModel- + de_no;object objModel = Maticsoft.Common.DataCache.GetCache(Ca
33、cheKey);if (objModel = null)tryobjModel = dal.GetModel(de_no);if (objModel != null)int ModelCache = Maticsoft.Common.ConfigHelper.GetConfigInt(ModelCache);Maticsoft.Common.DataCache.SetCache(CacheKey, objModel, DateTime.Now.AddMinutes(ModelCache), TimeSpan.Zero);catchreturn (Maticsoft.Model.device)objModel;/ 獲得數(shù)據(jù)列表/publicDataSet GetList(string strWhere)return
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度旅游行業(yè)履約保函反擔(dān)保合同范本
- 二零二五年度電子元器件銷售與市場拓展合同
- 二零二五年紡織面料電商銷售合作協(xié)議集錦
- 二零二五年度房產(chǎn)項(xiàng)目項(xiàng)目質(zhì)量追溯與責(zé)任追究補(bǔ)充協(xié)議
- 貿(mào)促會棉花買賣合同2025版下載專區(qū)專用模板
- 2025版商業(yè)地產(chǎn)存量房屋買賣合同模板大全
- 2025版出租車司機(jī)服務(wù)質(zhì)量監(jiān)督與反饋機(jī)制合同
- 二零二五年度獵聘企業(yè)人才需求與人才戰(zhàn)略合作事宜合同書
- 二零二五年度螺桿機(jī)生產(chǎn)線智能化改造項(xiàng)目采購協(xié)議
- 二零二五年度房地產(chǎn)項(xiàng)目信息化建設(shè)合作協(xié)議范本
- 全面?zhèn)淇寂阍\師考試試題及答案
- 2025年四川單招試題及答案
- 訂單交期控制培訓(xùn)
- 數(shù)字化制造課件
- 生產(chǎn)能力擴(kuò)充及設(shè)備升級計(jì)劃
- 4P營銷理論課件
- 2025年小時(shí)工勞務(wù)合同模板
- 2025年月度工作日歷含農(nóng)歷節(jié)假日電子表格版
- T-GXAS 421-2022 成人急性中毒洗胃操作技術(shù)規(guī)范
- 云南省煙花爆竹經(jīng)營單位安全管理人員考試練習(xí)題1(100題)附答案
- 投資合作合同書范本中文版模板
評論
0/150
提交評論