public class WorkflowInstanceDao extends java.lang.Object implements Initializable
| Constructor and Description | 
|---|
WorkflowInstanceDao()  | 
| Modifier and Type | Method and Description | 
|---|---|
void | 
changeActiveGroup(java.lang.String instanceId,
                 java.lang.String flowNodeId,
                 java.lang.String oldGroup,
                 java.lang.String newGroup)
アクティブグループタスクを別のグループに変更する。
 
 変更対象のアクティブグループタスクが存在しない場合は、本処理は何もしない。 
 | 
void | 
changeActiveUser(java.lang.String instanceId,
                java.lang.String flowNodeId,
                java.lang.String oldUser,
                java.lang.String newUser)
アクティブユーザタスクの情報を別のユーザに変更する。
 
 変更対象のアクティブユーザタスクが存在しない場合は、本処理は何もしない。 
 | 
void | 
changeAssignedGroup(java.lang.String instanceId,
                   java.lang.String flowNodeId,
                   java.lang.String oldGroup,
                   java.lang.String newGroup)
タスク担当グループを別のグループに変更する。
 
 変更対象のタスク担当グループが存在しない場合は、本処理は何もしない。 
 | 
void | 
changeAssignedUser(java.lang.String instanceId,
                  java.lang.String flowNodeId,
                  java.lang.String oldUser,
                  java.lang.String newUser)
タスク担当ユーザを別のユーザに変更する。
 
 変更対象のタスク担当ユーザが存在しない場合は、本処理は何もしない。 
 | 
java.lang.String | 
createWorkflowInstance(java.lang.String workflowId,
                      int version,
                      java.util.List<Task> tasks)
ワークフローインスタンの進行状態を登録する。 
 | 
void | 
deleteActiveGroupTaskByGroupId(java.lang.String instanceId,
                              java.lang.String flowNodeId,
                              java.lang.String groupId)
アクティブグループタスクテーブルから引数で指定された条件に紐づくグループ情報を削除する。 
 | 
void | 
deleteActiveUserTaskByUserId(java.lang.String instanceId,
                            java.lang.String flowNodeId,
                            java.lang.String user)
アクティブユーザタスクテーブルからデータを削除する。
 
 削除条件は以下のとおり
 
 インスタンスID
 フローノードID
 ユーザ
  
 | 
void | 
deleteInstance(java.lang.String instanceId)
インスタンスIDに紐づくデータを全て削除する。 
 | 
ActiveFlowNodeEntity | 
findActiveFlowNode(java.lang.String instanceId)
アクティブフローノードを取得する。 
 | 
java.util.List<ActiveGroupTaskEntity> | 
findActiveGroupTask(java.lang.String instanceId)
インスタンスIDに紐づくアクティブグループタスクを取得する。 
 | 
ActiveGroupTaskEntity | 
findActiveGroupTaskByPk(java.lang.String instanceId,
                       java.lang.String flowNodeId,
                       java.lang.String group)
グループID指定でアクティブグループタスクを取得する。
 
 指定したグループに対応するアクティブグループタスクが存在しない場合は、nullを返却する。 
 | 
java.util.List<ActiveUserTaskEntity> | 
findActiveUserTask(java.lang.String instanceId)
アクティブユーザタスクを取得する。 
 | 
ActiveUserTaskEntity | 
findActiveUserTaskByPk(java.lang.String user,
                      java.lang.String flowNodeId,
                      java.lang.String instanceId)
ユーザID指定でアクティブユーザタスクを取得する。
 
 指定したユーザに対応するアクティブユーザタスクが存在しない場合は、nullを返却する。 
 | 
WorkflowInstanceEntity | 
findInstance(java.lang.String instanceId)
インスタンスIDに紐づくインスタンス情報を取得する。 
 | 
java.util.List<TaskAssignedGroupEntity> | 
findTaskAssignedGroup(java.lang.String instanceId,
                     java.lang.String flowNodeId)
インスタンスIDとフローノードIDに紐づく担当グループ情報を取得する。 
 | 
java.util.List<TaskAssignedUserEntity> | 
findTaskAssignedUser(java.lang.String instanceId,
                    java.lang.String flowNodeId)
インスタンスIDとフローノードIDに紐づく担当ユーザ情報を取得する。 
 | 
int | 
getActiveGroupTaskCount(java.lang.String instanceId)
アクティブグループタスク数を取得する。 
 | 
int | 
getActiveGroupTaskCountByPk(java.lang.String instanceId,
                           java.lang.String flowNodeId,
                           java.lang.String group)
担当グループを指定して、アクティブグループタスク数を取得する。 
 | 
int | 
getActiveUserTaskCount(java.lang.String instanceId)
アクティブユーザタスク数を取得する。 
 | 
int | 
getActiveUserTaskCountByPk(java.lang.String instanceId,
                          java.lang.String flowNodeId,
                          java.lang.String user)
担当ユーザを指定して、アクティブユーザタスク数を取得する。 
 | 
int | 
getTaskAssignedGroupCount(java.lang.String instanceId,
                         java.lang.String flowNodeId)
タスク担当グループ数を取得する。 
 | 
int | 
getTaskAssignedUserCount(java.lang.String instanceId,
                        java.lang.String flowNodeId)
タスク担当ユーザ数を取得する。 
 | 
void | 
initialize()
初期化処理を行う。 
 | 
void | 
saveActiveFlowNode(java.lang.String instanceId,
                  FlowNode flowNode)
アクティブなフローノードの状態を登録する。
 
 すでにインスタンスIDに対応するアクティブなノードが登録されていた場合には、
 その情報を削除後に登録を行う。 
 | 
void | 
saveActiveGroupTask(java.lang.String instanceId,
                   java.lang.String flowNodeId,
                   java.util.List<java.lang.String> groups)
アクティブグループタスクテーブルにグループ情報を登録する。
 
 インスタンスIDに紐づくデータが既に登録されていた場合には、そのデータを削除後に登録処理を行う。 
 | 
void | 
saveActiveGroupTask(java.lang.String instanceId,
                   java.lang.String flowNodeId,
                   java.lang.String group,
                   int executionOrder)
アクティブグループタスクテーブルにグループ情報を登録する。
 
 インスタンスIDに紐づくデータが既に登録されていた場合には、そのデータを削除後に登録処理を行う。 
 | 
void | 
saveActiveUserTask(java.lang.String instanceId,
                  java.lang.String flowNodeId,
                  java.util.List<java.lang.String> users)
アクティブユーザタスクテーブルにユーザ情報を登録する。
 
 インスタンスIDに紐づくデータが既に登録されていた場合には、そのデータを削除後に登録処理を行う。 
 | 
void | 
saveActiveUserTask(java.lang.String instanceId,
                  java.lang.String flowNodeId,
                  java.lang.String user,
                  int executionOrder)
アクティブユーザタスクテーブルにユーザ情報を登録する。
 
 インスタンスIDに紐づくデータが既に登録されていた場合には、そのデータを削除後に登録処理を行う。 
 | 
void | 
saveAssignedGroup(java.lang.String instanceId,
                 java.lang.String flowNodeId,
                 java.util.List<java.lang.String> group)
担当グループを登録する。
 
 グループ情報がすでに登録されていた場合は、洗い替えを行う。
 また、同一フローノードに割り当てられた担当者情報の削除処理も行う。 
 | 
void | 
saveAssignedSequentialGroup(java.lang.String instanceId,
                           java.lang.String flowNodeId,
                           java.util.List<java.lang.String> groups)
指定された順を実行順として担当グループを登録する。
 
 グループ情報がすでに登録されていた場合は、洗い替えを行う。
 また、同一フローノードに割り当てられた担当者情報の削除処理も行う。 
 | 
void | 
saveAssignedSequentialUser(java.lang.String instanceId,
                          java.lang.String flowNodeId,
                          java.util.List<java.lang.String> users)
指定された順を実行順として担当者を登録する。
 
 担当者情報がすでに登録されていた場合は、洗い替えを行う。
 また、同一フローノードに割り当てられたグループ情報の削除処理も行う。 
 | 
void | 
saveAssignedUser(java.lang.String instanceId,
                java.lang.String flowNodeId,
                java.util.List<java.lang.String> users)
担当者を登録する。
 
 担当者情報がすでに登録されていた場合は、洗い替えを行う。
 また、同一フローノードに割り当てられたグループ情報の削除処理も行う。 
 | 
void | 
setInstanceIdGenerateId(java.lang.String instanceIdGenerateId)
インスタンスIDを採番する際に使用する採番対象IDを設定する。 
 | 
void | 
setInstanceIdGenerator(IdGenerator instanceIdGenerator)
インスタンスIDを採番するジェネレーターを設定する。 
 | 
void | 
setInstanceIdLength(int instanceIdLength)
インスタンスIDの桁数を設定する。
 
 インスタンスIDは、指定された桁数となるよう先頭に"0"を付加する。
 設定を省略した場合は、10桁のインスタンスIDが採番される。 
 | 
void | 
setWorkflowInstanceSchema(WorkflowInstanceSchema workflowInstanceSchema)
ワークフローインスタンステーブルの定義情報を設定する。 
 | 
public java.lang.String createWorkflowInstance(java.lang.String workflowId,
                                               int version,
                                               java.util.List<Task> tasks)
workflowId - ワークフローIDversion - バージョンtasks - タスクリストpublic void saveAssignedUser(java.lang.String instanceId,
                             java.lang.String flowNodeId,
                             java.util.List<java.lang.String> users)
instanceId - インスタンスIDflowNodeId - フローノードIDusers - ユーザ情報public void saveAssignedSequentialUser(java.lang.String instanceId,
                                       java.lang.String flowNodeId,
                                       java.util.List<java.lang.String> users)
instanceId - インスタンスIDflowNodeId - フローノードIDusers - ユーザ情報public void saveAssignedGroup(java.lang.String instanceId,
                              java.lang.String flowNodeId,
                              java.util.List<java.lang.String> group)
instanceId - インスタンスIDflowNodeId - フローノードIDgroup - グループpublic void saveAssignedSequentialGroup(java.lang.String instanceId,
                                        java.lang.String flowNodeId,
                                        java.util.List<java.lang.String> groups)
instanceId - インスタンスIDflowNodeId - フローノードIDgroups - グループ情報public void saveActiveFlowNode(java.lang.String instanceId,
                               FlowNode flowNode)
instanceId - インスタンスIDflowNode - アクティブなフローノードpublic void saveActiveUserTask(java.lang.String instanceId,
                               java.lang.String flowNodeId,
                               java.util.List<java.lang.String> users)
instanceId - インスタンスIDflowNodeId - フローノードIDusers - 登録対象のユーザ情報public void deleteActiveUserTaskByUserId(java.lang.String instanceId,
                                         java.lang.String flowNodeId,
                                         java.lang.String user)
instanceId - インスタンスIDflowNodeId - フローノードIDuser - ユーザpublic void saveActiveUserTask(java.lang.String instanceId,
                               java.lang.String flowNodeId,
                               java.lang.String user,
                               int executionOrder)
instanceId - インスタンスIDflowNodeId - フローノードIDuser - 登録対象のユーザ情報executionOrder - 実行順public void saveActiveGroupTask(java.lang.String instanceId,
                                java.lang.String flowNodeId,
                                java.util.List<java.lang.String> groups)
instanceId - インスタンスIdflowNodeId - フローノードIDgroups - グループ情報public void saveActiveGroupTask(java.lang.String instanceId,
                                java.lang.String flowNodeId,
                                java.lang.String group,
                                int executionOrder)
instanceId - インスタンスIDflowNodeId - フローノードIDgroup - 登録対象のグループ情報executionOrder - 実行順public void deleteActiveGroupTaskByGroupId(java.lang.String instanceId,
                                           java.lang.String flowNodeId,
                                           java.lang.String groupId)
instanceId - インスタンスIDflowNodeId - フローノードIDgroupId - グループIDpublic void changeAssignedUser(java.lang.String instanceId,
                               java.lang.String flowNodeId,
                               java.lang.String oldUser,
                               java.lang.String newUser)
instanceId - インスタンスIDflowNodeId - フローノード(タスク)IDoldUser - 元グループnewUser - 新しいグループpublic void changeActiveUser(java.lang.String instanceId,
                             java.lang.String flowNodeId,
                             java.lang.String oldUser,
                             java.lang.String newUser)
instanceId - インスタンスIDflowNodeId - フローノードIDoldUser - 元ユーザnewUser - 新しいユーザpublic void changeAssignedGroup(java.lang.String instanceId,
                                java.lang.String flowNodeId,
                                java.lang.String oldGroup,
                                java.lang.String newGroup)
instanceId - インスタンスIDflowNodeId - フローノード(タスク)IDoldGroup - 元グループnewGroup - 新しいグループpublic void changeActiveGroup(java.lang.String instanceId,
                              java.lang.String flowNodeId,
                              java.lang.String oldGroup,
                              java.lang.String newGroup)
instanceId - インスタンスIDflowNodeId - フローノード(タスク)IDoldGroup - 元グループnewGroup - 新しいグループpublic void deleteInstance(java.lang.String instanceId)
instanceId - インスタンスIDpublic WorkflowInstanceEntity findInstance(java.lang.String instanceId)
instanceId - インスタンスIDpublic java.util.List<TaskAssignedUserEntity> findTaskAssignedUser(java.lang.String instanceId, java.lang.String flowNodeId)
instanceId - インスタンスIDflowNodeId - フローノードIDpublic java.util.List<TaskAssignedGroupEntity> findTaskAssignedGroup(java.lang.String instanceId, java.lang.String flowNodeId)
instanceId - インスタンスIDflowNodeId - フローノードIDpublic ActiveFlowNodeEntity findActiveFlowNode(java.lang.String instanceId)
instanceId - インスタンスIDpublic java.util.List<ActiveUserTaskEntity> findActiveUserTask(java.lang.String instanceId)
instanceId - インスタンスIDpublic ActiveUserTaskEntity findActiveUserTaskByPk(java.lang.String user, java.lang.String flowNodeId, java.lang.String instanceId)
user - ユーザflowNodeId - フローノードIDinstanceId - インスタンスIDpublic java.util.List<ActiveGroupTaskEntity> findActiveGroupTask(java.lang.String instanceId)
instanceId - インスタンスIDpublic ActiveGroupTaskEntity findActiveGroupTaskByPk(java.lang.String instanceId, java.lang.String flowNodeId, java.lang.String group)
instanceId - インスタンスIDflowNodeId - フローノードIDgroup - グループpublic int getActiveUserTaskCount(java.lang.String instanceId)
instanceId - インスタンスIDpublic int getActiveUserTaskCountByPk(java.lang.String instanceId,
                                      java.lang.String flowNodeId,
                                      java.lang.String user)
instanceId - インスタンスIDflowNodeId - フローノードuser - 担当ユーザpublic int getTaskAssignedUserCount(java.lang.String instanceId,
                                    java.lang.String flowNodeId)
instanceId - インスタンスIDflowNodeId - フローノードIDpublic int getActiveGroupTaskCount(java.lang.String instanceId)
instanceId - インスタンスIDpublic int getActiveGroupTaskCountByPk(java.lang.String instanceId,
                                       java.lang.String flowNodeId,
                                       java.lang.String group)
instanceId - インスタンスIDflowNodeId - フローノードgroup - 担当グループpublic int getTaskAssignedGroupCount(java.lang.String instanceId,
                                     java.lang.String flowNodeId)
instanceId - インスタンスIDflowNodeId - フローノードIDpublic void setWorkflowInstanceSchema(WorkflowInstanceSchema workflowInstanceSchema)
workflowInstanceSchema - ワークフローインスタンステーブルの定義情報public void setInstanceIdGenerator(IdGenerator instanceIdGenerator)
instanceIdGenerator - インスタンスIDを採番するジェネレーターpublic void setInstanceIdGenerateId(java.lang.String instanceIdGenerateId)
instanceIdGenerateId - インスタンスIDを採番する際に使用する採番対象IDIdGenerator}public void setInstanceIdLength(int instanceIdLength)
instanceIdLength - インスタンスIDの桁数public void initialize()
initialize in interface Initializable