public IHttpActionResult GetActiveActivitiesByReferenceIdAndEnvironment(Guid referenceId, DSWEnvironmentType type) { return(CommonHelpers.ActionHelper.TryCatchWithLoggerGeneric(() => { IQueryable <WorkflowActivity> workflowActivity = _unitOfWork.Repository <WorkflowActivity>().GetActiveActivitiesByReferenceIdAndEnvironment(referenceId, type); return Ok(workflowActivity); }, _logger, LogCategories)); }
public static IQueryable <RoleUser> GetByAuthorizationType(this IRepository <RoleUser> repository, ICollection <string> roleUserTypes, short roleId, DSWEnvironmentType environment) { return(repository.Queryable(true) .Where(f => f.Role.EntityShortId == roleId && f.Enabled.HasValue && f.Enabled.Value == true && f.DSWEnvironment == environment && f.IsMainRole.HasValue && f.IsMainRole == true) .Where(f => roleUserTypes.Contains(f.Type.ToUpper()))); }
public static RoleUser GetFirstHierarchySigner(this IRepository <RoleUser> repository, string fullIncrementalPath, DSWEnvironmentType environment) { string[] tokens = fullIncrementalPath.Split('|'); List <RoleUser> results = new List <RoleUser>(); for (int i = tokens.Length - 1; i >= 0; i--) { results.AddRange(GetByAuthorizationType(repository, RoleUserType.Manager, short.Parse(tokens[i]), environment).ToList()); if (results.Any()) { return(results.First()); } } return(null); }
public static IQueryable <RoleUser> GetByAuthorizationType(this IRepository <RoleUser> repository, string roleUserType, short roleId, DSWEnvironmentType environment) { return(GetByAuthorizationType(repository, new List <string>() { roleUserType }, roleId, environment)); }
public static IQueryable <WorkflowActivity> GetActiveActivitiesByReferenceIdAndEnvironment(this IRepository <WorkflowActivity> repository, Guid referenceId, DSWEnvironmentType type) { switch (type) { case DSWEnvironmentType.Dossier: return(repository.Query(x => x.WorkflowInstance.Dossiers.Any(y => y.UniqueId == referenceId && (x.Status == WorkflowStatus.Progress || x.Status == WorkflowStatus.Todo)), optimization: true) .SelectAsQueryable()); case DSWEnvironmentType.Fascicle: return(repository.Query(x => x.WorkflowInstance.Fascicles.Any(y => y.UniqueId == referenceId && (x.Status == WorkflowStatus.Progress || x.Status == WorkflowStatus.Todo)), optimization: true) .SelectAsQueryable()); default: ICollection <WorkflowActivity> emptyActivity = new List <WorkflowActivity>(); return(emptyActivity.AsQueryable()); } }