public void ServerToClient(IWfMainStreamActivityDescriptor server, ref WfClientMainStreamActivityDescriptor client) { server.NullCheck("server"); WfClientActivityDescriptor clientActDesp = null; WfClientActivityDescriptorConverter.Instance.ServerToClient((WfActivityDescriptor)server.Activity, ref clientActDesp); if (client == null) { client = new WfClientMainStreamActivityDescriptor(clientActDesp); } client.Level = server.Level; foreach (WfActivityDescriptor actDesp in server.AssociatedActivities) { WfClientActivityDescriptor cad = null; WfClientActivityDescriptorConverter.Instance.ServerToClient(actDesp, ref cad); client.AssociatedActivities.Add(cad); } FillStatusAndAssignees(client, server); }
private static void FillStatusAndAssignees(WfClientMainStreamActivityDescriptor client, IWfMainStreamActivityDescriptor server) { IWfActivity actInstance = server.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(server.Activity.Key); if (actInstance != null) { client.Status = actInstance.Status.ToClientActivityStatus(); client.Elapsed = server.Elapsed; client.ActivityInstanceID = actInstance.ID; client.Operator = (WfClientUser)actInstance.Operator.ToClientOguObject(); client.BranchProcessGroupsCount = actInstance.BranchProcessGroups.Count; client.FromTransitionDescriptor = ConvertServerTransitionToClient(actInstance.FromTransitionDescriptor); client.ToTransitionDescriptor = ConvertServerTransitionToClient(actInstance.ToTransitionDescriptor); if (actInstance.Assignees.Count != 0) { WfClientAssigneeCollectionConverter.Instance.ServerToClient(actInstance.Assignees, client.Assignees); } else { WfAssigneeCollection candidates = actInstance.Candidates.GetSelectedAssignees(); WfClientAssigneeCollectionConverter.Instance.ServerToClient(candidates, client.Assignees); } } }
private Control GetActivityPeopleNameDisplayControl(IWfActivity wfActivity, IWfMainStreamActivityDescriptor mainStreamActivity) { Control userNames = null; if (wfActivity.Operator != null && wfActivity.Status != WfActivityStatus.NotRunning) { userNames = GetUserNameControl(wfActivity.Operator); } else if (wfActivity.Assignees.Count != 0) { userNames = GetCandidatesOrAssigneesControl(wfActivity.Assignees, mainStreamActivity.Activity.Name); } else { WfAssigneeCollection candidates = wfActivity.Candidates.GetSelectedAssignees(); if (candidates.Count != 0) { userNames = GetCandidatesOrAssigneesControl(candidates, mainStreamActivity.Activity.Name); } else { userNames = new HtmlGenericControl("span") { InnerText = string.Empty } }; } return(userNames); }
private string GetActivityTooltipText(IWfMainStreamActivityDescriptor mainStreamActivity) { IWfActivity wfActivity = mainStreamActivity.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(mainStreamActivity.Activity.Key); return(GetActivityPeopleNameDisplayText(wfActivity, mainStreamActivity)); }
private void GenerateStepUsers(IWfMainStreamActivityDescriptor msActivity, Control container) { IWfProcess process = msActivity.Activity.Process.ProcessInstance; if (process != null) { IWfActivity activity = process.Activities.FindActivityByDescriptorKey(msActivity.Activity.Key); RenderActivityUsers(activity.Candidates.GetSelectedAssignees().ToUsers(), msActivity, container); } }
private void GenerateStepUsers(IWfMainStreamActivityDescriptor msActivity, Control container) { IWfProcess process = msActivity.Activity.Process.ProcessInstance; if (process != null) { IWfActivity activity = process.Activities.FindActivityByDescriptorKey(msActivity.Activity.Key); RenderActivityUsers(activity.Candidates.GetSelectedAssignees().ToUsers(), msActivity, container); } }
private void RenderActivity(HtmlTableCell actCell, IWfMainStreamActivityDescriptor msActDesp) { HtmlGenericControl actName = new HtmlGenericControl("div"); actName.Attributes["class"] = "actName"; actName.InnerText = msActDesp.Activity.Name; actCell.Controls.Add(actName); bool bGenerateUsers = ShowStepUsers == ShowStepUsersDefine.All; if (!bGenerateUsers) bGenerateUsers = (CurrentStepIsDrafter || WfClientContext.Current.InAdminMode); if (bGenerateUsers) GenerateStepUsers(msActDesp, actCell); }
private Control GetActivityDisplayControl(IWfMainStreamActivityDescriptor mainStreamActivity) { Control result = null; IWfActivity wfActivity = mainStreamActivity.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(mainStreamActivity.Activity.Key); if (NeedToShowActivityName(mainStreamActivity.Activity)) { result = new LiteralControl(HttpUtility.HtmlEncode(mainStreamActivity.Activity.Name)); } else { result = GetActivityPeopleNameDisplayControl(wfActivity, mainStreamActivity); } return(result); }
private void RenderActivity(HtmlTableCell actCell, IWfMainStreamActivityDescriptor msActDesp) { HtmlGenericControl actName = new HtmlGenericControl("div"); actName.Attributes["class"] = "actName"; actName.InnerText = msActDesp.Activity.Name; actCell.Controls.Add(actName); bool bGenerateUsers = ShowStepUsers == ShowStepUsersDefine.All; if (!bGenerateUsers) { bGenerateUsers = (CurrentStepIsDrafter || WfClientContext.Current.InAdminMode); } if (bGenerateUsers) { GenerateStepUsers(msActDesp, actCell); } }
public void ServerToClient(IWfMainStreamActivityDescriptor server, ref WfClientMainStreamActivityDescriptor client) { server.NullCheck("server"); WfClientActivityDescriptor clientActDesp = null; WfClientActivityDescriptorConverter.Instance.ServerToClient((WfActivityDescriptor)server.Activity, ref clientActDesp); if (client == null) client = new WfClientMainStreamActivityDescriptor(clientActDesp); client.Level = server.Level; foreach (WfActivityDescriptor actDesp in server.AssociatedActivities) { WfClientActivityDescriptor cad = null; WfClientActivityDescriptorConverter.Instance.ServerToClient(actDesp, ref cad); client.AssociatedActivities.Add(cad); } FillStatusAndAssignees(client, server); }
private string GetActivityPeopleNameDisplayText(IWfActivity wfActivity, IWfMainStreamActivityDescriptor mainStreamActivity) { string result = string.Empty; if (wfActivity.Operator != null && wfActivity.Status != WfActivityStatus.NotRunning) { result = wfActivity.Operator.DisplayName; } else if (wfActivity.Assignees.Count != 0) { result = GetCandidatesOrAssigneesText(wfActivity.Assignees, mainStreamActivity.Activity.Name); } else { WfAssigneeCollection candidates = wfActivity.Candidates.GetSelectedAssignees(); if (candidates.Count != 0) { result = GetCandidatesOrAssigneesText(candidates, mainStreamActivity.Activity.Name); } } return(result); }
private void RenderLevelOpinionsPlaceHolders(HtmlTableCell opinionCell, IWfMainStreamActivityDescriptor msActDesp) { IWfActivityDescriptor nextStepSelectorActDesp = WfClientContext.Current.OriginalCurrentActivity.Descriptor; RenderLevelOpinionsPlaceHolders( opinionCell, msActDesp.Activity, GetInputActivityDescriptorFromGroup(msActDesp), nextStepSelectorActDesp); }
private IWfActivityDescriptor GetInputActivityDescriptorFromGroup(IWfMainStreamActivityDescriptor msActDesp) { IWfActivityDescriptor result = null; if (CanActivityInputOpinion(msActDesp.Activity) == false) { foreach (IWfActivityDescriptor actDesp in msActDesp.AssociatedActivities) { if (CanActivityInputOpinion(actDesp)) { result = actDesp; break; } } } else result = msActDesp.Activity; return result; }
private string GetActivityPeopleNameDisplayText(IWfActivity wfActivity, IWfMainStreamActivityDescriptor mainStreamActivity) { string result = string.Empty; if (wfActivity.Operator != null && wfActivity.Status != WfActivityStatus.NotRunning) { result = wfActivity.Operator.DisplayName; } else if (wfActivity.Assignees.Count != 0) { result = GetCandidatesOrAssigneesText(wfActivity.Assignees, mainStreamActivity.Activity.Name); } else { WfAssigneeCollection candidates = wfActivity.Candidates.GetSelectedAssignees(); if (candidates.Count != 0) result = GetCandidatesOrAssigneesText(candidates, mainStreamActivity.Activity.Name); } return result; }
private Control GetActivityPeopleNameDisplayControl(IWfActivity wfActivity, IWfMainStreamActivityDescriptor mainStreamActivity) { Control userNames = null; if (wfActivity.Operator != null && wfActivity.Status != WfActivityStatus.NotRunning) { userNames = GetUserNameControl(wfActivity.Operator); } else if (wfActivity.Assignees.Count != 0) { userNames = GetCandidatesOrAssigneesControl(wfActivity.Assignees, mainStreamActivity.Activity.Name); } else { WfAssigneeCollection candidates = wfActivity.Candidates.GetSelectedAssignees(); if (candidates.Count != 0) userNames = GetCandidatesOrAssigneesControl(candidates, mainStreamActivity.Activity.Name); else userNames = new HtmlGenericControl("span") { InnerText = string.Empty }; } return userNames; }
private void RenderActivityUsers(IEnumerable<IUser> users, IWfMainStreamActivityDescriptor msActivity, Control container) { foreach (IUser user in users) { bool showUserInfo = false; if (TitleShowMode == UserTitleShowMode.ShowActivityNameAndTitle) showUserInfo = true; else { if (TitleShowMode == UserTitleShowMode.ShowUserTitleWhenActivityNameEmpty) showUserInfo = string.IsNullOrEmpty(msActivity.Activity.Name); } if (showUserInfo) { HtmlGenericControl userTitle = new HtmlGenericControl("div"); try { string titleText = string.Empty; string deptName = string.Empty; if ((TitleShowMode & UserTitleShowMode.ShowDepartmentName) != UserTitleShowMode.None) deptName = GetUserDepartmentName(user); if (string.IsNullOrEmpty(user.Occupation)) titleText = deptName; else titleText = deptName.IsNotEmpty() ? deptName + "/" + user.Occupation : user.Occupation; userTitle.InnerText = titleText; if ((int)user.Properties.GetValue("STATUS", 1) != 1) { userTitle.Attributes["title"] = string.Format("{0} {1}", titleText, Translator.Translate(Define.DefaultCulture, "帐号已注销") + ". " + Translator.Translate(Define.DefaultCulture, "请联系管理员调整流程")); } else { userTitle.Attributes["class"] = "opDept"; } } catch (System.Exception) { userTitle.Attributes["title"] = Translator.Translate(Define.DefaultCulture, "人员信息有误") + "." + Translator.Translate(Define.DefaultCulture, "请联系管理员调整流程"); } container.Controls.Add(userTitle); } HtmlGenericControl userName = new HtmlGenericControl("div"); userName.Attributes["class"] = "opName"; if (this.EnableUserPresence) { UserPresence presence = new UserPresence(); presence.UserID = user.ID; presence.UserDisplayName = user.DisplayName; userName.Controls.Add(presence); } else userName.InnerText = user.DisplayName; container.Controls.Add(userName); } }
private void RenderActivityUsers(IEnumerable <IUser> users, IWfMainStreamActivityDescriptor msActivity, Control container) { foreach (IUser user in users) { bool showUserInfo = false; if (TitleShowMode == UserTitleShowMode.ShowActivityNameAndTitle) { showUserInfo = true; } else { if (TitleShowMode == UserTitleShowMode.ShowUserTitleWhenActivityNameEmpty) { showUserInfo = string.IsNullOrEmpty(msActivity.Activity.Name); } } if (showUserInfo) { HtmlGenericControl userTitle = new HtmlGenericControl("div"); try { string titleText = string.Empty; string deptName = string.Empty; if ((TitleShowMode & UserTitleShowMode.ShowDepartmentName) != UserTitleShowMode.None) { deptName = GetUserDepartmentName(user); } if (string.IsNullOrEmpty(user.Occupation)) { titleText = deptName; } else { titleText = deptName.IsNotEmpty() ? deptName + "/" + user.Occupation : user.Occupation; } userTitle.InnerText = titleText; if ((int)user.Properties.GetValue("STATUS", 1) != 1) { userTitle.Attributes["title"] = string.Format("{0} {1}", titleText, Translator.Translate(Define.DefaultCulture, "帐号已注销") + ". " + Translator.Translate(Define.DefaultCulture, "请联系管理员调整流程")); } else { userTitle.Attributes["class"] = "opDept"; } } catch (System.Exception) { userTitle.Attributes["title"] = Translator.Translate(Define.DefaultCulture, "人员信息有误") + "." + Translator.Translate(Define.DefaultCulture, "请联系管理员调整流程"); } container.Controls.Add(userTitle); } HtmlGenericControl userName = new HtmlGenericControl("div"); userName.Attributes["class"] = "opName"; if (this.EnableUserPresence) { UserPresence presence = new UserPresence(); presence.UserID = user.ID; presence.UserDisplayName = user.DisplayName; userName.Controls.Add(presence); } else { userName.InnerText = user.DisplayName; } container.Controls.Add(userName); } }
private string GetActivityTooltipText(IWfMainStreamActivityDescriptor mainStreamActivity) { IWfActivity wfActivity = mainStreamActivity.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(mainStreamActivity.Activity.Key); return GetActivityPeopleNameDisplayText(wfActivity, mainStreamActivity); }
private static void FillStatusAndAssignees(WfClientMainStreamActivityDescriptor client, IWfMainStreamActivityDescriptor server) { IWfActivity actInstance = server.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(server.Activity.Key); if (actInstance != null) { client.Status = actInstance.Status.ToClientActivityStatus(); client.Elapsed = server.Elapsed; client.ActivityInstanceID = actInstance.ID; client.Operator = (WfClientUser)actInstance.Operator.ToClientOguObject(); client.BranchProcessGroupsCount = actInstance.BranchProcessGroups.Count; client.FromTransitionDescriptor = ConvertServerTransitionToClient(actInstance.FromTransitionDescriptor); client.ToTransitionDescriptor = ConvertServerTransitionToClient(actInstance.ToTransitionDescriptor); if (actInstance.Assignees.Count != 0) { WfClientAssigneeCollectionConverter.Instance.ServerToClient(actInstance.Assignees, client.Assignees); } else { WfAssigneeCollection candidates = actInstance.Candidates.GetSelectedAssignees(); WfClientAssigneeCollectionConverter.Instance.ServerToClient(candidates, client.Assignees); } } }
private Control GetActivityDisplayControl(IWfMainStreamActivityDescriptor mainStreamActivity) { Control result = null; IWfActivity wfActivity = mainStreamActivity.Activity.ProcessInstance.Activities. FindActivityByDescriptorKey(mainStreamActivity.Activity.Key); if (NeedToShowActivityName(mainStreamActivity.Activity)) result = new LiteralControl(HttpUtility.HtmlEncode(mainStreamActivity.Activity.Name)); else result = GetActivityPeopleNameDisplayControl(wfActivity, mainStreamActivity); return result; }