




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
本科論文目錄摘要 [25]。1.8本章小結本章主要介紹了本系統(tǒng)開發(fā)所使用的開發(fā)技術,從前臺技術到底層后端應用再到數據庫層面所使用的各個技術,包括J2EE技術、SSH框架、Jquery技術、CSS技術、XML技術、Ajax技術以及MySQL數據庫技術,都有詳細描述。
2系統(tǒng)分析2.1概要分析可以將本系統(tǒng)分為員工信息管理,供應商信息管理,設備信息管理,庫存信息管理,庫房信息管理,系統(tǒng)信息管理這六大模塊。詳細描述如圖2-1。設備管理系統(tǒng)設備管理系統(tǒng)系統(tǒng)管理庫房管理庫存管理設備管理員工管理供應商管理系統(tǒng)管理庫房管理庫存管理設備管理員工管理供應商管理權限信息的增刪改查登錄信息的刪改查打印庫存報警修改庫存查詢出庫單查詢出庫單填寫入庫單查詢入庫單填寫設備信息的增刪改查供應商的增刪改查職位信息的增刪改查部門信息的增刪改查員工登錄權限分配員工信息的增刪改查權限信息的增刪改查登錄信息的刪改查打印庫存報警修改庫存查詢出庫單查詢出庫單填寫入庫單查詢入庫單填寫設備信息的增刪改查供應商的增刪改查職位信息的增刪改查部門信息的增刪改查員工登錄權限分配員工信息的增刪改查診室信息的增刪改查庫房信息的增刪改查科室信息的增刪改查診室信息的增刪改查庫房信息的增刪改查科室信息的增刪改查圖2-1設備管理系統(tǒng)的功能模塊圖2.2功能需求分析本系統(tǒng)任務包括有效管理各個庫房中設備的流通,如入庫管理、出庫管理、庫存管理等等??梢詫齑婀芾碜龈蛹氈碌姆治?,并從中發(fā)現更多的細節(jié)特征:庫房流通涉及設備的入庫,出庫兩種管理方式。庫存管理涉及設備的數量變更和對庫存的查詢、匯總等。各個模塊均需要檢索功能。設備需要進行合理的分類。設備應該有提供者,所以要考慮供應商數據的登記。物品入庫,涉及到設備的存放位置,考慮是否需要動態(tài)選擇庫房。庫存管理中,無論入庫還是出庫,系統(tǒng)都需要記錄執(zhí)行人信息。系統(tǒng)需要提供給用戶一個唯一的用戶賬號,該賬號對用戶在系統(tǒng)中進行相關操作是必不可少的。需要設置一位系統(tǒng)管理員,具有該系統(tǒng)的全部功能,而其他庫管的權限均由系統(tǒng)管理員進行授予。庫管需要有對應的崗位和部門來安置。庫存警告和報警,當庫存量達到規(guī)定的最低數額時,系統(tǒng)自動報警。2.3功能初步設計用戶登錄:功能用途:用戶通過輸入用戶賬號、密碼、驗證碼和職位進行系統(tǒng)登錄。操作權限歸屬:如果想進入系統(tǒng),就必須要有權限。輸入數據:與系統(tǒng)相關的數據輸入?;静僮鳎焊卿浻嘘P聯的行為。所在位置:當前的界面。其他說明:系統(tǒng)登錄功能就是用來判斷該人員是否進行過角色授權,授權過的角色才使用使用系統(tǒng)來完成想要進行的操作,也是為了防止惡意的偷取數據。員工管理:功能用途:對員工的相關信息進行管理。操作權限歸屬:需要使用系統(tǒng)的人員。主要數據:員工是客觀世界存在的實體,實體的屬性就是這個主要的數據?;静僮鳎禾砑訂T工信息,刪除員工,修改員工,條件查詢,登錄權限授權。所在位置:員工管理。其他說明:員工編號是系統(tǒng)識別員工身份信息的依據,同時也是用戶登錄系統(tǒng)時的賬號,也是庫管進行庫存處理時需要輸入的經手人編號。所以,員工編號是自動形成的,無法修改。客戶管理:功能用途:對相關信息進行管理。操作權限歸屬:需要使用系統(tǒng)的人員,系統(tǒng)管理員。主要數據:供應商是客觀世界存在的實體,供應商的屬性就是這個主要的數據?;静僮鳎汗痰奶砑印h除、修改和查詢。所在位置:客戶管理。其他說明:每一種設備都有其制造商,庫房中的設備在添加時都要填寫該項。設備管理:功能用途:錄入設備的基本信息。操作權限歸屬:需要使用系統(tǒng)的人員,系統(tǒng)管理員。主要數據:設備編號,設備名稱,設備類別,供應商,產地,檢查類別,有效期,型號,備注。基本操作:添加設備,刪除設備,修改設備,條件查詢。所在位置:設備管理。其他說明:每一種設備信息在添加時都要使用觸發(fā)器同步更新到庫存信息表中,初始數量為0,在修改設備基本信息時,一些必要數據也要同步更改。庫存管理:功能用途:填寫入庫單,填寫出庫單,庫存查詢,并且?guī)齑孢_到報警線時能夠對用戶進行提醒。操作權限歸屬:需要使用系統(tǒng)的人員,系統(tǒng)管理員。主要數據:設備信息,余量,上下限報警?;静僮鳎簵l件查詢。所在位置:庫存管理。其他說明:根據入出庫數量更新庫存數量,上下限報警線為手動設置。庫房管理:功能用途:錄入庫房信息。操作權限歸屬:系統(tǒng)管理員。主要數據:庫房編號,庫房名稱。基本操作:添加庫房,修改庫房,刪除庫房,條件查詢。所在位置:庫房管理。其他說明:庫房管理是設備存放的位置。系統(tǒng)管理:功能用途:對可以登錄的人員以及權限進行管理。操作權限歸屬:系統(tǒng)的管理員。主要數據:員工的相關信息?;静僮鳎簷嘞薜奶砑印⑿薷?、刪除和查詢。所在位置:系統(tǒng)管理。其他說明:系統(tǒng)管理是對使用者的先關信息進行基本的數據操作。2.4本章小結本章闡述了本項目的功能需求及項目的細節(jié)特征,不同的人員權限操作不同的功能,引出開發(fā)本項目的基本思路,為第三章對本項目的具體設計打下了基礎。
3系統(tǒng)總體設計3.1數據庫設計本系統(tǒng)中各個實體關系如圖3-1所示。圖3-1系統(tǒng)E-R圖departmentinfotable(部門表)的設計是完成部門信息的存儲。其結構如表3-1所示。表3-1部門信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增depIdvarchar(20)否否NULL部門編號depNamevarchar(20)否否NULL部門名稱employeeinfotable(員工表)的設計是完成員工的信息的存儲。其結構如表3-2所示。表3-2員工信息表字段名數據類型是否為空是否主鍵默認值說明idint(8)否是NULL自增empIdvarchar(20)否否NULL員工編號表3-2員工信息表-續(xù)表字段名數據類型是否為空是否主鍵默認值說明empNamevarchar(20)否否NULL姓名empSexvarchar(4)否否NULL性別empAgeint(3)否否NULL年齡empIdentCardvarchar(20)否否NULL身份證號empBirthDatevarchar(20)否否NULL出生日期empDiplomavarchar(20)否否NULL學歷empJoinDatevarchar(20)否否NULL入職時間empAddressvarchar(50)否否NULL地址empPhonevarchar(20)否否NULL電話depIdvarchar(20)否否NULL部門編號jobIdvarchar(20)否否NULL職位編號goodsinfotable(設備信息表)的設計是完成設備的信息的存儲。其結構如表3-3所示。表3-3設備信息表字段名數據類型是否為空是否主鍵默認值說明idint(8)否是NULL自增gIdvarchar(20)否否NULL設備編號gNamevarchar(20)否否NULL設備名稱gABCvarchar(20)否否NULL設備類別supIdvarchar(20)否否NULL供應商編號gAddressvarchar(20)否否NULL地址gUnitvarchar(6)否否NULL檢查類別gUsefulDatevarchar(20)否否NULL有效期gTypeIdvarchar(20)否否NULL型號gPicturevarchar(20)否否NULL備注goodslocationtable(庫房信息表)的設計是完成庫房的信息的存儲。其結構如表3-4所示。表3-4庫房信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增locatIdvarchar(20)否否NULL部門編號locatNamevarchar(20)否否NULL部門名稱goodsrowstable(科室信息表)的設計是完成科室的信息的存儲。其結構如表3-5所示。表3-5科室信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增rowIdvarchar(20)否否NULL科室編號rowNamevarchar(20)否否NULL科室名稱locatIdvarchar(20)否否NULL部門編號goodsseatstable(診室信息表)的設計是完成診室的信息的存儲。其結構如表3-6所示。表3-6診室信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增seatIdvarchar(20)否否NULL診室編號seatNamevarchar(20)否否NULL診室名稱locatIdvarchar(20)否否NULL部門編號rowIdvarchar(20)否否NULL科室編號jobsinfotable(職位表)的設計是完成職位表的信息的存儲。其結構如表3-7所示。表3-7職位信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增jobIdvarchar(20)否否NULL職位編號jobNamevarchar(20)否否NULL職位名稱depIdvarchar(20)否否NULL部門編號describeJobvarchar(20)否否NULL職位名稱logintable(登錄表)是存儲登錄表信息的。其表結構如表3-8所示。表3-8登錄信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增depIdvarchar(20)否否NULL員工編號depNamevarchar(20)否否NULL姓名loginPassvarchar(20)否否NULL密碼powIdvarchar(20)否否NULL權限編號powerinfotable(權限表)的設計是完成權限表的信息的存儲。其表結構如表3-9所示。表3-9權限信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增powIdvarchar(20)否否NULL權限編號powNamevarchar(20)否否NULL權限名稱stockinfotable(庫存表)的設計是完成庫存表的信息的存儲。其表結構如表3-10所示。表3-10庫存信息表字段名數據類型是否為空是否主鍵默認值說明idint(8)否是NULL自增stoIdvarchar(20)否否NULL設備編號stoNamevarchar(20)否否NULL設備名稱stoTypeIdvarchar(20)否否NULL設備類別stoUnitvarchar(6)否否NULL檢查類別stoNumberint(8)否否NULL數量stoUpWarnint(8)否否NULL上限提醒stoDownWarnint(8)否否NULL下限提醒stoUpDangerint(8)否否NULL上限報警stoDownDangerint(8)否否NULL下限報警stockininfotable(入庫表)的設計是完成入庫表的信息的存儲。其表結構如表3-11所示。表3-11入庫信息表字段名數據類型是否為空是否主鍵默認值說明idint(16)否是NULL自增sInIdvarchar(20)否否NULL入庫單號sInDatevarchar(20)否否NULL日期sInChargeIdvarchar(20)否否NULL負責人sInGoodsIdvarchar(20)否否NULL設備編號sInNumberint(8)否否NULL數量sInTypeIdvarchar(20)否否NULL型號sInABCvarchar(20)否否NULL類別表3-11入庫信息表-續(xù)表字段名數據類型是否為空是否主鍵默認值說明sInUnitvarchar(6)否否NULL單位sInPlacevarchar(20)否否NULL位置sInRemarkvarchar(100)否否NULL備注stockoutinfotable(出庫表)的設計是完成出庫表的信息的存儲。其表結構如表3-12所示。表3-12出庫信息表字段名數據類型是否為空是否主鍵默認值說明idint(16)否是NULL自增sOutIdvarchar(20)否否NULL出庫單號sOutDatevarchar(20)否否NULL日期sOutCharIdvarchar(20)否否NULL負責人sOutGoodsIdvarchar(20)否否NULL設備編號sOutNumberint(8)否否NULL數量sOutTypeIdvarchar(20)否否NULL型號sOutABCvarchar(20)否否NULL類別sOutUnitvarchar(6)否否NULL單位sOutReceiveIdvarchar(20)否否NULL接收人sOutProgramIdvarchar(20)否否NULL生產編號sOutRemarkvarchar(100)否否NULL備注supplytable(供應商信息表)的設計是完成供應商信息表的信息的存儲。其表結構如表3-13所示。表3-13供應商信息表字段名數據類型是否為空是否主鍵默認值說明idint(4)否是NULL自增supIdvarchar(20)否否NULL供應商編號supNamevarchar(20)否否NULL供應商名稱supChargevarchar(20)否否NULL負責人supAddressvarchar(20)否否NULL地址supPhonevarchar(20)否否NULL電話supFaxvarchar(20)否否NULL傳真supEmailvarchar(20)否否NULL郵箱supHttpvarchar(20)否否NULL網址3.2系統(tǒng)功能詳細設計對系統(tǒng)整體的需求分析已經基本完成,接下來就需要進行具體的編碼設計。流程的設計如下圖3-2所示。圖3-2庫存系統(tǒng)流程圖普通員工只有被庫房管理員進行登陸權限授權才有資格登錄,對于所有模塊的權限僅有查詢功能,無其他操作權限。二級庫管理員的權限則可以對客戶,設備,庫存,庫房,入庫,出庫模塊進行管理。系統(tǒng)的管理員能夠對相同進行全面的管理,系統(tǒng)管理員的權限是最高的,設計的范圍也是最多的。3.2.1登錄模塊的詳細設計登錄模塊的流程圖如下圖3-3所示。圖3-3登錄模塊的流程圖想要進入系統(tǒng)就必須進行賬號密碼的驗證,同時還需要進行驗證碼的校驗,其中驗證碼功能部分的代碼儲存在MakeCertPic.java文件內,每次加載時驗證碼是隨機生成的,是通過Graphic畫布把該驗證碼生成出來,然后在前端makeCertPic.jsp頁面獲取該圖片,并將該圖片的值保存在session中,讓后臺能夠正常獲取到,前臺頁面便可通過用戶輸入的驗證碼的值與后臺進行校對,從而完成驗證碼驗證。當用于進行個人信息輸入完成之后,系統(tǒng)就會進行post方法將當前數據進行異步刷新,判斷當前輸入信息是真實有效的,且存在。如果判斷成功則通過,如果失敗則彈出提示信息。3.2.2用戶模塊的詳細設計用戶模塊的流程圖如下圖3-4所示。圖3-4用戶添加流程圖員工信息查看頁面,用戶可以通過選擇查看方式,選擇查看的條件,然后根據查看條件和輸入的信息進行模糊查詢,并顯示所有查到的信息,如果輸入為空,則查找全部,其中用戶可以在每一條查到的數據后面點編輯或刪除,進一步對選中的信息進行操作。對員工信息的批量刪除模塊則是通過JS獲取到所有已選中的用戶信息,并將數據傳輸到后臺,由后臺執(zhí)行批量刪除工作。其中涉及數據傳輸的格式問題,通過巧妙利用字符串,適當拆分和合并,進而起到對應的效果。3.2.3客戶模塊的詳細設計供應商的添加功能與用戶模塊基本相同,流程圖如圖3-5所示。供應商信息的查詢也是通過按條件查詢,如果沒有輸入查詢條件那么就是默認對全部進行搜索,后臺根據查詢條件檢索出相關信息,前端頁面以EL表達式的形式將結果體現出來。供應商的批量刪除功能與員工模塊相同,頁面需要根據所選中的數據取出相應的數據id,通過后臺對該id或者是更多的字符串進行分析,進而深入的進行刪除操作。只要管理員能夠完成該操作。圖3-5供應商添加流程圖3.2.4設備模塊的詳細設計設備的添加功能模塊,流程圖如下圖3-6所示。圖3-6設備添加流程圖設備模塊的添加操作是由以下流程具體的完成。首先要通過JS的加載從后臺獲取到數據庫有關供應商的數據,并在前段頁面進行展示,用戶就可以通過該展示對想要進行操作的供應商進行操作,省去了用戶手動填寫供應商的過程,節(jié)約了操作時間。設備編號也是需要驗證的,該驗證過程與之前的設備編號驗證過程是相似的。完成所有必要信息的輸入之后進行保存操作。3.2.5庫存模塊的詳細設計庫存的模塊設計對于這個項目來說是很重要的,入庫的詳細流程如下圖3-7所示。在進入入庫界面的時候,JS模塊就開始經由AJAX開始于后臺進行交互,并將數據進行異步刷新。輸入設備編號時,系統(tǒng)可以通過設備id從而將設備的其他基本信息自動帶出來,省去了用戶手動填寫的時間。如果必要的輸入數據都已經輸入完成,則點擊保存的按鈕就可以將當前的輸入數據保存到后端的數據庫對應的數據表中,進而入庫數據更新成功。圖3-7入庫模塊設計流程圖出庫的流程圖詳細的流程如下圖3-8所示。圖3-8出庫模塊設計流程圖當進入到出庫單界面的時候,當前頁面經由JS模塊對后臺對應的數據進行了準確的模糊查詢操作,并將現有的出單進行編號。完成這些操作后即可保存出庫單。上述流程都結束以后,要對系統(tǒng)的庫存余量進行更新,如果發(fā)現余量不足時,系統(tǒng)右上角能夠進行提醒及警告,通過點擊右上角下拉框即可看到是哪個設備余量不足,點擊設備即可進入到修改上下限提醒及警告的頁面。3.3項目搭建打開MyEclipse新建WebProject命名為WMS系統(tǒng)包目錄結構如下圖3-9所示。圖3-9項目結構圖3.4本章小結本章列舉出了開發(fā)本項目的概念設計,總體設計,數據庫中表以及表內各個字段的設計,每個模塊的業(yè)務流程及所需要的功能,本項目根據本章設計內容開發(fā)本系統(tǒng)。
4系統(tǒng)實現4.1用戶環(huán)境服務器硬件方面CPU要求i5以上;內存要求不小于512MB;硬盤要求不小于40G;服務器端軟件方面操作系統(tǒng)Windows10;數據庫服務器要求使用MySQLWorkbench6.0;Web服務器要求使用Firefox57.0或以上;客戶端軟件方面操作要求Windows7、Windows8或Windows10;瀏覽器要求Firefox57.0或以上;開發(fā)工具要求使用MyEclipse。4.2其他要求對于訪問容量的要求包括系統(tǒng)要求支持的最大并發(fā)用戶數為20;關于響應時間方面的要求包括復雜功能時間小于400毫秒,另外簡單功能的響應時間小于200毫秒。4.3用戶登錄功能用戶進入系統(tǒng)界面的時候,需要將個人的信息進行輸入,主要是賬號和密碼,同時結合驗證碼模塊,該模塊的存在主要是為了爬蟲的不斷的騷擾,增加系統(tǒng)的安全性。用戶也要正確選擇自己的角色,該處系統(tǒng)也需要進行校驗,角色選錯用戶也無法進行登錄。用戶登錄界面如下圖4-1所示。圖4-1用戶登錄界面系統(tǒng)的整體開發(fā)對于每個用戶進入系統(tǒng)看到的操作內容都是不一樣的。這不僅僅是功能模塊劃分的具體體現,也是對用戶進行權限管理的形象的表達。系統(tǒng)主界面如下圖4-2所示。圖4-2系統(tǒng)主界面4.4員工管理功能模塊包括有員工的添加、查詢功能;部門的添加、查詢功能;職位的添加、查詢等6個功能,添加員工如圖4-3所示。圖4-3添加員工界面員工信息查看如圖4-4所示。圖4-4員工信息查看界面在員工信息查看界面,可以通過點擊添加登錄權限按鈕快捷注冊賬戶,授權后的員工便可以通過自己的員工賬號登錄本系統(tǒng),初始密碼為123456,權限為醫(yī)療人員。添加部門如圖4-5所示。圖4-5添加部門界面部門信息查看如圖4-6所示。圖4-6部門信息查看界面添加職位如圖4-7所示。圖4-7添加職位界面職位信息查看如圖4-8所示。圖4-8職位信息查看界面4.5客戶管理功能本模塊供應商的添加和查詢兩個功能,添加供應商如圖4-9所示。圖4-9添加供應商界面供應商信息查看如圖4-10所示。圖4-10供應商信息查看4.6設備管理功能本模塊有設備的添加和查詢兩個功能,添加設備如下圖4-11所示。圖4-11添加設備界面設備信息查看如圖4-12所示。圖4-12設備信息查看界面4.7庫存管理功能庫存查詢如下圖4-13所示。圖4-13庫存查詢界面該模塊是該系統(tǒng)的必要模塊,十分重要,此處對該模塊數據的有效性和數據的展示是否有效進行了測試,并測試頁面的輸入數據的合理性,即測試該系統(tǒng)的表單驗證功能。設備想要入庫就必須先完成入庫單的填寫,通過相關的流程之后才能夠完成入庫操作,入庫單的測試也是必須要重視的一個環(huán)節(jié),入庫單的填寫如圖4-14所示。圖4-14填寫入庫單入庫單的數據是需要用戶準確的填寫的,用戶完成數據的填寫之后,入庫單就會由系統(tǒng)自動的生成,設備的基本信息也是不需要手寫添加的,按照對應的編號查詢即可。當完成入庫操作的時候,后臺就對當前的庫存量進行更新操作,保證后臺設備存儲量的準確性。為保證系統(tǒng)數據的安全性,普通用戶是沒有辦法對入庫單進行基本數據操作的,這樣很大程度保證了數據的安全性。入庫單查詢如圖4-15所示。圖4-15入庫單查詢界面出庫部分的實現在主要邏輯上跟入庫部分的實現是大有相似之處,出庫對數據進行減法操作,而入庫是進行加法操作。而完成這些數據操作以后都需要對庫存量進行更新,保證數據量的準確性,該環(huán)節(jié)是必不可少的。填寫出庫單4-16所示。圖4-16填寫出庫單界面出庫單查詢如圖4-17所示。圖4-17出庫單查詢界面用戶進入庫存的警示信息修改頁面如圖4-18所示。圖4-18警告信息修改界面4.8庫房管理功能本模塊包括部門管理,科室管理,診室管理,添加部門如圖4-19所示。圖4-19添加設備部門界面設備部門信息查看如圖4-20所示。圖4-20設備部門信息查看界面添加科室界面如圖4-21所示。圖4-21添加科室界面科室信息查看查看如圖4-22所示。圖4-22科室信息查看界面添加診室信息如圖4-23所示。圖4-23添加診室界面診室信息查看如圖4-24所示。圖4-24診室信息查看界面4.9系統(tǒng)管理功能本模塊包括登陸用戶信息查看以及權限信息查看兩個功能。用來查看哪些人員擁有登陸權限。用戶信息查看如圖4-25所示。圖4-25用戶信息查看界面權限信息查看如圖4-26所示。圖4-26權限信息查看界面4.10本章小結本章講述了本系統(tǒng)開發(fā)硬件及軟件的環(huán)境,每個模塊功能的介紹以及操作方式,每個模塊的具體實現,其中的實現結果通過截圖的方式展現出來。
5系統(tǒng)測試為保證測試的準確性,本章將抽取最具代表性的模塊進行抽樣測試。5.1用戶登錄測試對于登陸測試需要分為用戶名、密碼、驗證碼、權限四個部分。測試用例如表5.1所示。表5.1登錄測試用例編號操作輸入數據預期結果實際結果5.1-1輸入正確的用戶名、密碼以及驗證碼,選擇正確的權限后,進行登錄用戶名:Z001密碼:123456驗證碼:輸入正確的驗證碼權限:總庫登錄成功成功進入到系統(tǒng)主頁面5.1-2輸入正確的用戶名、驗證碼和錯誤的密碼,選擇正確的權限后,進行登錄用戶名:Z001密碼:000000驗證碼:輸入正確的驗證碼權限:總庫登錄失敗系統(tǒng)提示:密碼錯誤5.1-3輸入正確的用戶名、密碼和錯誤的驗證碼,選擇正確的權限后,進行登錄用戶名:Z001密碼:123456驗證碼:輸入錯誤的驗證碼權限:總庫登錄失敗系統(tǒng)提示:驗證碼錯誤5.1-4輸入正確的用戶名、密碼以及驗證碼,選擇錯誤的權限后,進行登錄用戶名:Z001密碼:123456驗證碼:輸入正確的驗證碼權限:二級庫登錄失敗系統(tǒng)提示:用戶不存在5.1-5輸入錯誤的用戶名以及正確的密碼、驗證碼,選擇正確的權限后,進行登錄用戶名:admin密碼:123456驗證碼:輸入正確的驗證碼權限:總庫登錄失敗系統(tǒng)提示:用戶不存在由該表可知系統(tǒng)登錄功能正常,用戶只有通過輸入與數據庫相匹配的用戶信息才可以進行登錄,否則系統(tǒng)將根據錯誤信息進行不同的登陸報錯,登錄失敗。5.2員工管理測試員工管理模塊測試用例如表5.2所示。表5.2員工管理測試用例編號操作輸入數據預期結果實際結果5.2-1查看是否顯示信息無顯示成功顯示數據成功5.2-2與數據庫數據相匹配無匹配成功數據顯示一致5.2-3輸入正確的添加信息,進行添加員工操作部門編號:門診部職位編號:庫管員工編號:自動生成姓名:張三豐性別:男年齡:22出生日期:1999-09-09身份證號歷:本科入職時間:2020-09-09居住地址:沈陽電話號碼加成功顯示出張三豐的信息5.2-4輸入正確的添加信息,卻有未填字段,進行添加員工操作部門編號:門診部職位編號:庫管員工編號:自動生成姓名:張三豐性別:男年齡:22出生日期:1999-09-09身份證號歷:本科入職時間:2020-09-09居住地址:沈陽電話號碼:添加失敗提示:不能為空5.2-5輸入錯誤的信息格式,進行添加操作部門編號:門診部職位編號:庫管員工編號:自動生成姓名:張三豐性別:男年齡:22出生日期:1999-09-09身份證號歷:本科入職時間:2020-09-09居住地址:沈陽電話號碼:00000000000添加失敗提示:格式錯誤5.2-6對員工執(zhí)行修改操作電話號碼改成功成功修改張三豐的信息
員工管理模塊的測試計劃是用戶進入員工管理界面后,在查詢界面能否顯示與數據庫中相對應的信息,在搜索欄中填入查詢信息,看是否能夠檢索出對應信息。點擊修改,看能否成功修改員工信息并錄入到數據庫。在添加員工界面輸入正確的信息,提示添加成功后,看是否錄入數據庫,同時查看前端界面是否正確顯示。輸入錯誤的信息看是否能夠正確提示,添加時有未填入信息看是否正常提示。測試結果是員工管理功能能正常使用,正確填寫員工基本信息即可將員工信息錄入本系統(tǒng),輸入錯誤的信息,系統(tǒng)也能夠正確提示報錯,通過檢索條件也可以對員工進行檢索。其他模塊功能與本模塊情況相近,不一一列舉。5.3庫存管理測試庫存管理模塊的測試計劃是用戶進入庫存管理界面后,在填寫入庫單界面,能夠正確的將設備管理中錄入的設備成功入庫到本系統(tǒng)中,庫存中增加正確的數量,填寫出庫單后能夠減少正確的數量,庫存不足時,出庫單能夠正常提示庫存不足。填寫入出庫單時,信息錯誤或者有漏填的信息能夠正常進行報錯。填寫好設備編號后能否正確帶出設備基本信息。通過填寫檢索條件能夠正確檢索出庫存信息,入庫單信息以及出庫單信息。設置庫存上下限,系統(tǒng)能否正確報警,點擊報警信息能否正確跳轉到修改對應設備庫存上下限的界面。庫存管理模塊測試用例如表5.3所示。表5.3庫存功能測試用例編號操作輸入數據預期結果實際結果5.3-1查看是否正確顯示庫存信息、入庫單信息、出庫單信息無顯示成功顯示數據成功5.3-2與數據庫數據相匹配無匹配成功數據顯示一致5.3-3輸入正確的入庫單信息,進行入庫操作單號:自動生成日期:2020-05-17負責人:001030000設備編號:SB001數量:5存放區(qū)域:沈陽_門診部,門診部,診室1入庫成功眼壓儀入庫診室1,數量5個表5.3庫存功能測試-續(xù)表用例編號操作輸入數據預期結果實際結果5.4-3輸入錯誤的入庫單信息,進行入庫操作單號:自動生成日期:2020-05-17負責人:001030000設備編號:99999數量:5存放區(qū)域:沈陽_門診部,門診部,診室1入庫失敗提示:不存在此設備5.4-1輸入正確的出庫單信息,進行出庫操作單號:自動生成日期:2020-05-17負責人:001030000設備編號:SB001數量:2接收人:001030000生產項目編號:1出庫成功眼壓儀成功出庫,數量2個,庫存正確減少5.4-2輸入正確的出庫單信息,進行出庫操作單號:自動生成日期:2020-05-17負責人:001030000設備編號:SB001數量:6接收人:001030000生產項目編號:1出庫失敗提示:庫存不足5.5-1對庫存上下限進行修改操作下限提醒:6提示庫存量提醒成功顯示:提醒如下,眼壓儀,點擊后正常跳轉到庫存界面5.5-2對庫存上下限進行修改操作下限報警:8修改失敗提示:不能超過警告下限測試結果為庫存管理功能正常,正確填寫入庫單信息便可將設備錄入到庫存中,正確填寫出庫單信息便可將設備出庫,通過修改上下限提醒或報警,系統(tǒng)可正確顯示提醒或報警信息。5.4本章小結本章對系統(tǒng)中的幾個主要功能進行測試,為保證測試的準確性,在每個階段中抽取最具代表性的模塊進行隨機抽樣測試,選取登錄模塊,員工模塊,庫存模塊進行測試。
結論項目的實現是以Java語言為開發(fā)語言,結合SSH框架的高效性,完成了醫(yī)療器械設備采購系統(tǒng)的設計與實現,并且著重對庫存管理系統(tǒng)的管理體制進行研究。項目采用的核心結構方式為B/S,根據項目的具體運行需要,進行了需求設計分析,需求說明,編碼設計,編碼實現,項目測試等幾個核心環(huán)節(jié)。項目用MySql對后臺的數據進行存儲,主要是因為該數據庫具有很好的適應能力,并且十分符合Web數據存儲的要求。項目的完成知識對該案例的針對性實現,如果想要適合所有醫(yī)院的業(yè)務需求,則需要對客戶進行具體的分析,結構進行具體針對性的調整。因此,目前系統(tǒng)具有局限性,后期應該不斷的優(yōu)化。
致謝本畢業(yè)設計是在指導老師高麗及聶菲的悉心指導下完成的。在整個畢業(yè)設計過程中,不論在選題、設計還是在撰寫論文過程中,老師均給予了我莫大的指導和幫助。在畢業(yè)設計過程中,老師耐心地給我分析了庫存管理系統(tǒng)開發(fā)的思路,使我一開始就能夠很好地把握設計的方向,從自己平時的項目實訓中選出了最適合該系統(tǒng)的開發(fā)方式,并且老師又很負責的給了我很多的改進意見,幫助我解決設計遇到的困難,積累了很多經驗,并完成了預期的任務。在此,特向指導老師表示我衷心的感謝和深切的謝意。在此期間,我還得到了很多同學的幫助,在此一并向他們表示感謝。感謝母校多年來對我的培養(yǎng),感謝所有關心和幫助我的老師和同學們!
參考文獻陳善偉.基于二維碼技術的醫(yī)院耗材全閉環(huán)管理系統(tǒng)的設計與應用[J].電子技術與軟件工程,2017(22):185-186朱家琦,朱家沐,馬明芳,王凱,鄧開琴.醫(yī)院醫(yī)用耗材精細化閉環(huán)管理系統(tǒng)的設計與應用[J].中國醫(yī)學裝備,2017,14(08):119-122石玉芳.條形碼技術在手術室高值耗材管理系統(tǒng)的應用[J].中國醫(yī)療器械信息,2017,23(10):122-123唐澤君,鄢良平.“十二五”期間醫(yī)療耗材的管理探討[J].醫(yī)療衛(wèi)生裝備,2013,34(02):120-121+125鄭志剛,董亞洲.基于j2ee平臺系統(tǒng)開發(fā)綜述[J].無線互聯科技,2014(10):69-70莊巧蕙.基于J2EE的電子商務平臺的研究與構建[J].大慶師范學院學報,2018,38(06):59-63MatejZuz?ák,MilanZenka.ExpertsystemassessingthreatlevelofattacksonahybridSSHhoneynet[J].Computers&Security,2020,92張亞梅,馬嘯.基于SSH框架的網站設計與實現[J].電腦編程技巧與維護,2012(10):62-63+106孫紅艷.基于SSH框架的班級事物管理系統(tǒng)設計與實現[J].電腦編程技巧與維護,2019(12):135-136+139盧肖霞.SSH框架在Web項目開發(fā)中的設計與實現[J].計算機測量與控制,2018,26(10):122-127潘蕊.SSH框架的Web網站設計與實現研究[J].成才之路,2019(36):58-59梅元昭.基于Jquery課程網站的設計[J].無線互聯科技,2019,16(10):39-41李彥.DIV+CSS技術在網頁設計布局中的應用研究[J].微型電腦應用,2020,36(03):19-21+30秦秋瀅.基于CSS技術的網頁設計應用研究[J].電子世界,2020(06):194-195郭毓東.基于XML技術的供應鏈知識管理系統(tǒng)的知識抽取[J].物流技術,2012,31(13):287-289李紅飛,姜海森.基于XML技術的結構化文檔編輯器研究[J].軟件,2014,35(05):114-118李品升,周傳生.基于XML通用軟件可擴展平臺模型的研究與應用[J].沈陽師范大學學報(自然科學版),2011,29(01):69-72佟玲,周傳生.基于XML的任務流編輯器的設計與實現[J].沈陽師范大學學報(自然科學版),2015,33(04):546-550郝潔.ASP.NETAJAX框架在Web開發(fā)中的應用[J].電子技術與軟件工程,2017(17):55ATechnicalMethodofOnlineSpatialAttributeDataManagementBasedonWebFontEnd[J].ComputerScienceandApplication.2016:30-35李志偉.基于AJAX的網頁信息交互技術要點及優(yōu)勢[J].產業(yè)與科技論壇,2016,15(09):86黃寧.基于MySQL數據庫安全研究[J].科學中國人,2017(2X):16-17FrankM.Kromann.UsingMySQLDatabases[J].PHPandMySQLRecipes.2016:333-356陳年飛,王麒森,王志勃.MySQL數據庫中關于索引的研究[J].信息與電腦(理論版),2019(05):175-176RashmiParab;NilimaNikam.DatabaseSecurityTechniqueWithDatabaseCache[J].InternationalJournalofScientific&TechnologyResearch.2017,Vol.6(No.12):184-187
附錄源程序清單由于本系統(tǒng)全部代碼過多,所以本章只附核心模塊代碼。庫存模塊:publicclassStockActionextendsActionSupport{ /** * */ privatestaticfinallongserialVersionUID=-6139229070608157488L; privateStockinfotablestock; privateBaseService<Stockinfotable>stockService; privateList<Stockinfotable>stoList; privateList<Stockinfotable>stocks=newArrayList<Stockinfotable>(); privateStringstoText,stoValue; privatePagerpager=newPager(); /** *根據條件查詢 *@param *@returnString */ publicStringqueryStock(){ stoText=getParam("sName"); stoValue=getParam("sValue"); stoList=stockService.queryStock(stoText,stoValue,Stockinfotable.class); if(stocks!=null) stocks.removeAll(stocks); if(pager.getTotalSize()==0) pager.setTotalSize(stoList.size()); if(pager.getPageNow()<pager.getTotalPage()-1||pager.getTotalSize()%pager.getPageSize()==0){ for(inti=pager.getPageNow()*pager.getPageSize();i<(pager.getPageNow()+1)*pager.getPageSize();i++){ stocks.add(stoList.get(i)); } } else{ for(inti=pager.getPageNow()*pager.getPageSize();i<pager.getPageNow()*pager.getPageSize()+pager.getTotalSize()%pager.getPageSize();i++){ stocks.add(stoList.get(i)); } } Logintablelt=(Logintable)ActionContext.getContext().getSession().get("loginuser"); intm=0; if("2".equals(lt.getPowId())){ m=1; }else{ m=0; } returnSUCCESS+"Stock"+m; } /** *分頁模塊 *@return */ publicStringturnFirst(){ IntegertSize=Integer.parseInt(getParam("tSize")); pager.setTotalSize(tSize); pager.setPageNow(0); returnqueryStock(); } publicStringturnPre(){ IntegertSize=Integer.parseInt(getParam("tSize")); Integerpg=Integer.parseInt(getParam("pNow")); pg=pg-1; pager.setPageNow(pg); pager.setTotalSize(tSize); returnqueryStock(); } publicStringturnNext(){ Integerpg=Integer.parseInt(getParam("pNow")); IntegertSize=Integer.parseInt(getParam("tSize")); pg=pg+1; pager.setPageNow(pg); pager.setTotalSize(tSize); returnqueryStock(); } publicStringturnLast(){ IntegertSize=Integer.parseInt(getParam("tSize")); Integerpg=Integer.parseInt(getParam("pNow")); pager.setTotalSize(tSize); pager.setPageNow(pg); returnqueryStock(); } publicStringturnChoosePage(){ IntegertSize=Integer.parseInt(getParam("tSize")); IntegerpageNum=Integer.parseInt(getParam("pageNum")); pageNum=pageNum-1; pager.setPageNow(pageNum); pager.setTotalSize(tSize); returnqueryStock(); } /** *修改 *@param *@returnString */ publicStringmodifyStock(){ try{ Integerparam=Integer.parseInt(getParam("param")); if(param==0){ Integerid=Integer.parseInt(getParam("id")); stock=stockService.getObject(Stockinfotable.class,id); return"modifyStock"; }elseif(param==1){ stockService.modifyObject(stock); } }catch(Exceptione){ e.printStackTrace(); } returnqueryStock(); } publicvoidinStock(){ try{ stoText="stoId"; stoValue=getParam("singoodid"); intcount=Integer.parseInt(getParam("count")); stoList=stockService.queryStock(stoText,stoValue,Stockinfotable.class); if(stoList.size()>0) stock=stoList.get(0); else { stock=newStockinfotable(); } count+=stock.getStoNumber(); stock.setStoNumber(count); System.out.println(count); stockService.modifyObject(stock); HttpServletResponseresponse=ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); JSONArrayjsonarry=JSONArray.fromObject("[{'result':'success'}]"); response.getWriter().write(jsonarry.toString()); }catch(Exceptione){ e.printStackTrace(); } } publicvoidgetWarnStock(){ try{ stoList=stockService.queryStock(stoText,stoValue,Stockinfotable.class); if(stocks!=null) stocks.removeAll(stocks); for(inti=0;i<stoList.size();i++){ stock=stoList.get(i); if(stock.getStoNumber()<stock.getStoDownWarn()&&stock.getStoNumber()>=stock.getStoDownDanger()){ stocks.add(stock); }elseif(stock.getStoNumber()>stock.getStoUpWarn()&&stock.getStoNumber()<=stock.getStoUpDanger()){ stocks.add(stock); } } HttpServletResponseresponse=ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); JSONArrayjsonarry=JSONArray.fromObject(stocks); response.getWriter().write(jsonarry.toString()); }catch(Exceptione){ e.printStackTrace(); } } publicvoidgetDangerStock(){ try{ stoList=stockService.queryStock(stoText,stoValue,Stockinfotable.class); if(stocks!=null) stocks.removeAll(stocks); for(inti=0;i<stoList.size();i++){ stock=stoList.get(i); if(stock.getStoNumber()<stock.getStoDownDanger()){ stocks.add(stock); }elseif(stock.getStoNumber()>stock.getStoUpDanger()){ stocks.add(stock); } } HttpServletResponseresponse=ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); JSONArrayjsonarry=JSONArray.fromObject(stocks); response.getWriter().write(jsonarry.toString()); }catch(Exceptione){ e.printStackTrace(); } } publicvoidoutStock(){ try{ stoText="stoId"; stoValue=getParam("soutgoodid"); intcount=Integer.parseInt(getParam("count")); stoList=stockService.queryStock(stoText,stoValue,Stockinfotable.class); stock=stoList.get(0); count=stock.getStoNumber()-count; Stringstr=""; if(count<0){ str="[{'result':'"+count+"'}]"; }else{ str="[{'result':'success'}]"; stock.setStoNumber(count); stockService.modifyObject(stock); } System.out.println(count); HttpServletResponseresponse=ServletActionContext.getResponse(); response.setCharacterEncoding("utf-8"); JSONArrayjsonarry=JSONArray.fromObject(str); response.getWriter().write(jsonarry.toString()); }catch(Exceptione){ e.printStackTrace(); } } /** *添加 *@param *@returnString */ publicStringaddStock(){ try{ Integerparam=Integer.parseInt(getParam("param")); if(param>0){ stockService.addObject(stock); }else return"addStock"; }catch(Exceptione){ e.printStackTrace(); } returnqueryStock(); } /** *刪除 *@param *@returnString */ publicStringdeleteStock(){ try{ Integerid=Integer.parseInt(getParam("id")); stockService.deleteObject(Stockinfotable.class,id); }catch(Exceptione){ e.printStackTrace(); } returnqueryStock(); } /** *獲取表單節(jié)點值 *@paramkey *@returnString */ protectedStringgetParam(Stringkey){ returnServletActionContext.getRequest().getParameter(key); } publicStockinfotablegetStock(){ returnstock; } publicvoidsetStock(Stockinfotablestock){ this.stock=stock; } publicBaseService<Stockinfotable>getStockService(){ returnstockService; } publicvoidsetStockService(BaseService<Stockinfotable>stockService){ this.stockService=stockService; } publicList<Stockinfotable>getStoList(){ returnstoList; } publicList<Stockinfotable>getStocks(){ returnstocks; } publicStringgetStoText(){ returnstoText; } publicvoidsetStoText(StringstoText){ this.stoText=stoText; } publicStringgetStoValue(){ returnstoValue; } publicvoidsetStoValue(StringstoValue){ this.stoValue=stoValue; } publicPagergetPager(){ returnpager; } publicvoidsetPager(Pagerpager){ this.pager=pager; }}驗證碼:publicclassMakeCertPic{ privatechar[]mapTable={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e', 'f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z', 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U', 'V','W','X','Y','Z'}; publicStringgetCertPic(intwidth,intheight,OutputStreamos){ if(width<=0) width=80; if(height<=0) height=30; BufferedImageimage=newBufferedImage(width,height,BufferedImage.TYPE_INT_BGR); Graphicsg=image.getGraphics(); g.setColor(newColor(0xDCDCDC));//背景色 g.fillRect(0,0,width,height); g.setColor(Color.black);//邊框色 g.drawRect(0,0,width-1,height-1); StringstrEnsure=""; for(inti=0;i<5;i++){ strEnsure+=mapTable[(int)(mapTable.length*Math.random())]; } g.setColor(Color.black); g.setFont(newFont("AtlanticInline",Font.PLAIN,20)); Stringstr=strEnsure.substring(0,1); g.drawString(str,5,25); g.setColor(Color.green); str=strEnsure.substring(1,2); g.drawString(str,20,20); g.setColor(Color.orange); str=strEnsure.substring(2,3); g.drawString(str,35,15); g.setColor(Color.black); str=strEnsure.substring(3,4); g.drawString(str,50,19); g.setColor(Color.blue); str=strEnsure.substring(4,5); g.drawString(str,64,28); Randomrand=newRandom();//產生干擾點 for(inti=0;i<20;i++){ intx=rand.nextInt(width); inty=rand.nextInt(height); g.setColor(Color.BLACK); g.drawOval(x,y,2,2); } g.dispose(); try{ ImageIO.write(image,"JPEG",os); // os.flush(); os.close(); os=null; }catch(IOExceptione){ returnstrEnsure.toLowerCase(); } returnstrEnsure.toLowerCase(); }}
電腦故障檢測卡代碼表
1、特殊代碼"00"和"ff"及其它起始碼有三種情況出現:
①已由一系列其它代碼之后再出現:"00"或"ff",則主板ok。
②如果將cmos中設置無錯誤,則不嚴重的故障不會影響bios自檢的繼續(xù),而最終出現"00"或"ff"。
③一開機就出現"00"或"ff"或其它起始代碼并且不變化則為主板沒有運行起來。
2、本表是按代碼值從小到大排序,卡中出碼順序不定。
3、未定義的代碼表中未列出。
4、對于不同bios(常用ami、award、phoenix)用同一代碼代表的意義不同,因此應弄清您所檢測的電腦是屬于哪一種類型的bios,您可查閱您的電腦使用手冊,或從主板上的bios芯片上直接查看,也可以在啟動屏幕時直接看到。
5、有少數主板的pci槽只有一部分代碼出現,但isa槽有完整自檢代碼輸出。且目前已發(fā)現有極個別原裝機主板的isa槽無代碼輸出,而pci槽則有完整代碼輸出,故建議您在查看代碼不成功時,將本雙槽卡換到另一種插槽試一下。另外,同一塊主板的不同pci槽,有的槽有完整代碼送出,如dell810主板只有靠近cpu的一個pci槽有完整代碼顯示,一直變化到"00"或"ff",而其它pci槽走到"38"后則不繼續(xù)變化。
6、復位信號所需時間isa與pci不一定同步,故有可能isa開始出代碼,但pci的復位燈還不熄,故pci代碼停要起始代碼上。
代碼對照表
00.已顯示系統(tǒng)的配置;即將控制INI19引導裝入。
01處理器測試1,處理器狀態(tài)核實,如果測試失敗,循環(huán)是無限的。處理器寄存器的測試即將開始,不可屏蔽中斷即將停用。CPU寄存器測試正在進行或者失敗。
02確定診斷的類型(正常或者制造)。如果鍵盤緩沖器含有數據就會失效。停用不可屏蔽中斷;通過延遲開始。CMOS寫入/讀出正在進行或者失靈。
03清除8042鍵盤控制器,發(fā)出TESTKBRD命令(AAH)通電延遲已完成。ROMBIOS檢查部件正在進行或失靈。
04使8042鍵盤控制器復位,核實TESTKBRD。鍵盤控制器軟復位/通電測試??删幊涕g隔計時器的測試正在進行或失靈。
05如果不斷重復制造測試1至5,可獲得8042控制狀態(tài)。已確定軟復位/通電;即將啟動ROM。DMA初如準備正在進行或者失靈。
06使電路片作初始準備,停用視頻、奇偶性、DMA電路片,以及清除DMA電路片,所有頁面寄存器和CMOS停機字節(jié)。已啟動ROM計算ROMBIOS檢查總和,以及檢查鍵盤緩沖器是否清除。DMA初始頁面寄存器讀/寫測試正在進行或失靈。
07處理器測試2,核實CPU寄存器的工作。ROMBIOS檢查總和正常,鍵盤緩沖器已清除,向鍵盤發(fā)出BAT(基本保證測試)命令。.
08使CMOS計時器作初始準備,正常的更新計時器的循環(huán)。已向鍵盤發(fā)出BAT命令,即將寫入BAT命令。RAM更新檢驗正在進行或失靈。
09EPROM檢查總和且必須等于零才通過。核實鍵盤的基本保證測試,接著核實鍵盤命令字節(jié)。第一個64KRAM測試正在進行。
0A使視頻接口作初始準備。發(fā)出鍵盤命令字節(jié)代碼,即將寫入命令字節(jié)數據。第一個64KRAM芯片或數據線失靈,移位。
0B測試8254通道0。寫入鍵盤控制器命令字節(jié),即將發(fā)出引腳23和24的封鎖/解鎖命令。第一個64KRAM奇/偶邏輯失靈。
0C測試8254通道1。鍵盤控制器引腳23、24已封鎖/解鎖;已發(fā)出NOP命令。第一個64KRAN的地址線故障。
0D1、檢查CPU速度是否與系統(tǒng)時鐘相匹配。2、檢查控制芯片已編程值是否符合初設置。3、視頻通道測試,如果失敗,則鳴喇叭。已處理NOP命令;接著測試CMOS停開寄存器。第一個64KRAM的奇偶性失靈
0E測試CMOS停機字節(jié)。CMOS停開寄存器讀/寫測試;將計算CMOS檢查總和。初始化輸入/輸出端口地址。
0F測試擴展的CMOS。已計算CMOS檢查總和寫入診斷字節(jié);CMOS開始初始準備。.
10測試DMA通道0。CMOS已作初始準備,CMOS狀態(tài)寄存器即將為日期和時間作初始準備。第一個64KRAM第0位故障。
11測試DMA通道1。CMOS狀態(tài)寄存器已作初始準備,即將停用DMA和中斷控制器。第一個64DKRAM第1位故障。
12測試DMA頁面寄存器。停用DMA控制器1以及中斷控制器1和2;即將視頻顯示器并使端口B作初始準備。第一個64DKRAM第2位故障。
13測試8741鍵盤控制器接口。視頻顯示器已停用,端口B已作初始準備;即將開始電路片初始化/存儲器自動檢測。第一個64DKRAM第3位故障。
14測試存儲器更新觸發(fā)電路。電路片初始化/存儲器處自動檢測結束;8254計時器測試即將開始。第一個64DKRAM第4位故障。
15測試開頭64K的系統(tǒng)存儲器。第2通道計時器測試了一半;8254第2通道計時器即將完成測試。第一個64DKRAM第5位故障。
16建立8259所用的中斷矢量表。第2通道計時器測試結束;8254第1通道計時器即將完成測試。第一個64DKRAM第6位故障。
17調準視頻輸入/輸出工作,若裝有視頻BIOS則啟用。第1通道計時器測試結束;8254第0通道計時器即將完成測試。第一個64DKRAM第7位故障。
18測試視頻存儲器,如果安裝選用的視頻BIOS通過,由可繞過。第0通道計時器測試結束;即將開始更新存儲器。第一個64DKRAM第8位故障。
19測試第1通道的中斷控制器(8259)屏蔽位。已開始更新存儲器,接著將完成存儲器的更新。第一個64DKRAM第9位故障。
1A測試第2通道的中斷控制器(8259)屏蔽位。正在觸發(fā)存儲器更新線路,即將檢查15微秒通/斷時間。第一個64DKRAM第10位故障。
1B測試CMOS電池電平。完成存儲器更新時間30微秒測試;即將開始基本的64K存儲器測試。第一個64DKRAM第11位故障。
1C測試CMOS檢查總和。.第一個64DKRAM第12位故障。
1D調定CMOS配置。.第一個64DKRAM第13位故障。
1E測定系統(tǒng)存儲器的大小,并且把它和CMOS值比較。.第一個64DKRAM第14位故障。
1F測試64K存儲器至最高640K。.第一個64DKRAM第15位故障。
20測量固定的8259中斷位。開始基本的64K存儲器測試;即將測試地址線。從屬DMA寄存器測試正在進行或失靈。
21維持不可屏蔽中斷(NMI)位(奇偶性或輸入/輸出通道的檢查)。通過地址線測試;即將觸發(fā)奇偶性。主DMA寄存器測試正在進行或失靈。
22測試8259的中斷功能。結束觸發(fā)奇偶性;將開始串行數據讀/寫測試。主中斷屏蔽寄存器測試正在進行或失靈。
23測試保護方式8086虛擬方式和8086頁面方式?;镜?4K串行數據讀/寫測試正常;即將開始中斷矢量初始化之前的任何調節(jié)。從屬中斷屏蔽存器測試正在進行或失靈。
24測定1MB以上的擴展存儲器。矢量初始化之前的任何調節(jié)完成,即將開始中斷矢量的初始準備。設置ES段地址寄存器注冊表到內存高端。
25測試除頭一個64K之后的所有存儲器。完成中斷矢量初始準備;將為旋轉式斷續(xù)開始讀出8042的輸入/輸出端口。裝入中斷矢量正在進行或失靈。
26測試保護方式的例外情況。讀出8042的輸入/輸出端口;即將為旋轉式斷續(xù)開始使全局數據作初始準備。開啟A20地址線;使之參入尋址。
27確定超高速緩沖存儲器的控制或屏蔽RAM。全1數據初始準備結束;接著將進行中斷矢量之后的任何初始準備。鍵盤控制器測試正在進行或失靈。
28確定超高速緩沖存儲器的控制或者特別的8042鍵盤控制器。完成中斷矢量之后的初始準備;即將調定單色方式。CMOS電源故障/檢查總和計算正在進行。
29.已調定單色方式,即將調定彩色方式。CMOS配置有效性的檢查正在進行。
2A使鍵盤控制器作初始準備。已調定彩色方式,即將進行ROM測試前的觸發(fā)奇偶性。置空64K基本內存。
2B使磁碟驅動器和控制器作初始準備。觸發(fā)奇偶性結束;即將控制任選的視頻ROM檢查前所需的任何調節(jié)。屏幕存儲器測試正在進行或失靈。
2C檢查串行端口,并使之作初始準備。完成視頻ROM控制之前的處理;即將查看任選的視頻ROM并加以控制。屏幕初始準備正在進行或失靈。
2D檢測并行端口,并使之作初始準備。已完成任選的視頻ROM控制,即將進行視頻ROM回復控制之后任何其他處理的控制。屏幕回掃測試正在進行或失靈。
2E使硬磁盤驅動器和控制器作初始準備。從視頻ROM控制之后的處理復原;如果沒有發(fā)現EGA/VGA就要進行顯示器存儲器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 供貨協(xié)議合同標準文本標準文本
- 《女巫》讀后感(3篇)
- 會刊設計印制合同標準文本
- 借用資質包工合同標準文本
- 鄉(xiāng)村魚塘買賣合同標準文本
- 以裝修代房租合同范例
- 買賣挖掘合同標準文本
- 制定可持續(xù)發(fā)展目標的思考計劃
- 與朋友合作合同標準文本
- 企業(yè)汽車抵押合同標準文本
- 鼻骨骨折病人護理課件
- 《金屬材料力學性能》課件
- 中國人的禮儀規(guī)矩
- 國家電網應急能力評估報告
- 大學軍事理論課教程第四章現代戰(zhàn)爭第一節(jié) 戰(zhàn)爭概述
- 同意未成年出國聲明 - 中英
- 植物病蟲害防治賽項賽題
- 數字經濟學導論-全套課件
- 化學分析安全操作規(guī)程 標準版
- 風電機組齒輪箱故障分析報告
- PC構件吊裝安全技術交底表
評論
0/150
提交評論