企業(yè)辦公自動化系統(tǒng)_第1頁
企業(yè)辦公自動化系統(tǒng)_第2頁
企業(yè)辦公自動化系統(tǒng)_第3頁
企業(yè)辦公自動化系統(tǒng)_第4頁
企業(yè)辦公自動化系統(tǒng)_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

圖15所示:圖SEQ圖\*ARABIC15人事模塊的處理流程圖系統(tǒng)模塊功能實現(xiàn)由于基于JSP的自動辦公系統(tǒng)涉及到的功能較多,在此只對重要的模塊即材料模塊和業(yè)務模塊的實現(xiàn)做說明。材料模塊類別管理功能用戶登錄系統(tǒng)后,點擊菜單中的“材料類別”,出現(xiàn)材料類別的查看界面,在該界面點擊“添加類別”(或“修改”),跳轉到添加類別的界面[4](或修改類別的界面),如下圖16所示:圖SEQ圖\*ARABIC16類別管理的界面類別管理功能的關鍵代碼如下:…………//添加類別this.typeService.addType(type);//調(diào)用typeService類addType()函數(shù)…………//修改類別this.typeService.uppType(type);//調(diào)用typeService類uppType()函數(shù)…………//刪除類別this.typeService.delType(type);//調(diào)用typeService類delType()函數(shù)…………材料信息管理功能用戶登錄系統(tǒng)后,點擊菜單中的“材料列表”,出現(xiàn)材料的查看界面,在該界面點擊“添加材料信息”(或“修改”),跳轉添加材料界面[5](或修改界面),如下圖17所示:圖SEQ圖\*ARABIC17材料信息管理的界面材料信息管理功能的關鍵代碼如下:…………//添加product.setPCount(0);//將現(xiàn)庫存量默認設置為0ductServcie.addProduct(product);//調(diào)用productService類…………//刪除ductServcie.delProduct(p_id);//調(diào)用productService類…………//修改ductServcie.uppProduct(product);//調(diào)用productService類…………材料入庫管理功能用戶登錄系統(tǒng)后,點擊菜單中的“入庫管理”,出現(xiàn)材料入庫的查看界面,在該界面點擊“錄入入庫信息”(或“修改”),跳轉添加材料入庫界面[6](或修改界面),如下圖18所示:圖SEQ圖\*ARABIC18材料入庫管理的界面添加材料入庫信息功能的關鍵代碼如下://點擊“添加”時的關鍵代碼//判斷入庫量和現(xiàn)在的庫存量之和是否小于最大庫存if(product.getPCount()+inorder.getICount()<=product.getPInventory()){…………sb.append("添加成功!");//返回添加成功}else{ sb.append("庫存量超出最大庫存了!");//大于最大庫添加失敗}…………//點擊“修改”時的關鍵代碼…………this.inorderService.uppOrder(inorder);//調(diào)用inorderService類…………材料出庫管理功能用戶登錄系統(tǒng)后,點擊菜單中的“出庫管理”,出現(xiàn)材料出庫的查看頁面,在該界面點擊“錄入出庫信息”(或“修改”),跳轉添加材料出庫界面[7](或修改界面),如下圖19所示:圖SEQ圖\*ARABIC19材料出庫管理的界面添加材料出庫信息功能的關鍵代碼如下://點擊“添加”時的關鍵代碼//判斷材料的庫存是否夠if(product.getPCount()>=outorder.getOCount()){//修改材料現(xiàn)庫存量 product.setPCount(product.getPCount()-outorder.getOCount());…………sb.append("添加成功!\n");//返回添加成功//判斷添加成功后是否低于預警值if(product.getPCount()-outorder.getOCount()<=product.getPFirm()){//低于預警值返回低于預警值 sb.append("已經(jīng)低于預警值了,請盡快采購!");}}else{ sb.append("庫存不足");//材料不足}…………//點擊“修改”時的關鍵代碼…………this.outService.uppOutorder(outorder);//調(diào)用outService類…………業(yè)務模塊客戶級別管理功能用戶登錄系統(tǒng)后,點擊菜單中的“級別管理”,出現(xiàn)級別的查看頁面,在該界面點擊“添加級別”(或“修改”),跳轉添加級別界面(或修改界面),如下圖20所示:圖SEQ圖\*ARABIC20級別管理的界面級別管理功能的關鍵代碼如下://點擊“添加”時的關鍵代碼StringmyFileDir="/rankimages";//定義一個存放上傳文件的文件夾名稱Stringpath=ServletActionContext.getRequest().getRealPath("/upload")+myFileDir;//獲取存放路徑Filedir=newFile(path);//創(chuàng)建path路徑if(!dir.exists()){//如果dir不存在,就創(chuàng)建一個dir根目錄 dir.mkdirs();}StringoldName=this.rank.getFileFileName();//獲取舊文件名StringnewName=this.updateName(oldName);//更新文件名//上傳FiledeskFile=newFile(path,newName);//新建newname文件try{ FileUtils.copyFile(this.rank.getFile(),deskFile);//復制文件}catch(IOExceptione){//捕獲異常 e.printStackTrace();//打印異常}StringnewPath="upload"+myFileDir+"/"+newName;//文件路徑this.rank.setRImg(newPath);//將文件路徑賦rank對象的Image屬性…………//點擊“刪除”時的關鍵代碼StringmyFileDir="/rankimages";//圖片在服務器的路徑Stringpath=ServletActionContext.getRequest().getRealPath("/upload")+myFileDir;//獲取存放路徑Filedir=newFile(path);//創(chuàng)建path路徑if(!dir.exists()){//如果dir不存在,就創(chuàng)建一個dir根目錄 dir.mkdirs();}intlength=("/upload"+myFileDir).length();//獲取大小StringoldPath=path.substring(0,path.length()-length)+"/"+rank.getRImg();//獲取原來圖片的路徑Filefile=newFile(oldPath);//獲取圖片file.delete();//調(diào)用delete函數(shù)刪除圖片this.rankService.delRank(r_id);//調(diào)用delRank函數(shù)刪除表中的記錄…………客戶管理功能用戶登錄系統(tǒng)后,點擊菜單中的“客戶列表”,出現(xiàn)客戶的查看界面,點擊菜單中的“客戶轉移”出現(xiàn)員工列表界面。在客戶的查看界面點擊“錄入客戶”(或“修改”),跳轉添加客戶界面(或修改界面)。在員工列表界面點擊目標員工的員工姓名(或在查詢框中輸入員工姓名查詢,再在查詢結果中點擊員工姓名),跳轉到客戶轉移界面。客戶管理功能的相關界面如下圖21和圖22所示:圖SEQ圖\*ARABIC21客戶管理界面圖SEQ圖\*ARABIC22客戶轉移界面新增資料信息功能的關鍵代碼如下://點擊“添加”時的關鍵代碼//獲取當前登錄員工的ide_id=Integer.parseInt(session.getAttribute("e_id").toString());…………this.customService.addCustom(custom);//調(diào)用addCustom函數(shù)添加…………//點擊“轉移”時的關鍵代碼this.custom=this.customService.getCustomOne(m_id);//獲取客戶idTEmpemps=newTEmp();//實例化一個TEmp類emps.setEId(eid);//將eid賦值給emps對象的EId屬性this.custom.setTEmp(emps);//給要轉移的客戶設置轉移后的員工this.customService.uppCustom(custom);//調(diào)用uppCustom修改custom…………任務單管理功能用戶登錄系統(tǒng)后,點擊菜單中的“客戶列表”出現(xiàn)客戶列表頁面,點擊目標客戶列表中的員工的姓名,跳轉到該客戶任務單的查看的界面,在該界面點擊“錄入項目”(或“修改”),跳轉到添加任務單的界面(或修改界面),如下圖23所示:圖SEQ圖\*ARABIC23任務單管理界面任務單管理功能的關鍵代碼如下://修改任務單的關鍵代碼StringmyFileDir="/tasks";//定義一個存放上傳文件的文件夾名稱Stringpath=ServletActionContext.getRequest().getRealPath( "/upload")+myFileDir;//獲取存放路徑Filedir=newFile(path);//創(chuàng)建path路徑if(!dir.exists()){//如果dir不存在,就創(chuàng)建一個dir根目錄 dir.mkdirs(); }intlength=("/upload"+myFileDir).length();//獲取大小StringoldPath=path.substring(0,path.length()-length)+"/"+this.task.getTDoc();//獲取原來文件的路徑Filefile=newFile(oldPath);//file.delete();//調(diào)用StringoldName=this.task.getFileFileName();//獲取原來的名稱StringnewName=this.updateName(oldName);//更改名稱//上傳FiledeskFile=newFile(path,newName);//新建一個deskFile文件try{//將源文件復制給deskFile文件 FileUtils.copyFile(this.task.getFile(),deskFile);}catch(IOExceptione){//捕獲異常 e.printStackTrace();//輸出異常}StringnewPath="upload"+myFileDir+"/"+newName;//文件路徑this.task.setTDoc(newPath);//將文件路徑賦值給task的TDoc屬性…………洽談表管理功能用戶登錄系統(tǒng)后,在客戶任務單列表的頁界面,點擊目標任務單名稱,跳轉到該任務單的洽談列表界面,在該界面點擊“錄入洽談記錄”(或“修改”),跳轉到添加洽談表的界面(或修改界面),如下圖24所示:圖SEQ圖\*ARABIC24洽談表管理界面洽談管理功能的關鍵代碼如下://點擊“添加”時的關鍵代碼if(oldName.length()>0){StringmyFileDir="/negotiates";//定義一個存放上傳文件的文件夾名稱Stringpath=ServletActionContext.getRequest().getRealPath("/upload")+myFileDir;//獲取存放路徑…………this.negotiate.setNSign(1);//設置為有合同}else{ this.negotiate.setNSign(0);//設置為無合同 this.negotiate.setNDoc("null");//將NDoc屬性設置為空}…………this.negotiateService.addNegotiate(negotiate);//調(diào)用addNegotiate函數(shù)添加negotiate}…………流程掛鉤功能用戶登錄系統(tǒng)后,點擊菜單中的“流程掛鉤”出現(xiàn)需掛鉤任務列表界面,點擊“選擇流程”,跳轉到流程列表,如下25所示:圖SEQ圖\*ARABIC25流程掛鉤界面流程掛鉤功能的關鍵代碼如下://將流程的整個流程節(jié)點添加到審批表for(inti=0;i<this.flowparentList.size();i++){ ………… flow.setFId(this.f_id);//將f_id賦值給flow對象的FId屬性 approval.setTFlow(flow);//添加審批流程節(jié)點到審批表 ………… approval.setTEmp(emp);//添加審批人到審批表中 ………… if(i==0){ approval.setASign(1);//將第一個流程節(jié)點的設置為可審批 }else{ approval.setASign(0);//將不是第一個流程節(jié)點的設置為不可審批 } …………//調(diào)用addApproval函數(shù)添加approval this.approvalService.addApproval(approval); } ………… negotiate.setNSign(2);//設置合同已選擇流程 this.negotiateService.uppNegotiate(negotiate);…………在線審批功能用戶登錄系統(tǒng)后,點擊菜單中的“待審批列表”待審批列表頁面,如下圖26所示:圖SEQ圖\*ARABIC26審批界面在線審批功能的關鍵代碼如下:approval1.setASign(0);//將當前正審批的審批表設置為不可審批 intstep=approval1.getAStep();//獲取當前的步驟 intnextstep=step+1;//得到下一步 if(approval1.getAFlag()==1){ this.approvalService.uppSing(nextstep,approval1.getTTask() .getTId());//將標記修改為可審批 this.approvalService.uppOneApp(approval1);//更新approval1 }else{ this.approvalService.uppOneApp(approval1);//更新approval1 }系統(tǒng)測試方案測試環(huán)境Web服務器:操作系統(tǒng)WIN7,內(nèi)存2G或以上。數(shù)據(jù)庫服務器:操作系統(tǒng)WIN7,數(shù)據(jù)庫SQLSERVER2015??蛻舳耍翰僮飨到y(tǒng)WIN7,IE7.0。測試策略以單元測試為基礎[8],進行集成測試等相關測試,主要關注系統(tǒng)功能實現(xiàn)的正確性,數(shù)據(jù)流動的正確性,系統(tǒng)對事件的響應時間,事務處理速率和其他與時間相關的需求進行評測和評估。單元測試和集成測試都采用的是測試用例的方法進行測試。單元測試單元測試的對象是軟件設計的最小單位——模塊。單元測試的目的就是根據(jù)詳細設計說明書分析程序內(nèi)部的各個處理邏輯,設計程序測試項目(PCL),檢驗各個程序模塊是否滿足程序功能設計和業(yè)務處理的要求。下面是以材料出庫為例的部分功能測試用例,如下表15所示:表SEQ表\*ARABIC15功能測試用例序號輸入預期輸出是否正常備注1點擊“添加出庫信息”跳轉到新增頁面,頁面中無數(shù)據(jù)是2點擊“修改”跳轉到修改頁面,頁面中顯示原始數(shù)據(jù)是4在新增頁面中點擊“保存”按鈕成功提交新增信息,并將記錄顯示在頁面上是5在修改頁面中點擊“修改”按鈕成功修改,并將更新后的記錄更新到頁面上是7在新增頁面中錄入信息時候,不填寫必備信息系統(tǒng)給予提示是集成測試在單元測試的基礎上,需要將模塊按照設計要求組裝成為系統(tǒng)。這時需要考慮的問題是:把各個模塊連接起來的時,穿越模塊接口的數(shù)據(jù)是否會丟失;一個模塊的功能是否會對另一個模塊的功能產(chǎn)生不利的影響;各個子功能組合起來,能否達到預期要求的父功能;全局數(shù)據(jù)結構是否有問題;單個模塊的誤差累積起來,是否會放大,從而達到不能接受的程度。在單元測試的同時可進行集成測試,發(fā)現(xiàn)并排除在模塊連接中可能出現(xiàn)的問題,最終構成要求的軟件系統(tǒng)。子系統(tǒng)的集成測試特別稱為部件測試,所做的工作是要找出集成后的子系統(tǒng)與系統(tǒng)需求規(guī)格說明之間的不一致。下面是集成后的材料模塊的測試用例,如下表16所示:表SEQ表\*ARABIC16功能測試用例序號輸入預期輸出是否正常備注1在材料出庫新增頁面中點擊“保存”按鈕(出庫數(shù)量大于現(xiàn)庫存量)保存失敗,彈出庫存不足的提示框是2在材料出庫新增頁面中點擊“保存”按鈕(現(xiàn)庫存數(shù)量與出庫量的差大預警值)保存成功,并將新增的記錄添加到頁面上是3在材料出庫新增頁面中點擊“保存”按鈕(現(xiàn)庫存數(shù)量與出庫量的差大于0,且小于預警值)保存成功,提示添加成功且?guī)齑嬉研∮陬A警值了,將新增的記錄添加到頁面上是4在材料入庫新增頁面中點擊“保存”按鈕(入庫數(shù)量和現(xiàn)庫存量之和小于最大庫存)保存成功,并將新增的記錄添加到頁面上是5在材料入庫新增頁面中點擊“保存”按鈕(入庫數(shù)量和現(xiàn)庫存量之和大于最大庫存)保存失敗,彈出超出最大庫存的提示框是測試結論基于JSP的自動系統(tǒng)的功能符合需求分析的要求。在響應時間上,添加材料時,反應有待提高。界面交互人性化,符合辦公系統(tǒng)的風格。系統(tǒng)的功能以及邏輯基本符合要求。

結論基于JSP的自動化辦公系統(tǒng)是一個將企業(yè)管理及基礎辦公需求作為核心,基于B/S模式的信息服務系統(tǒng),集先進的計算機技術與辦公自動化理論于一身,適應當今辦公自動化系統(tǒng)的開發(fā)需求。通過調(diào)研以及細致合理的規(guī)劃分析,采用結構化和原型法相結合的開發(fā)方法,并采用模塊化的開發(fā)機制,使用流行的系統(tǒng)開發(fā)技術,經(jīng)過三個月的開發(fā)與設計,辦公自動化系統(tǒng)的用戶身份驗證模塊和其他基本功能模塊已開發(fā)成為一個較

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論