天天看點

activiti自定義流程之整合(七):完成我的申請任務

在上一篇的獲得我的申請中,可以看到js代碼中還包含了預覽和完成任務的代碼,既然上一篇已經羅列了相關代碼,這裡也就不重複。

那麼需要補充的是,在上邊的完成任務的js代碼中,我們還調用了gettaskform請求,目的是從背景擷取送出任務時的其他資料,例如指定下一個處理人等,當然了,根據不同的業務邏輯可能有所變化。

那麼這個請求對應的背景代碼如下,如果弄明白了整個資料庫的設計,那麼對于這些代碼就很容易明白。

這裡邊的findformbyformname方法在前邊的章節中講過,就是很簡單的根據一個字段查詢整條記錄的操作。

那麼這裡補充的說明完了,下一步就是送出申請,把任務交到下一個人的手上,也就是上邊的js中的complete.do請求,這個請求的背景代碼如下:

因為這一個完成任務的方法和之後處理别人送出給自己的任務方法共用了,是以我便同時列出查詢别人送出給我的任務的背景代碼,如下:

我覺得這裡邊最重要的便是如何判斷究竟是别人送出給我的,還是我自己申請的任務,而這裡邊如果用流程節點flowelevent來判斷的話,會出現一些問題,因為我操作的過程中發現,當一個任務後便的連線不唯一時,各個節點的順序也是不固定的,endevent并不一定就在最後邊,是以還需要從其他的地方進行判斷。

如果有需要了解的朋友,可以把之前的那個我的申請清單的代碼和這個一起拿到eclipse中對比一下,然後大概就能了解個七七八八了。

那麼對于我的任務,也就是别人送出給我的任務清單,其相關的前端代碼,與我的申請的前端代碼非常類似,我也就不列出了。

還有之後的曆史任務等等,也都可以結合之前的内容,隻要了解了流程節點的結構,以及各個表的關聯關系,那麼簡單實作自定義應該就不是太難。難得就是真正的要邏輯非常缜密,然後更加智能。

繼續閱讀