コード例 #1
0
 public ReportsController(ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger, IReportRunner reportRunner, IRecurringJobManager rjm, IBackgroundJobClient backgroundJobClient)
     : base(db, componentContext, cacher, logger)
 {
     this.ReportRunner        = reportRunner;
     this.RJM                 = rjm;
     this.BackgroundJobClient = backgroundJobClient;
 }
コード例 #2
0
ファイル: PortalHelpers.cs プロジェクト: lirizarry/FM-ULO
        internal static ICollection <Document> GetUniqueMissingLineageDocuments(this ULODBEntities db, Workflow wf, IEnumerable <int> otherWorkflowIds)
        {
            var others          = new List <int>(otherWorkflowIds);
            var otherDocsByName = db.Documents.Where(d => others.Contains(d.WorkflowId)).OrderByDescending(d => d.CreatedAtUtc).ToDictionaryOnConflictKeepLast(d => d.DocumentName, d => d);

            wf.Documents.ForEach(d => otherDocsByName.Remove(d.DocumentName));
            return(otherDocsByName.Values);
        }
コード例 #3
0
 public BackgroundTasks(IBackgroundJobClient backgroundJobClient, IEmailServer emailServer, ULODBEntities db, IWorkflowManager workflowManager, ILogger log)
 {
     BackgroundJobClient = backgroundJobClient;
     EmailServer         = emailServer;
     DB = db;
     WorkflowManager = workflowManager;
     Log             = log.ForContext(GetType());
 }
コード例 #4
0
 //TODO: Email on exception or let user know what happened
 public void CreateULOsAndAssign(int reviewId, int workflowDefinitionId, DateTime reviewDate)
 {
     using (ULODBEntities _db = DB)
     {
         _db.Database.CommandTimeout = 60 * 15;
         _db.CreateULOAndAssignWf(reviewId, workflowDefinitionId, reviewDate.Date);
     }
 }
コード例 #5
0
ファイル: PortalHelpers.cs プロジェクト: lirizarry/FM-ULO
 internal static async Task <Workflow> FindWorkflowAsync(this ULODBEntities db, int workflowId)
 => await db.Workflows
 .Include(q => q.AspNetUser)
 .Include(q => q.Documents)
 .Include(q => q.UnliquidatedObligation)
 .Include(q => q.UnliqudatedObjectsWorkflowQuestions)
 .WhereReviewExists()
 .FirstOrDefaultAsync(q => q.WorkflowId == workflowId);
コード例 #6
0
 public BackgroundTasks(IEmailServer emailServer, ULODBEntities db, IWorkflowManager workflowManager, ILogger log, IReportRunner reportRunner)
 {
     EmailServer     = emailServer;
     DB              = db;
     WorkflowManager = workflowManager;
     ReportRunner    = reportRunner;
     Log             = log.ForContext(GetType());
 }
コード例 #7
0
 //TODO: Email on exception or let user know what happened
 public void CreateULOsAndAssign(int reviewId, int workflowDefinitionId, DateTime reviewDate)
 {
     using (ULODBEntities _db = DB)
     {
         _db.Database.CommandTimeout = Convert.ToInt32(Properties.Settings.Default.DatabaseSprocCommandTimeout.TotalSeconds);
         _db.CreateULOAndAssignWf(reviewId, workflowDefinitionId, reviewDate.Date);
     }
 }
コード例 #8
0
ファイル: WorkflowManager.cs プロジェクト: lirizarry/FM-ULO
 public WorkflowManager(IComponentContext componentContext, IWorkflowDescriptionFinder finder, IBackgroundJobClient backgroundJobClient, ULODBEntities db, Serilog.ILogger log, ICacher cacher)
 {
     ComponentContext    = componentContext;
     Finder              = finder;
     BackgroundJobClient = backgroundJobClient;
     DB     = db;
     Log    = log.ForContext <WorkflowManager>();
     Cacher = cacher;
 }
コード例 #9
0
ファイル: PortalHelpers.cs プロジェクト: lirizarry/FM-ULO
        public static IQueryable <Workflow> GetWorkflows(ULODBEntities db, IEnumerable <int> workflowIds)
        {
            /*
             * var workflows = DB.Workflows.Where(w => workflowIds.Contains(w.WorkflowId));
             * For whatever reason, linq 2 sql wont translate the above into an IN statement (maybe it only does this for string),
             * As such, we have to build out a big long nasty OR predicate then apply which we do below.
             */
            var predicate = PredicateBuilder.Create <Workflow>(wf => false);

            foreach (var wfid in workflowIds)
            {
                predicate = predicate.Or(wf => wf.WorkflowId == wfid);
            }
            return(db.Workflows.Where(predicate));
        }
コード例 #10
0
            internal DetailsBulkToken(AspNetUser currentUser, ULODBEntities db, IQueryable <Workflow> workflows)
            {
                CurrentUser  = currentUser;
                DB           = db;
                WorkflowById = workflows.ToDictionary(z => z.WorkflowId);
                var ids = WorkflowById.Keys;

                if (Properties.Settings.Default.UseOldGetEligibleReviewersAlgorithm)
                {
                    ProhibitedOwnerIdsByWorkflowId = db.WorkflowProhibitedOwners.Where(z => ids.Contains(z.WorkflowId)).ToMultipleValueDictionary(z => z.WorkflowId, z => z.ProhibitedOwnerUserId);
                }
                else
                {
                    PotentialReviewersByWorkflowId = db.GetEligibleReviewers(CSV.FormatLine(ids, false), Properties.Settings.Default.GetEligibleReviewersQualifiedOnly, false).ToMultipleValueDictionary(z => z.WorkflowId, z => z);
                }
                IsValid = true;
            }
コード例 #11
0
ファイル: BaseController.cs プロジェクト: lirizarry/FM-ULO
        protected BaseController(ULODBEntities db, IComponentContext componentContext, ICacher cacher, ILogger log)
        {
            DB = db;
            ComponentContext = componentContext;
            Cacher           = cacher;
            Log = log.ForContext(GetType());
            var ctx = System.Web.HttpContext.Current;

            if (ctx != null)
            {
                ctx.Items["ComponentContext"] = ComponentContext;
                var u = ctx.Request?.Url;
                if (u != null)
                {
                    Log.Debug("Page request to {Controller} with {RequestUrl}", this.GetType().Name, u);
                }
            }
        }
コード例 #12
0
 public ConfigureReportModel(ULODBEntities db, ReportDescription description = null)
 {
     Description = description;
     RegionItems.AddRange(PortalHelpers.CreateRegionSelectListItems());
     ReviewItems.AddRange(PortalHelpers.CreateReviewSelectListItems());
 }
コード例 #13
0
 public RequestForReassignmentsController(IBackgroundJobClient backgroundJobClient, IWorkflowManager manager, ApplicationUserManager userManager, ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger)
     : base(db, componentContext, cacher, logger)
 {
     BackgroundJobClient = backgroundJobClient;
     Manager             = manager;
     UserManager         = userManager;
 }
コード例 #14
0
ファイル: ManageController.cs プロジェクト: lirizarry/FM-ULO
 public ManageController(ApplicationUserManager userManager, ApplicationSignInManager signInManager, IAuthenticationManager authenticationManager, ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger)
     : base(db, componentContext, cacher, logger)
 {
     UserManager           = userManager;
     SignInManager         = signInManager;
     AuthenticationManager = authenticationManager;
 }
コード例 #15
0
ファイル: PortalHelpers.cs プロジェクト: lirizarry/FM-ULO
 internal static ICollection <Document> GetUniqueMissingLineageDocuments(this ULODBEntities db, Workflow wf)
 => db.GetUniqueMissingLineageDocuments(wf, db.GetUloSummariesByPdn(wf.UnliquidatedObligation.PegasysDocumentNumber).Select(z => z.WorkflowId));
コード例 #16
0
 public UloController(IWorkflowManager manager, ApplicationUserManager userManager, ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger)
     : base(db, componentContext, cacher, logger)
 {
     Manager     = manager;
     UserManager = userManager;
     PopulateDocumentTypeNameByDocumentTypeIdInViewBag();
 }
コード例 #17
0
 internal DetailsBulkToken(AspNetUser currentUser, ULODBEntities db, int workflowId)
     : this(currentUser, db, new[] { db.Workflows.Find(workflowId) }.AsQueryable())
 {
 }
コード例 #18
0
 public DatabaseWorkflowDescriptionFinder(ULODBEntities db)
 {
     DB = db;
 }
コード例 #19
0
ファイル: ReviewsController.cs プロジェクト: lirizarry/FM-ULO
 public ReviewsController(IBackgroundJobClient backgroundJobClient, ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger)
     : base(db, componentContext, cacher, logger)
 {
     BackgroundJobClient = backgroundJobClient;
 }
コード例 #20
0
 public UsersController(ApplicationUserManager userManager, ULODBEntities db, IComponentContext context, ICacher cacher, Serilog.ILogger logger)
     : base(db, context, cacher, logger)
 {
     UserManager = userManager;
 }
コード例 #21
0
 public HomeController(ULODBEntities db, IComponentContext componentContext, ICacher cacher, Serilog.ILogger logger)
     : base(db, componentContext, cacher, logger)
 {
 }