




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、課題:企業設備信息管理系統設計與開發一、課程設計的目的和意義2二、需求分析2三、系統設計4四、數據庫設計5五、系統測試(運行界面)6六、小結11七、程序源代碼11一、課程設計的目的和意義目前儀器設備管理水平不是很高。大多數儀器設備管理辦法是儀器設備采購進來以后,將儀器設備的基本情況和相關信息登記存檔,然后將檔案存檔。以后檔案基本就沒人維護,如儀器設備位置變遷、檢修情況、儀器設備當前運行狀態等信息根本不會體現在儀器設備臺帳上,即儀器設備跟蹤信息不能及時體現在儀器設備檔案上。某些使用儀器設備管理系統的單位,對儀器設備的跟蹤信息即使能體現在儀器設備檔案上,但儀器設備的缺陷處理及儀器設備缺陷等功能沒有
2、實施。整個儀器設備管理信息化仍處于較低水平。本次課程設計就是為了方便儀器設備進行統計及管理工作,將管理任務分成小塊,落實到個人并能隨時查詢儀器設備當前情況和歷史情況,對儀器設備的可靠性分析有直接作用,使管理人員從手工計算、統計工作中解脫出來,提高的現代化管理水平。二、需求分析本系統功能主要設計了對設備的管理,主要完成簡單的對設備數據庫增刪查改。對于支持該系統的數據庫,建立了5張表,分別是設備表、設備借出情況表、可用設備情況表、設備維修情況表和員工表。這對每一項功能,都有必要的驅動信息和功能上的約束。以設備表為例,設備管理分為四部分:添加設備,刪除設備,瀏覽設備,查詢設備。添加設備時應該能對一些
3、有限制的信息做好正確的檢查,錄入的設備信息應包括設備編號、設備名稱、品牌、購買時間、生產時間,并且在信息輸入時應及時對信息的合法性進行檢查;刪除設備可以根據輸入設備的名稱進行刪除;查詢設備主要是對具有相關特征的設備信息進行查找;瀏覽設備是按照管理員的要求將用戶所需的數據抽取出來自動生成報表,該項功能應該能夠合理的抽取所需的信息集合,全面合理提供用戶所需的數據。本系統的功能層次圖: 設備管理系統設備管理員工管理設備借出情況設備維修情況設備基本情況 圖-1 功能層次圖三、系統設計借出生產時間品牌 設備設備編號設備名稱購買時間維修 員工員工編號員工姓名員工性別員工年齡借用日期序號維修日期序號借用天數
4、維修狀態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是設備狀態表4:repair_device設備維修情況表序號列名數據類型長度主鍵允許空說明1repair_numint4主鍵否序號2st_novarchar50否維修員工編號3de_novarchar50外鍵否設備編號4destroy_datevar
6、char50否損壞日期5repair_conditionvarchar50是維修狀態表5:staff員工表序號列名數據類型長度主外鍵允許空說明1st_novarchar50主鍵否員工編號2st_namevarchar50否員工名稱3st_sexvarchar50否員工性別4st_agevarchar50是員工年齡五、系統測試(運行界面)設備表l 查詢l 增加l 修改l 刪除設備借出表l 查詢l 增加l 修改l 刪除六、小結經過一周的課程設計,一個簡單的企業設備管理信息系統設計完成了,但也正在這時我真正意識到所學知識的不足,可以說關于這方面的接觸才剛剛開始,深有感觸,無以言表。關于本系統,雖然對
7、企業設備管理信息進行了系統的基本創建,但我們不可忽略的是這個系統并不完美。通過這次課程設計使我們懂得了理論與實際相結合是很重要的,只有把所學的理論知識與實踐相結合起來,從理論中得出結論,才能算是學以致用,從而提高自己的實際動手能力和獨立思考的能力。我們在設計中遇到了很多問題。這次課程設計中一個比較陌生的問題就是利用搭建三層架構來完成本次的實驗,但是經過老師的視頻講解,一步一步跟著做,最后還是完成了。總之,每一次課程設計不僅是我們學習的好機會,而且是我們鍛煉實際動手能力的平臺,雖然有難度的東西總會讓人很抵觸,比如在課設過程中有很多郁悶的時候,一個小小的錯誤一不小心就花去一大段時間,所以在這個過程
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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 職場素養與職業道德試題及答案
- 2025年自考行政管理深入題目及答案
- 主管護師考試技巧與試題及答案
- 臨床藥學在病案分析中的應用試題及答案
- 2025年衛生資格考試各類資源試題及答案
- 行政管理實踐案例分析試題及答案
- 深入淺出的衛生資格考試試題及答案
- 新疆昌吉州第二中學高一上學期期末考試歷史試卷
- 自考行政管理全覆蓋的試題與答案輸出
- 導醫工作內容培訓
- 邊坡勘察報告
- 國家級高技能人才培訓基地建設項目申請書
- 地產項目質量問題整改通知單
- 高校在完善國防動員機制中的作用與實現路徑
- DB31∕696-2020 蒸壓加氣混凝土砌塊(板)單位產品綜合能源消耗限額
- 聚酯合成的酯化與縮聚課件
- 認識分式 課件
- 發還清單(公安機關刑事法律文書式樣(2012版))
- EHS監測測量控制程序
- 應急預案演練記錄表范例
- 安裝施工安全保障措施
評論
0/150
提交評論