freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

基于oa系統(tǒng)的工作流引擎設計與實現(xiàn)(編輯修改稿)

2025-07-23 16:26 本頁面
 

【文章內容簡介】 web框架一樣,Spring的web框架是一個請求驅動的web框架,其設計圍繞一個中心的servlet進行,它能將請求分發(fā)給控制器,并提供其它功能幫助web應用開發(fā)。然而,Spring的DispatcherServlet所做的不僅僅是這些,它和Spring的IoC容器完全集成在一起,從而允許你使用Spring的其它功能。下圖展示了DispatcherServlet對請求的處理流程: Spring Web MVC處理請求的工作流程2. 命令控制器Spring的CommandController是Spring MVC的重要部分。命令控制器提供了一種和數(shù)據(jù)對象交互的方式,并動態(tài)地將來自HttpServletRequest的參數(shù)綁定到你指定的數(shù)據(jù)對象上。它的功能和Struts中的ActionForm有點像,不過在Spring中,你不需要實現(xiàn)任何接口來實現(xiàn)數(shù)據(jù)綁定。首先,讓我們看一下有哪些可以使用的命令控制器:216。 AbstractCommandController --你可以使用該抽象命令控制器來創(chuàng)建自己的命令控制器,它能夠將請求參數(shù)綁定到你指定的命令對象。這個類并不提供任何表單功能,但是它提供驗證功能,并且讓你在子類中去實現(xiàn)如何處理由請求參數(shù)產(chǎn)生的命令對象。 216。 AbstractFormController--一個支持表單提交的抽象控制器類。使用這個控制器,你可以定義表單,并使用從控制器獲取的數(shù)據(jù)對象構建表單。當用戶輸入表單內容,AbstractFormController將用戶輸入的內容綁定到命令對象,驗證表單內容,并將該對象交給控制器,完成相應的操作。它支持的功能有防止重復提交、表單驗證以及一般的表單處理流程。子類需要實現(xiàn)自己的方法來指定采用哪個視圖來顯示輸入表單,哪個視圖顯示表單正確提交后的結果。如果你需要表單,但不想在應用上下文中指定顯示給用戶的視圖,就使用這個控制器。 216。 SimpleFormController --這是一個form cotnroller,當需要根據(jù)命令對象來創(chuàng)建相應的form的時候,該類可以提供更多的支持。你可以為其指定一個命令對象,顯示表單的視圖名,當表單提交成功后顯示給用戶的視圖名等等。 216。 AbstractWizardFormController --這是一個抽象類,繼承這個類需要實現(xiàn)validatePage()、processFinish() 和processCancel() 方法。你有可能也需要寫一個構造器,它至少需要調用setPages()和setCommandName()方法。setPages()的參數(shù)是一個String數(shù)組,這個數(shù)組包含了組成向導的視圖名。setCommandName()的參數(shù)是一個String,該參數(shù)將用來在視圖中調用你的命令對象。和AbstractFormController的實現(xiàn)一樣, 你需要使用命令對象(其實就是一個JavaBean, 這個bean中包含了表單的信息)。你有兩個選擇:在構造函數(shù)中調用setCommandClass()方法(參數(shù)是命令對象的類名),或者實現(xiàn)formBackingObject()方法。AbstractWizardFormController 有幾個你可以復寫(override)的方法。最有用的一個是referenceData(..)。這個方法允許你把模型數(shù)據(jù)以Map的格式傳遞給視圖;getTargetPage() 允許你動態(tài)地更改向導的頁面順序,或者直接跳過某些頁面;onBindAndValidate() 允許你復寫內置的綁定和驗證流程。3 工作流引擎需求分析 相關概念介紹在進行工作流引擎的需求分析之前,先引入幾個將要使用的重要概念。216。 流程實例,是指工作流系統(tǒng)處理的業(yè)務流程,每個流程實例的生命期是有限的,并且都有一個唯一標識。案例屬性是一系列同案例相關的變量,能用來管理案例,它們的值可能隨著案例的進展而發(fā)生變化。216。 活動,是指流程實例下的各個節(jié)點的描述。每個活動具有唯一標識,對應流程模型中的一個節(jié)點。它的重要屬性有狀態(tài)及狀態(tài)改變時間。它可以對應多個工作項,但是在一個時間內只能有一個當前的工作項,當該工作項被執(zhí)行后,活動狀態(tài)發(fā)生相應改變。216。 工作項,是活動的實際執(zhí)行。只要流程實例狀態(tài)允許,工作項就被創(chuàng)建。我們可以把工作項看作是要被執(zhí)行的實際工作塊。 總體需求 基于業(yè)務的需求分析該工作流管理系統(tǒng)用戶分為流程設計員和普通用戶兩種。流程設計人員主要操作包括:建立流程模型、設置流程相關屬性、設置用戶權限、刪除流程模型、修改模型、保存模型、添加用戶、刪除用戶。流程設計人員的功能大多屬于建模部分,不是本課題的范圍,在此不作分析。普通用戶功能基本覆蓋了一個標準工作流引擎的核心功能,將是重點本文的重點闡述部分。普通用戶的操作包括:啟動流程實例、掛起流程實例、激活流程實例、接收任務、打開工作相、查看辦公文檔、發(fā)送文檔等等()。用戶通過驗證登錄后,通過導航菜單進入各個頁面進行相關的操作。大多數(shù)用戶進行的日常操作主要是與工作項有關,包括有:接收任務、打開工作項、查看文件、保存發(fā)送文件、回退文件、跟蹤流程狀態(tài)以及用戶信息管理;對于處于開始節(jié)點的用戶,除了上述的操作外,還可以啟動一個流程實例,并且可以對其啟動的流程進行一些控制管理,如掛起、激活、終止以及查看狀態(tài)。 普通用戶用例圖 需求描述(1) 接收任務,流程中每個活動指定人員進行辦理,當流程執(zhí)行到人員負責的活動時,負責人可主動查詢未完成任務。(2) 打開工作項,即選擇未完成任務,進入文件審批界面,進行批閱。(3) 查看文件,用戶對自己經(jīng)手過的文件進行查閱,不能編輯。(4) 保存發(fā)送文件,用戶完成審批后提交任務。(5) 回退文件,用戶審批文件時,發(fā)現(xiàn)前一級部門的工作不符合要求,可以把文件打回讓其重新審批。(6) 跟蹤流程狀態(tài),分為三種:跟蹤用戶自己創(chuàng)建的流程的狀態(tài)、跟蹤用戶辦理過的流程的狀態(tài)和跟蹤用戶將要辦理的流程的狀態(tài)。 任務實時通知常見的信息通知有兩種驅動方式:拉和推。拉是指用戶主動向服務器獲取信息;推是指服務器自動將信息顯示給用戶。作為一個比較人性化的系統(tǒng),應該具備這兩種機制,尤其是對于實時性要求比較高的系統(tǒng),“推”機制是一種很好的解決方案。工作流管理系統(tǒng)是對業(yè)務流程的管理系統(tǒng),任務能實現(xiàn)實時通知,有助于提高流程流轉速度,提高業(yè)務執(zhí)行的效率。 多種業(yè)務流程的文件存儲問題工作流管理系統(tǒng)與一般的MIS系統(tǒng)不同,它不是為特定業(yè)務設計的,而是能夠支持多種不同的業(yè)務。然而,不同業(yè)務處理的文件之間存在很大的差別。流程設計者在定制流程的同時,可以選擇已存在數(shù)據(jù)庫的表單,甚至可以添加表單。所以,業(yè)務文件同樣具有靈活定制的需求,其數(shù)據(jù)存儲結構也是該系統(tǒng)要解決的問題。 文件權限問題文件權限問題是指流程執(zhí)行者對流程綁定的文件的各個部分具有不同的讀寫權限。例如,在一個申請審批流程中,處于流程某個活動的部門只能對審批表中該部門負責的部分進行編輯,其他的部分不允許修改。 業(yè)務流程的基本模式文獻[1]中歸納了22中常見的工作流模式,經(jīng)過對普通的辦公室辦公自動化需求進行分析,其中5種最基本的模式是一般業(yè)務流程中必需的:1) 順序流向:一個步驟完成后,無條件地流向固定的下一步驟。 所示:活動A活動B 順序流向2) 選擇分流:一個步驟完成后,按一定的條件流向不同的下一步驟。這種情況下用戶執(zhí)行當前任務并提交任務后,OAworkflow尋找后續(xù)步驟,并返回讓用戶進行選擇,以決定后續(xù)步驟。 所示: 活動A活動B活動COR 選擇分流活動A活動B活動CAND3) 并發(fā)分流:一個步驟完成后,同時激活多個后繼步驟,即多人分工同時工作的情形。當活動A完成,并提交任務后,OAworkflow將文件無條件轉向活動B和C。 所示: 并發(fā)分流4) 選擇匯合:若干個步驟完成后,都流向步驟C,而只要這些步驟中有一個或多個完成了,步驟C就可以開始?;顒覥的任一前節(jié)點提交任務后,引擎將遍歷活動C 的所有前活動實例,判斷其狀態(tài),當且僅當完成的活動實例數(shù)等于活動C定義的最少通過數(shù)時,引擎才會產(chǎn)生一個對應活動C的工作項。 所示:活動A活動B活動COR活動A活動B活動CAND5) 并發(fā)匯合:若干個步驟完成后,都流向步驟C,只有當這些步驟都完成了,步驟C才可以開始。即活動C的任一前節(jié)點提交任務后,引擎將遍歷活動C 的所有前活動實例,判斷其狀態(tài),當且僅當所有這些活動實例都處于完成狀態(tài)時,引擎才會產(chǎn)生一個對應活動C的工作項。 所示: 并發(fā)匯合 用例闡述參與者:普通用戶前置條件:已經(jīng)登錄,運行服務中有待運行的流程。后置條件:用戶啟動了一個流程。步驟序列:1) 進入啟動流程界面。2) 用戶選擇想要啟動的流程。3) 系統(tǒng)啟動選中的流程,初始化活動節(jié)點。4) 打開公文編輯頁面 掛起流程參與者:普通用戶前置條件:已經(jīng)登錄,運行服務中有該用戶啟動的流程。后置條件:用戶掛起了一個流程。步驟序列:1) 進入流程控制界面,列出由該用戶啟動并且在運行或掛起狀態(tài)的流程信息,包括序號、流程名稱、當前狀態(tài)、啟動時間。2) 用戶選擇想要掛起的流程。3) 系統(tǒng)彈出確認框,用戶點擊確認掛起流程4) 流程被掛起,相應狀態(tài)改成“掛起”。 激活流程參與者:普通用戶前置條件:已經(jīng)登錄,運行服務中有該用戶啟動的流程,并且流程處于掛起狀態(tài)。后置條件:用戶激活了一個流程。步驟序列:1) 進入流程控制界面,列出由該用戶啟動并且在運行或掛起狀態(tài)的流程信息,包括序號、流程名稱、當前狀態(tài)、啟動時間。2) 用戶選擇想要激活的處于掛起狀態(tài)的流程。3) 系統(tǒng)彈出確認框,用戶點擊確認激活流程4) 流程被激活,相應狀態(tài)改成“執(zhí)行”。 終止流程參與者:普通用戶前置條件:已經(jīng)登錄,運行服務中有該用戶啟動的流程。后置條件:用戶終止了一個流程。步驟序列:1) 進入流程控制界面,列出由該用戶啟動并且在運行或掛起狀態(tài)的流程信息,包括序號、流程名稱、當前狀態(tài)、啟動時間。2) 用戶選擇想要終止的流程。3) 系統(tǒng)彈出確認框,用戶點擊確認終止流程4) 流程被終止,被終止的流程不再顯示相關信息。 接收任務參與者:普通用戶前置條件:已經(jīng)登錄。后置條件:進入了任務列表界面。步驟序列:1) 點擊導航菜單中的“接收任務”鏈接。2) 進入任務列表界面,列出由該用戶未處理的工作項信息,包括序號、流程名稱、公文名稱、接收時間。 打開工作項參與者:普通用戶前置條件:已經(jīng)登錄,進入任務列表界面。后置條件:進入公文編輯界面。步驟序列:1) 選擇要執(zhí)行的任務,點擊“打開”。2) 進入公文編輯界面,用戶只能編輯規(guī)定的字段,其他節(jié)點的編輯的內容此時為只讀狀態(tài)。 保存文件參與者:普通用戶前置條件:用戶已經(jīng)登錄,進入了公文編輯界面。后置條件:保存了經(jīng)過編輯的公文內容。步驟序列:1) 點擊“保存”按鈕。2) 頁面刷新,內容被保存。 發(fā)送文件參與者:普通用戶前置條件:用戶已經(jīng)登錄,進入了公文編輯界面。后置條件:公文被發(fā)送到后續(xù)節(jié)點。步驟序列:1) 點擊“發(fā)送”按鈕。2) 系統(tǒng)自動保存公文內容,并獲取后續(xù)節(jié)點。3) 進入后續(xù)節(jié)點界面,如果當前節(jié)點為選擇分支節(jié)點,用戶必須選擇后續(xù)發(fā)送節(jié)點。4) 系統(tǒng)彈出確認框,點擊確認。5) 相應后續(xù)節(jié)點被通知,返回查看公文界面。 掛起工作項參與者:普通用戶前置條件:用戶已經(jīng)登錄,進入了公文編輯界面。后置條件:掛起當前工作項步驟序列:1) 點擊“掛起”按鈕。2) 系統(tǒng)修改該工作項及相應活動的狀態(tài)為“掛起”3) 返回任務列表界面 恢復工作項參與者:普通用戶前置條件:用戶已經(jīng)登錄,進入了公文編輯界面。后置條件:重啟當前工作項步驟序列:1) 點擊“恢復”按鈕。2) 系統(tǒng)修改該工作項及相應活動的狀態(tài)為“待辦”3) 頁面刷新 駁回文件參與者:普通用戶前置條件:用戶已經(jīng)登錄,進入了公文編輯界面。后置條件:公文被駁回到后續(xù)節(jié)點。步驟序列:1) 點擊“駁回”按鈕。2) 系統(tǒng)自動保存公文內容,并獲取前節(jié)點。3) 進入前節(jié)點界面,如果當前節(jié)點為并節(jié)點,用戶必須選擇前發(fā)送節(jié)點。4) 系統(tǒng)彈出確認框,點擊確認。5) 相應前節(jié)點被通知,返回主界面。 跟蹤流程狀態(tài)參與者:普通用戶前置條件:已經(jīng)登錄。后置條件:進入了跟蹤流程狀態(tài)界面。步驟序列:1) 點擊導航菜單中的“查看流程狀態(tài)”鏈接。2) 選擇“已辦理流程”或者“未辦理流程”3) 進入流程列表界面,列出由相應的流程信息,包括序號、流程名稱、發(fā)起者、當前狀態(tài)、啟動時間。4) 選擇要查看的流程,點擊“查看狀態(tài)”5) 進入狀態(tài)跟蹤界面,顯示該流程當前狀態(tài)信息(流程名稱、發(fā)起者、當前狀態(tài))、已完成節(jié)點信息(節(jié)點名稱、辦理人、辦理時間)、當前處理節(jié)點信息(節(jié)點名稱、辦理人、狀態(tài)、接收時間)。 4 設計本章結合工作流引擎的關鍵技術,給出了關鍵功能的時序圖設計和數(shù)據(jù)庫物理模型,并就OAworkflow引擎的路由機制、文件權限、實時通知以及不同業(yè)務文件存儲問題等需求提出了解決方案。 時序圖 執(zhí)行工作項 提交任務
點擊復制文檔內容
環(huán)評公示相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1