本文整理汇总了C#中iSolutions.iApply.DataContract.Application.IsCreatedBy方法的典型用法代码示例。如果您正苦于以下问题:C# Application.IsCreatedBy方法的具体用法?C# Application.IsCreatedBy怎么用?C# Application.IsCreatedBy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类iSolutions.iApply.DataContract.Application
的用法示例。
在下文中一共展示了Application.IsCreatedBy方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: IsOrganisationEntitled
/// <summary>
/// Returns <see langword="true"/> if the user / session has the correct organisation
/// entitlements to view <paramref name="application"/>, otherwise returns
/// <see langword="false"/>.
/// </summary>
/// <param name="session">The user session.</param>
/// <param name="application">The application.</param>
/// <returns>
/// <see langword="true"/> if the user / session has the correct organisation
/// entitlements to view <paramref name="application"/>, otherwise <see langword="false"/>.
/// </returns>
private bool IsOrganisationEntitled(SecureSession session, Application application)
{
if (session == null || session.AuthenticatedUser == null)
{
// Have to assume public users are entitled to all orgs.
return true;
}
if (session.AuthenticatedUser != null && session.AuthenticatedUser.AccountType == AccountType.Service)
{
return true;
}
// Ignore org entitlements for originator and assignee.
string compareTo = this.GetSessionUserId(session);
if (application.IsCreatedBy(compareTo) || application.IsAssignedTo(compareTo))
{
return true;
}
return !string.IsNullOrEmpty(application.OrganisationId) && session.AuthenticatedUser.GetAllOrganisations().ContainsKey(application.OrganisationId);
}
示例2: DetermineRolesForUser
/// <summary>
/// Determines the applicable roles for <paramref name="session"/>.
/// </summary>
/// <param name="session">Contains session and user information used to determine access rights.</param>
/// <param name="roleList">The list of roles.</param>
/// <param name="application">The application, if relevant Defaults to <see langword="null"/>.</param>
/// <returns>The applicable roles for <paramref name="session"/>.</returns>
private Dictionary<string, string> DetermineRolesForUser(SecureSession session, RoleList roleList, Application application = null)
{
session = session ?? new SecureSession();
application = application ?? new Application();
Role publicRole = roleList.FirstOrDefault(r => r.SystemDefined && r.RoleName == SecurityConstants.PublicRoleName);
Dictionary<string, string> roleDict = publicRole == null ? new Dictionary<string, string>() : new Dictionary<string, string> { { publicRole.Id, publicRole.RoleName } };
string compareTo = this.GetSessionUserId(session);
if (application.IsCreatedBy(compareTo))
{
Role originatorRole = roleList.FirstOrDefault(r => r.SystemDefined && r.RoleName == SecurityConstants.OriginatorRoleName);
if (originatorRole != null)
{
roleDict.Add(originatorRole.Id, originatorRole.RoleName);
}
}
if (session.AuthenticatedUser == null)
{
return roleDict;
}
if (session.AuthenticatedUser.IsAdministrator())
{
foreach (var role in roleList)
{
if (roleDict.ContainsKey(role.Id))
{
continue;
}
roleDict.Add(role.Id, role.RoleName);
}
return roleDict;
}
foreach (var userRole in session.AuthenticatedUser.Roles)
{
if (roleList.Exists(role => role.Id == userRole.Key && role.Enabled))
{
roleDict.Add(userRole.Key, userRole.Value);
}
}
if (!string.IsNullOrEmpty(application.AssignedTo) && session.AuthenticatedUser.Id == application.AssignedTo)
{
Role assigneeRole = roleList.FirstOrDefault(r => r.SystemDefined && r.RoleName == SecurityConstants.AssigneeRoleName);
if (assigneeRole != null)
{
roleDict.Add(assigneeRole.Id, assigneeRole.RoleName);
}
}
return roleDict;
}