protected List <WindowsUser> GetUser(List <string> lstUserName) { List <WindowsUser> lstUser = new List <WindowsUser>(); WindowsUser target_user = null; Models.TaskInstance taskInstance = null; foreach (string user_name in lstUserName) { switch (user_name) { case DelegateBackToOwner: if (CurrentTask != null) { target_user = WindowsUser.GetWindowsUser(CurrentTask.entry_author); if (target_user.IsValid) { lstUser.Add(target_user); } } break; case DelegateBackToPreviousPerson: taskInstance = FindLatestInstance(STATUS_REQUEST); if (taskInstance == null && CurrentUser is WindowsUser) { lstUser.Add(CurrentUser as WindowsUser); } else { target_user = WindowsUser.GetWindowsUser(taskInstance.entry_author); if (target_user.IsValid) { lstUser.Add(target_user); } } break; case ProposeToDestination: taskInstance = FindLatestInstance(STATUS_REQUEST); if (taskInstance != null) { List <Models.TaskSubmitInformation> taskSubmitList = LoadSubmitInformation(taskInstance); foreach ( TaskSubmitInformation taskSubmit in taskSubmitList) { target_user = WindowsUser.GetWindowsUser(taskSubmit.submit_to); if (target_user.IsValid && lstUser.Contains(target_user) == false) { lstUser.Add(target_user); } } } break; case ProposeToOwner: taskInstance = FindLatestInstance(STATUS_REQUEST); if (taskInstance != null) { target_user = WindowsUser.GetWindowsUser(taskInstance.entry_author); if (target_user.IsValid && lstUser.Contains(target_user) == false) { lstUser.Add(target_user); } } break; default: target_user = WindowsUser.GetWindowsUser(user_name); if (target_user.IsValid && lstUser.Contains(target_user) == false) { lstUser.Add(target_user); } break; } } return(lstUser); }
protected List <Models.TaskSubmitInformation> LoadSubmitInformation(Models.TaskInstance taskInstance) { return(GyomuDataAccess.SelectTaskSubmitInformation(taskInstance)); }