版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課題:企業(yè)設備信息管理系統(tǒng)設計與開發(fā)一、課程設計的目的和意義2二、需求分析2三、系統(tǒng)設計4四、數據庫設計5五、系統(tǒng)測試(運行界面)6六、小結11七、程序源代碼11一、課程設計的目的和意義目前儀器設備管理水平不是很高。大多數儀器設備管理辦法是儀器設備采購進來以后,將儀器設備的基本情況和相關信息登記存檔,然后將檔案存檔。以后檔案基本就沒人維護,如儀器設備位置變遷、檢修情況、儀器設備當前運行狀態(tài)等信息根本不會體現在儀器設備臺帳上,即儀器設備跟蹤信息不能及時體現在儀器設備檔案上。某些使用儀器設備管理系統(tǒng)的單位,對儀器設備的跟蹤信息即使能體現在儀器設備檔案上,但儀器設備的缺陷處理及儀器設備缺陷等功能沒有
2、實施。整個儀器設備管理信息化仍處于較低水平。本次課程設計就是為了方便儀器設備進行統(tǒng)計及管理工作,將管理任務分成小塊,落實到個人并能隨時查詢儀器設備當前情況和歷史情況,對儀器設備的可靠性分析有直接作用,使管理人員從手工計算、統(tǒng)計工作中解脫出來,提高的現代化管理水平。二、需求分析本系統(tǒng)功能主要設計了對設備的管理,主要完成簡單的對設備數據庫增刪查改。對于支持該系統(tǒng)的數據庫,建立了5張表,分別是設備表、設備借出情況表、可用設備情況表、設備維修情況表和員工表。這對每一項功能,都有必要的驅動信息和功能上的約束。以設備表為例,設備管理分為四部分:添加設備,刪除設備,瀏覽設備,查詢設備。添加設備時應該能對一些
3、有限制的信息做好正確的檢查,錄入的設備信息應包括設備編號、設備名稱、品牌、購買時間、生產時間,并且在信息輸入時應及時對信息的合法性進行檢查;刪除設備可以根據輸入設備的名稱進行刪除;查詢設備主要是對具有相關特征的設備信息進行查找;瀏覽設備是按照管理員的要求將用戶所需的數據抽取出來自動生成報表,該項功能應該能夠合理的抽取所需的信息集合,全面合理提供用戶所需的數據。本系統(tǒng)的功能層次圖: 設備管理系統(tǒng)設備管理員工管理設備借出情況設備維修情況設備基本情況 圖-1 功能層次圖三、系統(tǒng)設計借出生產時間品牌 設備設備編號設備名稱購買時間維修 員工員工編號員工姓名員工性別員工年齡借用日期序號維修日期序號借用天數
4、維修狀態(tài)nmmn 圖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_novarchar50否員工編號5st_namevarchar
5、50否員工名稱6lend_daysint4否借用天數7lend_datevarchar50否借用日期表3:remian_device可用設備表序號列名數據類型長度主外鍵允許空說明1remian_numint4主鍵否序號2de_novarchar50外鍵否設備編號3de_namevarchar50否設備名稱4de_conditionvarchar50是設備狀態(tài)表4:repair_device設備維修情況表序號列名數據類型長度主鍵允許空說明1repair_numint4主鍵否序號2st_novarchar50否維修員工編號3de_novarchar50外鍵否設備編號4destroy_datevar
6、char50否損壞日期5repair_conditionvarchar50是維修狀態(tài)表5:staff員工表序號列名數據類型長度主外鍵允許空說明1st_novarchar50主鍵否員工編號2st_namevarchar50否員工名稱3st_sexvarchar50否員工性別4st_agevarchar50是員工年齡五、系統(tǒng)測試(運行界面)設備表l 查詢l 增加l 修改l 刪除設備借出表l 查詢l 增加l 修改l 刪除六、小結經過一周的課程設計,一個簡單的企業(yè)設備管理信息系統(tǒng)設計完成了,但也正在這時我真正意識到所學知識的不足,可以說關于這方面的接觸才剛剛開始,深有感觸,無以言表。關于本系統(tǒng),雖然對
7、企業(yè)設備管理信息進行了系統(tǒng)的基本創(chuàng)建,但我們不可忽略的是這個系統(tǒng)并不完美。通過這次課程設計使我們懂得了理論與實際相結合是很重要的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能算是學以致用,從而提高自己的實際動手能力和獨立思考的能力。我們在設計中遇到了很多問題。這次課程設計中一個比較陌生的問題就是利用搭建三層架構來完成本次的實驗,但是經過老師的視頻講解,一步一步跟著做,最后還是完成了??傊?,每一次課程設計不僅是我們學習的好機會,而且是我們鍛煉實際動手能力的平臺,雖然有難度的東西總會讓人很抵觸,比如在課設過程中有很多郁悶的時候,一個小小的錯誤一不小心就花去一大段時間,所以在這個過程
8、中能夠磨練人的意志與耐心。七、程序源代碼以設備表為例Model層代碼、using System;namespace/ device:實體類(屬性說明自動提取數據庫字段的描述信息)/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/ 數據訪問類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);/ 增加一條數據/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;/ 更新一條數據/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;/ 刪除一條數據/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;/ 批量刪除數據/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;/ 得到一個對象實體/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;/ 得到一個對象實體/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;/ 獲得數據列表/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();/ 獲得前幾行數據/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();/ 獲取記錄總數/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);/ 分頁獲取數據列表/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();/*/ / 分頁獲取數據列表/ 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);/ 增加一條數據/publicbool Add(Maticsoft.Model.device model)return dal.Add(model);/ 更新一條數據/publicbool Update(Maticsoft.Model.device model)return dal.Update(model);/ 刪除一條數據/publicbool Delete(string de_no)return dal.Delete(de_no);/ 刪除一條數據/publicbool DeleteList(string de_no
32、list )return dal.DeleteList(de_nolist );/ 得到一個對象實體/public Maticsoft.Model.device GetModel(string de_no)return dal.GetModel(de_no);/ 得到一個對象實體,從緩存中/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;/ 獲得數據列表/publicDataSet GetList(string strWhere)return
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人商鋪租賃合同(含裝修補償條款)3篇
- 二零二五年度建筑塔吊租賃及勞務分包施工合同
- 2025民法典合同編修訂版修訂咨詢合同3篇
- 2025年度個人擔保業(yè)務合同模板2篇
- 二零二五年度文化旅游項目派遣員工勞動合同及文化交流協(xié)議4篇
- 養(yǎng)老院物業(yè)管理勞務合同范本(二零二五年度)3篇
- 2025年度美食城檔口租賃合同參考范本3篇
- 2025年度個人獨資企業(yè)股權轉讓合同范本與法律風險分析3篇
- 二零二五年度木工班組職業(yè)健康與安全協(xié)議合同3篇
- 2025年度農業(yè)設施搭棚種植技術服務合同3篇
- 肺炎臨床路徑
- 外科手術鋪巾順序
- 創(chuàng)新者的窘境讀書課件
- 綜合素質提升培訓全面提升個人綜合素質
- 如何克服高中生的社交恐懼癥
- 聚焦任務的學習設計作業(yè)改革新視角
- 移動商務內容運營(吳洪貴)任務三 APP的品牌建立與價值提供
- 電子競技范文10篇
- 食堂服務質量控制方案與保障措施
- VI設計輔助圖形設計(2022版)
- 眼科學??己喆痤}
評論
0/150
提交評論